-
Notifications
You must be signed in to change notification settings - Fork 14
Exhibitor
HOME > BURI ROLE GUIDE > EXHIBITOR
Exhibitor is a Netflix OSS service providing for the management of an Apache ZooKeeper cluster, including instance monitoring, backup/recovery, cleanup, and visualization.
The role definition uses the S3 configuration provider to provide shared configuration for the cluster. Automatic instance management is also the default for ease of use.
- Create Exhibitor S3 bucket
- Configure local/site.yml and build AMI
- Create IAM role
- Create security group
- Launch Exhibitor Cluster
- Open the AWS S3 console
- Click "Create Bucket", provide a name, and ensure you select the correct region where you will deploy Exhibitor.
-
Edit local/site.yml in your Buri build tree and ensure the following is set as needed:
exhibitor_opts_s3config: 'your-bucket-for-exhibitor:exhibitor-config' exhibitor_opts_s3region: 'us-east-1'
-
Build the AMI for Exhibitor
./resnap.sh <base-pvm-ami-ID> exhibitor
-
In the AWS IAM console left-side menu, click "Roles"
-
Click "Create New Role"
-
Give it a name. ("Exhibitor" is suggested)
-
On the "Select Role Type" screen, click "Select" next to "Amazon EC2"
-
Click "Custom Policy", then "Select"
-
Under "Policy Name", give it the same name as in 3rd point of this section.
-
Under "Policy Document", paste in the file policies/exhibitor.sample from the Buri distribution
-
Edit the following text in what was pasted, to reflect the S3 bucket you have created for Exhibitor shared config:
"Resource": [ "arn:aws:s3:::exhibitor/*", "arn:aws:s3:::exhibitor" ]
-
Click "Continue" and then "Create Role" to complete creating the IAM role needed by Exihibitor.
- In the AWS EC2 console left-side menu, under "Network & Security", click "Security Groups"
- Click "Create Security Group"
- Give it a name. ("Exhibitor" is suggested), and a description, pick VPC if applicable.
- Add a rule to allow SSH from the source IPs you wish to administrate from
- Add a rule to allow port 8080 from the source IPs you wish to administrate from
- Click "Create"
- Make note of the security group ID, and edit the inbound rules for the security group again
- Add a rule to allow all TCP ports from other members of the security group. (IE: place the ID in the source column)
-
Select the Exhibitor AMI to launch, assign it launch in the zone needed, and ensure it has the IAM role and security group for Eureka applied. You should be able to launch all N nodes of a cluster at once.
-
Hit the following URL to see status, substituting hostname with one of yours:
http://ec2-11-11-11-11.compute-1.amazonaws.com:8080
-
Once you see it has settled into status "Running" for all nodes, you zookeeper cluster is fully ready. (May take up to 10 minutes to fully converge)
-
Note: clusters should generally have an ODD number of nodes in them when not impacted by a downtime.
-
If the cluster seems to be having problems converging, shut down a few nodes until it settles down, and then bring them back online.