apache / apache/skywalking

[skywalking-terraform][Feature] Add cluster coordinator deployment

Open
#11,469 2 comments 1 reaction 2 assignees Claimed by @rabajaj0509 View on GitHub
feature terraform
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.