[skywalking-terraform][Feature] Add cluster coordinator deployment
- Dominant language
- Java
- Stars
- 25k
- Forks
- 6.6k
- Avg merge
- 10h 5m
- Merged PRs (30d)
- 16
Description
### Search before asking
- [X] I had searched in the [issues](https://github.com/apache/skywalking/issues?q=is%3Aissue) 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](https://www.apache.org/foundation/policies/conduct)
Contributor guide
Assessment
This issue has not been assessed yet.