InfraKit Flavor Plugin - Zookeeper
A reference implementation of a Flavor Plugin that creates an
Apache ZooKeeper ensemble.
This is a plugin for handling Zookeeper ensemble.
Running
Begin by building plugin binaries.
Start the vagrant instance plugin:
$ build/infrakit-instance-vagrant
INFO[0000] Listening at: ~/.infrakit/plugins/instance-vagrant
Start the Group plugin:
$ build/infrakit-group-default
INFO[0000] Listening at: ~/.infrakit/plugins/group
Start Zookeeper flavor plugin:
$ build/infrakit-flavor-zookeeper
INFO[0000] Listening at: ~/.infrakit/plugins/flavor-zookeeper
Be sure to verify that the plugin is discoverable.
Here's a JSON for the group we'd like to see vagrant-zk.json:
{
  "ID": "zk",
  "Properties": {
    "Allocation": {
      "LogicalIDs": ["192.168.1.200", "192.168.1.201", "192.168.1.202"]
    },
    "Instance" : {
      "Plugin": "instance-vagrant",
      "Properties": {
        "Box": "bento/ubuntu-16.04"
      }
    },
    "Flavor" : {
      "Plugin": "flavor-zookeeper",
      "Properties": {
        "Type": "member"
      }
    }
  }
}
Now commit the group configuration:
$ build/infrakit group commit vagrant-zk.json
watching zk