[skywalking-terraform][Feature] Add cluster coordinator deployment
Search before asking
- [X] I had searched in the issues and found no similar feature requirement.
Description
Now we assume the user already has a cluster coordinator running (for example, zookeeper), and set the env var (for example, SW_CLUSTER_ZK_HOST_PORT) to the coordinator's address when deploying a SkyWalking cluster using https://github.com/apache/skywalking-terraform, it would be much more convenient if we have an config option to also deploy the cluster coordinator in the skywalking-terraform project, currently we can only support zookeeper.
Some possible approaches to achieve this:
- If we can find cloud service available on AWS (such as https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-zookeeper.html, not sure whether this works in our case), we can directly apply the service on cloud vendor using terraform and use it as a coordinator in the deployment, otherwise,
- we have to create necessary EC2 instances, and deploy our own coordinator service on the EC2 instances,
Use case
When users want to deploy a cluster from scratch, they have to deploy a cluster coordinator first, then use the skywalking-terraform to deploy the cluster, this just works but it needs some extra manual work, we can provide an option to also deploy an coordinator (Zookeeper) in our ansible playbook, and create necessary EC2 instances in our terraform module.
Related issues
No response
Are you willing to submit a pull request to implement this on your own?
- [ ] Yes I am willing to submit a pull request on my own!
Code of Conduct
- [X] I agree to follow this project's Code of Conduct
@rabajaj0509 FYI, I believe this is the only thing missing before we can draft the very first release for our apache/skywalking-terraform project
I am going to go ahead and try the service available on AWS first and see if that works out for us.