Quellcode durchsuchen

AMBARI-10978. Enable Accumulo monitor to bind to all interfaces

Sumit Mohanty vor 10 Jahren
Ursprung
Commit
23f41d8a7b

+ 6 - 0
ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml

@@ -91,6 +91,11 @@
     <value>1024</value>
     <value>1024</value>
     <description>Heap size for other Accumulo processes.</description>
     <description>Heap size for other Accumulo processes.</description>
   </property>
   </property>
+  <property>
+    <name>accumulo_monitor_bind_all</name>
+    <value>false</value>
+    <description>Controls whether the monitor binds to all interfaces.</description>
+  </property>
   <property>
   <property>
     <name>content</name>
     <name>content</name>
     <description>The template for a client accumulo-env.sh file.</description>
     <description>The template for a client accumulo-env.sh file.</description>
@@ -130,6 +135,7 @@ export ACCUMULO_MONITOR_OPTS="-Xmx{{accumulo_monitor_heapsize}}m -Xms{{accumulo_
 export ACCUMULO_GC_OPTS="-Xmx{{accumulo_gc_heapsize}}m -Xms{{accumulo_gc_heapsize}}m"
 export ACCUMULO_GC_OPTS="-Xmx{{accumulo_gc_heapsize}}m -Xms{{accumulo_gc_heapsize}}m"
 export ACCUMULO_GENERAL_OPTS="-XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -Djava.net.preferIPv4Stack=true ${ACCUMULO_GENERAL_OPTS}"
 export ACCUMULO_GENERAL_OPTS="-XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -Djava.net.preferIPv4Stack=true ${ACCUMULO_GENERAL_OPTS}"
 export ACCUMULO_OTHER_OPTS="-Xmx{{accumulo_other_heapsize}}m -Xms{{accumulo_other_heapsize}}m ${ACCUMULO_OTHER_OPTS}"
 export ACCUMULO_OTHER_OPTS="-Xmx{{accumulo_other_heapsize}}m -Xms{{accumulo_other_heapsize}}m ${ACCUMULO_OTHER_OPTS}"
+export ACCUMULO_MONITOR_BIND_ALL={{monitor_bind_str}}
 # what do when the JVM runs out of heap memory
 # what do when the JVM runs out of heap memory
 export ACCUMULO_KILL_CMD='kill -9 %p'
 export ACCUMULO_KILL_CMD='kill -9 %p'
     </value>
     </value>

+ 4 - 1
ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_service.py

@@ -36,7 +36,10 @@ def accumulo_service( name,
                 not_if=pid_exists,
                 not_if=pid_exists,
                 user=params.accumulo_user
                 user=params.accumulo_user
         )
         )
-      daemon_cmd = format("{daemon_script} {role} --address {params.hostname} > {log_dir}/accumulo-{role}.out 2>{log_dir}/accumulo-{role}.err & echo $! > {pid_file}")
+      address = params.hostname
+      if name == 'monitor' and params.accumulo_monitor_bind_all:
+        address = '0.0.0.0'
+      daemon_cmd = format("{daemon_script} {role} --address {address} > {log_dir}/accumulo-{role}.out 2>{log_dir}/accumulo-{role}.err & echo $! > {pid_file}")
       Execute ( daemon_cmd,
       Execute ( daemon_cmd,
         not_if=pid_exists,
         not_if=pid_exists,
         user=params.accumulo_user
         user=params.accumulo_user

+ 4 - 0
ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/params.py

@@ -72,6 +72,10 @@ accumulo_tserver_heapsize = config['configurations']['accumulo-env']['accumulo_t
 accumulo_monitor_heapsize = config['configurations']['accumulo-env']['accumulo_monitor_heapsize']
 accumulo_monitor_heapsize = config['configurations']['accumulo-env']['accumulo_monitor_heapsize']
 accumulo_gc_heapsize = config['configurations']['accumulo-env']['accumulo_gc_heapsize']
 accumulo_gc_heapsize = config['configurations']['accumulo-env']['accumulo_gc_heapsize']
 accumulo_other_heapsize = config['configurations']['accumulo-env']['accumulo_other_heapsize']
 accumulo_other_heapsize = config['configurations']['accumulo-env']['accumulo_other_heapsize']
+accumulo_monitor_bind_all = config['configurations']['accumulo-env']['accumulo_monitor_bind_all']
+monitor_bind_str = "false"
+if accumulo_monitor_bind_all:
+  monitor_bind_str = "true"
 env_sh_template = config['configurations']['accumulo-env']['content']
 env_sh_template = config['configurations']['accumulo-env']['content']
 server_env_sh_template = config['configurations']['accumulo-env']['server_content']
 server_env_sh_template = config['configurations']['accumulo-env']['server_content']
 
 

+ 10 - 0
ambari-web/app/data/HDP2/site_properties.js

@@ -2079,6 +2079,16 @@ var hdp2properties = [
     "filename": "accumulo-env.xml",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
     "category": "Advanced accumulo-env"
   },
   },
+  {
+    "id": "puppet var",
+    "name": "accumulo_monitor_bind_all",
+    "displayName": "Monitor Bind All Interfaces",
+    "displayType": "checkbox",
+    "defaultValue": false,
+    "serviceName": "ACCUMULO",
+    "filename": "accumulo-env.xml",
+    "category": "Advanced accumulo-env"
+  },
   {
   {
     "id": "site property",
     "id": "site property",
     "name": "instance.volumes",
     "name": "instance.volumes",