Sign inSign up

ambuds/zookeeper

By ambuds

•Updated over 10 years ago

Docker image for Apache Zookeeper

Image
0

375

ambuds/zookeeper repository overview

⁠Fabric8 - ZooKeeper Docker Image

A ZooKeeper Docker Image for use with Kubernetes.

The image supports the following ZooKeeper modes:

  • Standalone
  • Clustered

⁠Standalone Mode

To start the image in standalone mode you can simply use:

docker run fabric8/zookeeper

⁠Clustered Mode

To start the image in clustered mode you need to specify a couple of environment variables for the container.

Environment VariableDescription
SERVER_IDThe id of the server
MAX_SERVERSThe number of servers in the ensemble

Each container started with both of the above variables will use the following env variable setup:

server.1=zookeeper-1:2888:3888
server.2=zookeeper-2:2888:3888
server.3=zookeeper-3:2888:3888
...
server.N=zookeeper-N:2888:3888

Ensuring that zookeeper-1, zookeeper-2 ... zookeeper-N can be resolved is beyond the scope of this image. You can use DNS, or Kubernetes services, etc depending on your environment (see below).

⁠Inside Kubernetes

Inside Kubernetes you can use a pod setup that looks like:

{
  "kind": "Pod",
  "apiVersion": "v1beta3",
  "metadata": {
    "name": "zookeeper-1",
    "labels": {
      "name": "zookeeper",
      "server-id": "1"
    }
  },
  "spec": {
    "containers": [
      {
        "name": "server",
        "image": "fabric8/zookeeper",
        "env":[
          { "name": "SERVER_ID", "value": "1" },
          { "name": "MAX_SERVERS", "value": "3" }
        ],
        "ports":[
          {
            "containerPort": 2181
          },
          {
            "containerPort": 2888
          },
          {
            "containerPort": 3888
          }
        ]
      }
    ]
  }

In the example above we are creating a pod that creates a container using this image. The container is configured to use the environment variable required for a clustered setup. Last but not least pod is carefully named (as zookeeper-${SERVER_ID}) so that the other zookeeper servers can easily find it by hostname.

Tag summary

Content type

Image

Digest

Size

159.2 MB

Last updated

over 10 years ago

docker pull ambuds/zookeeper