User talk:Jch/consul
Consul
Introduction
This page is currently my experimental log about consul on AL.
Downloaded package: consul-0.5.0-r0.apk from http://repos.mauras.ch/alpinelinux/x86_64/
Will prepare 5 KVM: 3 consul server (in run-from-ram mode) and 2 consul agent (a SAN (NBD) and a LXC host in data mode) on an isolated network.
We will experiment to find the right spec to allocate the consul servers for 100 to 1000 agents.
We plan to orchestrate our VM fleet based on consul events, envconsul and consul-template. All with ash scripts and smart setup.
Install
As we start from scratch and want to have an isolated network to run our tests, this topic is also an introduction to our new architecture for the cluster (the cloud).
The 5 machines defined to start our tests will be designed as a virtual cluster and bootstraped as it was a real cluster...
from a virtual laptop booting from a virtual USB stick.
This first "machine zero" to bootstrap the first PXE server, then to start 2nd and 3rd PXEservers.
Then to start a SAN.
Then to start a KVM-repo.
Then to reboot all KVM-PXE or at least adapt there config to use new repo.
Then to start a LXC host.
(then to start services and other KVM)
We will just focus on the consul installation and configuration parts.
consul server
Alias KVM-PXE
It's a kind of paradox ;)
This machine is booting from PXE with dhcp...
And once up, it change itself to a static IP address (the one received by dhcp) and behave as a PXEserver but the dhcpd part inactive.
The dhcpd is activated manually (it means by a script from the "chef d'orchestre").
apk add consul
First PXE server
It becomes consul leader by default.
But will gracefull leave before rejoining as regular server when quorum is reached.
consul agent
apk add consul
Configuration
Configuration Server
Configuration Agent
Usage
Machines discovery
List machines = list members
list PXEservers = list servers
whois active.PXEservers = get leader
Services discoevry
Register service
List services
Cheks
Key/Value storage
k/v