Consul investigate how to migrate the service to Kubernetes
Existing Consul servers are deployed into VMs managed by Chef.
Investigate how the servers can be moved to Kubernetes with minimal changes to facilitate other improvements (upgrade etc).
Possible solutions
- Avoid upgrade, new Consul deployment in the environment
- Join k8s servers to existing cluster
- Can the chart work with an older version ?
- Any changes required in the certs ?
- Add a new endpoint (SVC LB or Ingress)
- Update clients to use the new endpoint
- Remove VMs one at a time
- Upgrade servers only, new Consul deployment in the environment
- Can the servers by upgraded independently from clients ?
- Join k8s servers to existing cluster
- Add a new endpoint (SVC LB or Ingress)
- Update clients to use the new endpoint
- Remove VMs one at a time
Acceptance Criteria:
-
Create and configure k8s Consul cluster on db-benchmarking -
Upgrade Consul Server on VMs to 1.8.19 -
Configure k8s cluster as federation primary cluster and VM cluster as secondary: https://www.consul.io/docs/k8s/deployment-configurations/multi-cluster/vms-and-kubernetes and -
Change join configuration for k8s Consul clients to connect to k8s cluster.
Edited by Marcel Chacon