Répertoire d'articles
Préparation environnementale
Nom du nœud | adresse IP |
---|---|
consul-s1 | 192.168.130.20 |
consul-s2 | 192.168.130.19 |
consul-s3 | 192.168.130.21 |
consul-c1 | 192.168.130.21 |
3 serveurs et 1 client
Installer docker
légèrement
Autonome
Créer un annuaire
mkdir -p /root/consul_sg/conf
mkdir -p /root/consul_sg/data
Commencez
docker run -d --net=host --name consul-s1 \
-v /root/consul_sg/data:/consul/data \
-v /root/consul_sg/conf:/consul/config \
docker.io/consul:1.5.0 consul agent -server \
-bind=192.168.130.20 \
-client 0.0.0.0 \
-data-dir /consul/data \
-config-dir /consul/config \
-ui
Grappe
Créer un annuaire
Créer un répertoire de configuration et un répertoire de données (les nœuds consul-s1 \ consul-s2 \ consul-s3 sont exécutés)
mkdir -p /root/consul/conf
mkdir -p /root/consul/data
Démarrer le serveur
consul-s1
docker run -d --net=host --name consul-s1 \
-v /root/consul/data:/consul/data \
-v /root/consul/conf:/consul/config \
docker.io/consul:1.5.0 consul agent -server \
-bind=192.168.130.20 \
-client 0.0.0.0 \
-bootstrap-expect=2 \
-data-dir /consul/data \
-config-dir /consul/config \
-ui
consul-s2
docker run -d --net=host --name consul-s2 \
-v /root/consul/data:/consul/data \
-v /root/consul/conf:/consul/config \
docker.io/consul:1.5.0 consul agent -server \
-bind=192.168.130.19 \
-join=192.168.130.20 \
-client 0.0.0.0 \
-bootstrap-expect=2 \
-data-dir /consul/data \
-config-dir /consul/config \
-ui
consul-s3
docker run -d --net=host --name consul-s3 \
-v /root/consul/data:/consul/data \
-v /root/consul/conf:/consul/config \
docker.io/consul:1.5.0 consul agent -server \
-bind=192.168.130.21 \
-join=192.168.130.20 \
-client 0.0.0.0 \
-bootstrap-expect=2 \
-data-dir /consul/data \
-config-dir /consul/config \
-ui
Démarrer le client
Entrez consul-c1 pour
créer un répertoire de données et de configuration
mkdir -p /root/consul_client/data
mkdir -p /root/consul_client/conf
Puisqu'il partage une machine avec le serveur, afin de ne pas entrer en conflit avec le port, modifiez l'écoute par défaut
cd /root/consul_client/conf
vi basic.json
Le contenu est le suivant
{
"ports": {
"http":18501,
"dns":18601,
"serf_lan":18301,
"serf_wan":18302,
"server":18300
}
}
Démarrer client1
docker rm -f consul-c1
docker run -d --net=host --name consul-c1 \
-v /root/consul_client/data:/consul/data \
-v /root/consul_client/conf:/consul/config \
docker.io/consul:1.5.0 consul agent \
-node kont004ecs \
-bind=192.168.130.21 \
-data-dir /consul/data \
-config-dir /consul/config \
-join 192.168.130.20:8301
Vérifier l'état du cluster
Entrez le nœud du serveur pour afficher l'état du cluster
docker exec consul-s1 consul members
Node Address Status Type Build Protocol DC Segment
kont001ecs 192.168.130.20:8301 alive server 1.5.0 2 dc1 <all>
kont002ecs 192.168.130.19:8301 alive server 1.5.0 2 dc1 <all>
kont003ecs 192.168.130.21:8301 alive server 1.5.0 2 dc1 <all>
kont004ecs 192.168.130.21:18301 alive client 1.5.0 2 dc1 <default>
Vous pouvez également ouvrir le navigateur pour afficher
http://192.168.130.20:8500/ui/dc1/nodes