Linux et Docker : Comment implémenter un cluster de conteneurs hautement disponible ?
Résumé : Avec le développement de la technologie des conteneurs, de plus en plus d'entreprises déploient progressivement des applications dans des conteneurs. Dans un environnement de production, il est essentiel d'obtenir une haute disponibilité pour un cluster de conteneurs. Cet article expliquera comment utiliser Linux et Docker pour créer un cluster de conteneurs hautement disponible et démontrera la méthode d'implémentation spécifique à travers des exemples de code.
Tout d'abord, installez Docker sur chaque hôte Docker que vous souhaitez rejoindre le cluster. Ensuite, sélectionnez un hôte comme nœud de gestion du cluster Swarm et exécutez la commande suivante pour initialiser le cluster :
$ docker swarm init --advertise-addr <MANAGER-IP>
Où
$ docker swarm join --token <TOKEN> <MANAGER-IP>:<PORT>
Parmi eux,
Tout d'abord, installez et démarrez Consul sur tous les hôtes Docker. Ensuite, exécutez la commande suivante pour créer un service Consul :
$ docker service create --name consul --publish 8500:8500 --constraint 'node.role == manager' gliderlabs/consul-server -bootstrap
Cette commande crée un service nommé consul sur le nœud de gestion du cluster Swarm et mappe le port 8500 du conteneur au port 8500 de l'hôte.
Ensuite, exécutez la commande suivante sur d'autres nœuds pour rejoindre le service Consul :
$ docker service create --name consul --network <NETWORK> gliderlabs/consul-agent -join consul
Où,
Tout d'abord, préparez une image Docker contenant l'application que nous souhaitons déployer. Ensuite, exécutez la commande suivante pour créer un service :
$ docker service create --name <SERVICE-NAME> --replicas <REPLICAS> --publish <PORT> <IMAGE>
où
Vous pouvez utiliser la commande suivante pour afficher l'état d'exécution du service et la distribution des instances de conteneur :
$ docker service ls $ docker service ps <SERVICE-NAME>
Vous pouvez utiliser la commande suivante pour augmenter le nombre d'instances d'un service :
$ docker service scale <SERVICE-NAME>=<REPLICAS>
où
Résumé : L'utilisation de Linux et de Docker pour créer un cluster de conteneurs hautement disponible améliore non seulement la disponibilité des applications, mais fournit également des capacités de mise à l'échelle élastique et d'équilibrage de charge. Grâce à une configuration et une gestion raisonnables, nous pouvons obtenir des services de conteneurs efficaces et stables.
Exemple de code :
Initialiser le cluster Swarm :
$ docker swarm init --advertise-addr 192.168.0.1
Rejoindre le cluster Swarm :
$ docker swarm join --token <TOKEN> 192.168.0.1:2377
Créer le service Consul :
$ docker service create --name consul --publish 8500:8500 --constraint 'node.role == manager' gliderlabs/consul-server -bootstrap
Rejoindre le service Consul :
$ docker service create --name consul --network my-network gliderlabs/consul-agent -join consul
Créer un service d'application :
$ docker service create --name my-service --replicas 3 --publish 8080:8080 my-app
Augmentez le nombre d'instances de service :
$ docker service scale my-service=5
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!