webMethods

webMethods

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only

Role of ZooKeeper in webMethods API Portal 

Fri September 28, 2018 09:49 AM

webMethods API Portal guide

webMethods API Portal is an API discovery and documentation tool built with multiple services and applications.

The services include:

  1. ElasticSearch
  2. Postgres
  3. LoadBalancer
  4. CloudSearch
  5. ZooKeeper

 The applications include:

  1. UMC - User Management
  2. ADS - Document Storage
  3. ECP - Collaboration Platform
  4. Copernicus - UI Framework with customization support

Each of the services and applications can be termed as "runnable".

Zookeeper

ZooKeeper is an Apache project providing a distributed, eventually consistent hierarchical configuration store.

ZooKeeper originated out of the world of Hadoop, where it was built to help in the maintenance of the various components in a hadoop cluster. It is a distributed configuration store that provides notifications to registered clients.  With this, it is possible to build a service discovery infrastructure, however every service must explicitly register with ZooKeeper, and the clients must then check in the configuration.

Usage of ZooKeeper runnable

  • ZooKeeper is the central service registry
  • All the applications and services register themselves in Zookeeper.  
  • Applications and services do a Zookeeper lookup to find other services and applications they need (runtime dependencies)
  • If Zookeeper becomes unavailable, the entire installation will stop working! 

Zookeeper viewer

As stated above Zookeeper is a hierarachial configuration store. We could use below tools to view the configuration entries.

Caution: As stated above Zookeeper is the central place of information lookup for services. Please use the tools for just view the internal detail and do not alter / change anything.

  1. We could use the ACC console itself to view the zookeeper entries. There exists a ACC command zk dump which dumps the Zookeeper configuration entries as key value pairs. This is the easiest way to view the zookeeper entries. Since you have already logged into a CloudController which is internally connected to a ZooKeeeper(which is alive) you dont require anyother information to fetch the configuration entries.
  2. We could also use a GUI tool https://github.com/javaquery/zooviewer/releases to view the hierachy storage structure. You can download the distribution archive and extract the content into a local folder. The tool requires the Zookeeper host:port details to connect to a alive instance. You can get the details of port details from ACC console using show runnable <instance id> command.
ACC+ localhost>show runnable zoo_s
ID: zoo_s state:STARTED type:com.aris.runnables.zookeeper-run-prod-
Configuration parameters:
JAVA-XX\:\+CrashOnOutOfMemoryError=/enabled
JAVA-Xmx=48m
JAVA_OPTS=-server
clientPort=18083
maxClientCnxns=50
maxSessionTimeout=60000
minSessionTimeout=6000
plugin.ping.disable.level1check=true
quorumListenOnAllIPs=true
tickTime=60000

From the configuration parameters listed above, the clientPort configuration parameters indicates the port of the ZooKeeper instance. You can use the zkHost:clientPort information to connect via ZooViewer and view the entries.


#architecture
#webMethods
#zookeeper
#API-Portal
#wiki
#zkc

Statistics
0 Favorited
0 Views
0 Files
0 Shares
0 Downloads