fititnt / ap-application-load-balancer

AP Application Load Balancer (AP-ALB). Sophisticated monolithic Ansible role to manage standalone and clusters of cross-platform and multicloud load balancers. Abstract HAProxy + OpenResty + On-the-fly auto HTTPS. Dedicated to Public Domain.
https://ap-application-load-balancer.etica.ai/
The Unlicense
1 stars 0 forks source link

MVP of Consul in High Availability (HA) for AP-ALB #30

Closed fititnt closed 4 years ago

fititnt commented 4 years ago

Related:

What is Consul?

Consul is a service mesh solution providing a full featured control plane with service discovery, configuration, and segmentation functionality. (...) KV Store: Applications can make use of Consul's hierarchical key/value store for any number of purposes, including dynamic configuration, feature flagging, coordination, leader election, and more. The simple HTTP API makes it easy to use. (...) Multi Datacenter: Consul supports multiple datacenters out of the box. This means users of Consul do not have to worry about building additional layers of abstraction to grow to multiple regions. From https://www.consul.io/intro/index.html


Since the AP-ALB v0.8.x to work as a cluster need some way to share information, it means the underline solution should be reliable and is critical for High Availability.

Consul already implement features out of the box both for High Availability in a single datacenter, but also in multi datacenter. This is more than we want for the initial MVP of demo.

Also, by using Consul (or Etcd) the AP-ALB is much more aligned with trends of clustering common for example on Kubernetes Clusters. One advantage over the initial MVP using just Redis is that both Consul and Etcd does not require HAproxy.

fititnt commented 4 years ago

Done on https://github.com/fititnt/ansible-linux-ha-cluster. Full release on https://github.com/fititnt/ansible-linux-ha-cluster/releases/tag/demo-001-ap-alb-v0.8.5-alpha. AP-ALB v0.8.6-alpha had some fixes and a demo at

asciicast

Actually, the AP-ALB v0.8.x not only got clustering related options, but started cross-platform testing (as mentioned here AP-ALB v0.8.x adaptations to support RHEL/CentOS 8 family and design changes to allow flexibility even for non-tested OSs #34). This explain why did not have a beta release for v0.8.x and we're likely go direct to v0.9.