ホームページ >運用・保守 >Linuxの運用と保守 >Linux と Docker: 高可用性コンテナ クラスターを実装するにはどうすればよいですか?
Linux と Docker: 高可用性コンテナ クラスターを実装するにはどうすればよいですか?
要約: コンテナ テクノロジーの発展に伴い、アプリケーションをコンテナにデプロイする企業が徐々に増えています。実稼働環境では、コンテナー クラスターの高可用性を実現することが重要です。この記事では、Linux と Docker を使用して高可用性コンテナ クラスターを構築する方法を紹介し、コード例を通じて具体的な実装方法を示します。
まず、クラスターに参加する各 Docker ホストに Docker をインストールします。次に、Swarm クラスターの管理ノードとしてホストを選択し、次のコマンドを実行してクラスターを初期化します:
$ docker swarm init --advertise-addr <MANAGER-IP>
ここで、
$ docker swarm join --token <TOKEN> <MANAGER-IP>:<PORT>
このうち、fe44cc81ab4c20272595cc1edf562112 は前の手順で取得したトークン、50c92af3965d072a01ca8b69c30c4169 と a3b0c87895079be75e30be94102cc20b です。ノードのIPアドレスとポート番号はそれぞれ管理用です。
まず、すべての Docker ホストに Consul をインストールして起動します。次に、次のコマンドを実行して Consul サービスを作成します。
$ docker service create --name consul --publish 8500:8500 --constraint 'node.role == manager' gliderlabs/consul-server -bootstrap
このコマンドは、Swarm クラスターの管理ノード上に consul という名前のサービスを作成し、コンテナーの 8500 ポートをホストの 8500 ポートにマップします。
次に、他のノードで次のコマンドを実行して Consul サービスに参加します:
$ docker service create --name consul --network <NETWORK> gliderlabs/consul-agent -join consul
ここで、1d4d001a3682e7356cdcdf6423e29e0f は Swarm クラスターのネットワーク名です。
まず、デプロイするアプリケーションを含む Docker イメージを準備します。次に、次のコマンドを実行してサービスを作成します:
$ docker service create --name <SERVICE-NAME> --replicas <REPLICAS> --publish <PORT> <IMAGE>
ここで、1f69d38ff7f38c32e75a871d13a954c2 はサービスの名前、f9137ba0285552c9339eaf6686d35256 はデプロイするコンテナ インスタンスの数、a3b0c87895079be75e30be94102cc20b はサービスの名前です。マップされる番号です。ポート番号
次のコマンドを使用して、サービスの実行ステータスとコンテナ インスタンスの分散を表示できます:
$ docker service ls $ docker service ps <SERVICE-NAME>
次のコマンドを使用して、サービスのインスタンスの数を拡張できます:
$ docker service scale <SERVICE-NAME>=<REPLICAS>
ここで、1f69d38ff7f38c32e75a871d13a954c2 はサービスの名前、 概要: Linux と Docker を使用して高可用性コンテナ クラスターを構築すると、アプリケーションの可用性が向上するだけでなく、柔軟なスケーリングと負荷分散機能も提供されます。合理的な構成と管理により、効率的で安定したコンテナサービスを実現します。 コード例: Swarm クラスターの初期化:
$ docker swarm init --advertise-addr 192.168.0.1
$ docker swarm join --token <TOKEN> 192.168.0.1:2377
$ docker service create --name consul --publish 8500:8500 --constraint 'node.role == manager' gliderlabs/consul-server -bootstrap
$ docker service create --name consul --network my-network gliderlabs/consul-agent -join consul
$ docker service create --name my-service --replicas 3 --publish 8080:8080 my-app
$ docker service scale my-service=5
以上がLinux と Docker: 高可用性コンテナ クラスターを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。