API Portal UnixUpdated POROD
API Portal UnixUpdated POROD
Update the fi
le with content as below .
Output:
ACC+ n1>on n1 add zk
Zookeeper master instance will be added on node n1.
ACC+ n1>on n2 add zk
Zookeeper master instance will be added on node n2.
ACC+ n1>on n3 add zk
Zookeeper master instance will be added on node n3.
ACC+ n1>commit zk changes
Zookeeper ensemble changes committed.
ACC+ n1>list zk instances
3 Zookeeper instances:
Node InstID MyID State Cl Port Port A Port B Type
n1 zoo0 1 STARTED 2181 2888 3888 Master
n2 zoo0 2 STARTED 2181 2888 3888 Master
n3 zoo0 3 STARTED 2181 2888 3888 Master
***************************************************************************
ACC+ n1>on all nodes list
On node n1 4 runnables are installed.
postgres_m : STOPPED (com.aris.runnables.PostgreSQL-run-prod-99.0.0)
elastic_m : STOPPED (com.aris.runnables.elasticsearch-run-prod-99.0.0)
loadbalancer_m : STOPPED (com.aris.runnables.httpd.httpd-run-prod-99.0.0)
zoo0 : STARTED (com.aris.runnables.zookeeper-run-prod-99.0.0)
On node n2 5 runnables are installed.
couchdb_m : STOPPED (com.aris.runnables.couchdb-run-prod-99.0.0)
cloudsearch_m : STOPPED (com.aris.cip.y-cloudsearch-run-prod-99.0.0)
elastic_m : STOPPED (com.aris.runnables.elasticsearch-run-prod-99.0.0)
apiportalbundle_m : STOPPED (com.aris.bundles.apiportalbundle-run-prod-99.0.0)
zoo0 : STARTED (com.aris.runnables.zookeeper-run-prod-99.0.0)
On node n3 5 runnables are installed.
couchdb_m : STOPPED (com.aris.runnables.couchdb-run-prod-99.0.0)
cloudsearch_m : STOPPED (com.aris.cip.y-cloudsearch-run-prod-99.0.0)
elastic_m : STOPPED (com.aris.runnables.elasticsearch-run-prod-99.0.0)
apiportalbundle_m : STOPPED (com.aris.bundles.apiportalbundle-run-prod-99.0.0)
zoo0 : STARTED (com.aris.runnables.zookeeper-run-prod-99.0.0)
********************************************************************************
***
6. Elasticsearch
Reconfigure the three elasticsearch runnables to form a cluster via:
ACC+ n1>on n1 reconfigure elastic_m +ELASTICSEARCH.cluster.name = apiportal +ELA
STICSEARCH.discovery.zen.minimum_master_nodes=2 -zookeeper.connect.string +ELAS
TICSEARCH.node.local = false +ELASTICSEARCH.index.number_of_replicas=1 -ELASTICS
EARCH.sonian.elasticsearch.zookeeper.client.host
ACC+ n1>on n2 reconfigure elastic_m +ELASTICSEARCH.cluster.name = apiportal +ELA
STICSEARCH.discovery.zen.minimum_master_nodes=2 -zookeeper.connect.string +ELAST
ICSEARCH.node.local = false +ELASTICSEARCH.index.number_of_replicas=1 -ELASTICSE
ARCH.sonian.elasticsearch.zookeeper.client.host
ACC+ n1>on n3 reconfigure elastic_m +ELASTICSEARCH.cluster.name = apiportal +ELA
STICSEARCH.discovery.zen.minimum_master_nodes=2 -zookeeper.connect.string +ELAST
ICSEARCH.node.local = false +ELASTICSEARCH.index.number_of_replicas=1 -ELASTICSE
ARCH.sonian.elasticsearch.zookeeper.client.host
Output:
ACC+ n1>on n1 reconfigure elastic_m +ELASTICSEARCH.cluster.name = apiportal +ELA
STICSEARCH.discovery.zen.minimum_master_nodes=2 -zookeeper.connect.string +ELAS
TICSEARCH.node.local = false +ELASTICSEARCH.index.number_of_replicas=1 -ELASTICS
EARCH.sonian.elasticsearch.zookeeper.client.host
Successfully delta-reconfigured runnable elastic_m on node n1.
Effective parameters after delta-reconfigure:
ELASTICSEARCH.cluster.name=apiportal
ELASTICSEARCH.discovery.type=com.sonian.elasticsearch.zookeeper.discover
y.ZooKeeperDiscoveryModule
ELASTICSEARCH.discovery.zen.minimum_master_nodes=2
ELASTICSEARCH.discovery.zen.ping.multicast.enabled=false
ELASTICSEARCH.http.compression=true
ELASTICSEARCH.http.port=18044
ELASTICSEARCH.index.number_of_replicas=1
ELASTICSEARCH.index.number_of_shards=3
ELASTICSEARCH.node.local=false
ELASTICSEARCH.rest.action.multi.allow_explicit_index=false
ELASTICSEARCH.sonian.elasticsearch.zookeeper.discovery.state_publishing.
enabled=false
ELASTICSEARCH.sonian.elasticsearch.zookeeper.settings.enabled=false
ELASTICSEARCH.transport.tcp.compress=true
JAVA-Dcom.sun.management.jmxremote=/enabled
JAVA-Dcom.sun.management.jmxremote.authenticate=false
JAVA-Dcom.sun.management.jmxremote.port=9676
JAVA-Dcom.sun.management.jmxremote.ssl=false
JAVA-XX\:CMSInitiatingOccupancyFraction=75
JAVA-XX\:\+HeapDumpOnOutOfMemoryError=/enabled
JAVA-XX\:\+UseCMSInitiatingOccupancyOnly=/enabled
JAVA-XX\:\+UseConcMarkSweepGC=/enabled
JAVA-XX\:\+UseParNewGC=/enabled
JAVA-Xmx=1g
JAVA-Xss=256k
JAVA_OPTS=-server
ACC+ n1>on n2 reconfigure elastic_m +ELASTICSEARCH.cluster.name = apiportal +ELA
STICSEARCH.discovery.zen.minimum_master_nodes=2 -zookeeper.connect.string +ELAST
ICSEARCH.node.local = false +ELASTICSEARCH.index.number_of_replicas=1 -ELASTICSE
ARCH.sonian.elasticsearch.zookeeper.client.host
Successfully delta-reconfigured runnable elastic_m on node n2.
Effective parameters after delta-reconfigure:
ELASTICSEARCH.cluster.name=apiportal
ELASTICSEARCH.discovery.type=com.sonian.elasticsearch.zookeeper.discover
y.ZooKeeperDiscoveryModule
ELASTICSEARCH.discovery.zen.minimum_master_nodes=2
ELASTICSEARCH.discovery.zen.ping.multicast.enabled=false
ELASTICSEARCH.http.compression=true
ELASTICSEARCH.http.port=18044
ELASTICSEARCH.index.number_of_replicas=1
ELASTICSEARCH.index.number_of_shards=3
ELASTICSEARCH.node.local=false
ELASTICSEARCH.rest.action.multi.allow_explicit_index=false
ELASTICSEARCH.sonian.elasticsearch.zookeeper.discovery.state_publishing.
enabled=false
ELASTICSEARCH.sonian.elasticsearch.zookeeper.settings.enabled=false
ELASTICSEARCH.transport.tcp.compress=true
JAVA-Dcom.sun.management.jmxremote=/enabled
JAVA-Dcom.sun.management.jmxremote.authenticate=false
JAVA-Dcom.sun.management.jmxremote.port=9676
JAVA-Dcom.sun.management.jmxremote.ssl=false
JAVA-XX\:CMSInitiatingOccupancyFraction=75
JAVA-XX\:\+HeapDumpOnOutOfMemoryError=/enabled
JAVA-XX\:\+UseCMSInitiatingOccupancyOnly=/enabled
JAVA-XX\:\+UseConcMarkSweepGC=/enabled
JAVA-XX\:\+UseParNewGC=/enabled
JAVA-Xmx=1g
JAVA-Xss=256k
JAVA_OPTS=-server
ACC+ n1>on n3 reconfigure elastic_m +ELASTICSEARCH.cluster.name = apiportal +ELA
STICSEARCH.discovery.zen.minimum_master_nodes=2 -zookeeper.connect.string +ELAST
ICSEARCH.node.local = false +ELASTICSEARCH.index.number_of_replicas=1 -ELASTICSE
ARCH.sonian.elasticsearch.zookeeper.client.host
Successfully delta-reconfigured runnable elastic_m on node n3.
Effective parameters after delta-reconfigure:
ELASTICSEARCH.cluster.name=apiportal
ELASTICSEARCH.discovery.type=com.sonian.elasticsearch.zookeeper.discover
y.ZooKeeperDiscoveryModule
ELASTICSEARCH.discovery.zen.minimum_master_nodes=2
ELASTICSEARCH.discovery.zen.ping.multicast.enabled=false
ELASTICSEARCH.http.compression=true
ELASTICSEARCH.http.port=18044
ELASTICSEARCH.index.number_of_replicas=1
ELASTICSEARCH.index.number_of_shards=3
ELASTICSEARCH.node.local=false
ELASTICSEARCH.rest.action.multi.allow_explicit_index=false
ELASTICSEARCH.sonian.elasticsearch.zookeeper.discovery.state_publishing.
enabled=false
ELASTICSEARCH.sonian.elasticsearch.zookeeper.settings.enabled=false
ELASTICSEARCH.transport.tcp.compress=true
JAVA-Dcom.sun.management.jmxremote=/enabled
JAVA-Dcom.sun.management.jmxremote.authenticate=false
JAVA-Dcom.sun.management.jmxremote.port=9676
JAVA-Dcom.sun.management.jmxremote.ssl=false
JAVA-XX\:CMSInitiatingOccupancyFraction=75
JAVA-XX\:\+HeapDumpOnOutOfMemoryError=/enabled
JAVA-XX\:\+UseCMSInitiatingOccupancyOnly=/enabled
JAVA-XX\:\+UseConcMarkSweepGC=/enabled
JAVA-XX\:\+UseParNewGC=/enabled
JAVA-Xmx=1g
JAVA-Xss=256k
JAVA_OPTS=-server
7. Database
we will be using the pre-configured PostgreSQL database, make sure it knows abou
t all zookeeper cluster members and accepts connections from all locations:
on n1 reconfigure postgres_m -zookeeper.connect.string +postgresql.listen_addre
sses = "'*'"
Output: ACC+ n1>on n1 reconfigure postgres_m -zookeeper.connect.string +postgre
sql.listen_addresses = "'*'"
Successfully delta-reconfigured runnable postgres_m on node n1.
Effective parameters after delta-reconfigure:
dbsp.initialSize=0
dbsp.jmxEnabled=true
dbsp.maxIdle=5
dbsp.minIdle=0
dbsp.removeAbandonedTimeout=600
dbsp.rollbackOnReturn=true
plugin.apptypes=db, postgresql-ecp
plugin.max.retries.after.restart=1
plugin.ping.interval.msec=30000
postgresql.listen_addresses='*'
postgresql.max_connections=200
postgresql.port=18047
8. CloudSearch
Define two cloudsearch instances where each one belongs to a different data cent
er:
on n2 reconfigure cloudsearch_m -zookeeper.connect.string +zookeeper.application
.instance.datacenter = n2
on n3 reconfigure cloudsearch_m -zookeeper.connect.string +zookeeper.application
.instance.datacenter = n3
11. Loadbalancer
Reconfigure the loadbalancer on n1 to point to all three zookeeper cluster membe
rs via
on n1 reconfigure loadbalancer_m -zookeeper.connect.string
Output: ACC+ n1>on n1 reconfigure loadbalancer_m -zookeeper.connect.string
Successfully delta-reconfigured runnable loadbalancer_m on node n1.
Effective parameters after delta-reconfigure:
HTTPD.LimitRequestFieldSize=32768
HTTPD.access.root=granted
HTTPD.keepalive=on
HTTPD.modjk.max_packet_size=32768
HTTPD.modjk.stickySessions.abs=true
HTTPD.modjk.stickySessions.ads=true
HTTPD.modjk.stickySessions.ecp=true
HTTPD.modjk.stickySessions.processboard=true
HTTPD.modjk.stickySessions.umc=true
HTTPD.port=18101
HTTPD.servername=dkaint-pc0c91.corp.lego.com
HTTPD.ssl.port=18102
appcontext.abs=abs
appcontext.cop=/
appcontext.ecp=collaboration
plugin.ping.search.for.processes=false
zookeeper.application.instance.host=dkaint-pc0c91.corp.lego.com
12. Change the Startup Order of the Runnables
Issue the following commands:
ACC+ n1>on n1 set runnable.order = "zoo0 < (elastic_m, postgres_m) < loadbalance
r_m"
ACC+ n1>on n2 set runnable.order = "zoo0 < (elastic_m, couchdb_m) < cloudsearch_
m < apiportalbundle_m"
ACC+ n1>on n3 set runnable.order = "zoo0 < (elastic_m, couchdb_m) < cloudsearch_
m < apiportalbundle_m"
output: ACC+ n1>on n1 set runnable.order = "zoo0 < (elastic_m, postgres_m) < loa
dbalancer_m"
Successfully set configuration parameter runnable.order to zoo0 < (elastic_m, po
stgres_m) < loadbalancer_m on node n1
ACC+ n1>on n2 set runnable.order = "zoo0 < (elastic_m, couchdb_m) < cloudsearch_
m < apiportalbundle_m"
Successfully set configuration parameter runnable.order to zoo0 < (elastic_m, co
uchdb_m) < cloudsearch_m < apiportalbundle_m on node n2
ACC+ n1>on n3 set runnable.order = "zoo0 < (elastic_m, couchdb_m) < cloudsearch_
m < apiportalbundle_m"
Successfully set configuration parameter runnable.order to zoo0 < (elastic_m, co
uchdb_m) < cloudsearch_m < apiportalbundle_m on node n3
ACC+ n1>
################################################################################
###############################################
Scripting :
################################################################################
############
ACC+ n1>on all nodes list
On node n1 4 runnables are installed.
postgres_m : STARTED (com.aris.runnables.PostgreSQL-run-prod-99.0.0)
elastic_m : STARTING (com.aris.runnables.elasticsearch-run-prod-99.0.0)
loadbalancer_m : STARTED (com.aris.runnables.httpd.httpd-run-prod-99.0.0)
zoo0 : STARTED (com.aris.runnables.zookeeper-run-prod-99.0.0)
On node n2 5 runnables are installed.
couchdb_m : STARTED (com.aris.runnables.couchdb-run-prod-99.0.0)
cloudsearch_m : STARTED (com.aris.cip.y-cloudsearch-run-prod-99.0.0)
elastic_m : STARTED (com.aris.runnables.elasticsearch-run-prod-99.0.0)
apiportalbundle_m : STARTED (com.aris.bundles.apiportalbundle-run-prod-99.0.0)
zoo0 : STARTED (com.aris.runnables.zookeeper-run-prod-99.0.0)
On node n3 5 runnables are installed.
couchdb_m : STARTED (com.aris.runnables.couchdb-run-prod-99.0.0)
cloudsearch_m : STARTED (com.aris.cip.y-cloudsearch-run-prod-99.0.0)
elastic_m : STARTING (com.aris.runnables.elasticsearch-run-prod-99.0.0)
apiportalbundle_m : STARTED (com.aris.bundles.apiportalbundle-run-prod-99.0.0)
zoo0 : STARTED (com.aris.runnables.zookeeper-run-prod-99.0.0)
################################################################################
##################
Health Checkup
http://dkaint-pc0c93.corp.lego.com:18044/_cluster/health?pretty=true
https://itrac.eur.ad.sag/browse/YAP-2805
We went through the provided information. We did not find any hints related to p
ort availability problems.
Instead we have found a difference in the elastic search configuration. In the i
nternal sample configurations the following parameter is set to true:
sonian.elasticsearch.zookeeper.discovery.state_publishing.enabled=true
In the customer configuration this parameter is set to false. Customer should se
t the parameter to true and try again.
http://dkaint-pc0c91.corp.lego.com:18051/_utils/fauxton/