検索
ホームページ運用・保守Dockerdocker swarmとは何ですか

docker swarmとは何ですか

Jan 28, 2022 pm 01:47 PM
dockerswarm

swarm は Docker が公式に提供しているクラスタ管理ツールで、主な機能は複数の Docker ホストを全体として抽象化し、それらの Docker ホスト上のさまざまな Docker リソースを 1 つの入り口から一元管理することです。

docker swarmとは何ですか

このチュートリアルの動作環境: linux5.9.8 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。

Swarm は、Docker クラスターを管理するために Docker によって起動されたプラットフォームです。ほぼ完全に GO 言語を使用して開発されています。コードは https://github.com/docker/swarm でオープン ソースです。これはグループです。 Docker ホストは単一の仮想ホストになり、Swarm は標準の Docker API インターフェイスをフロントエンド アクセスの入り口として使用します。つまり、さまざまな形式の DockerClient (compose、docker-py など) が Swarm と直接通信でき、 Docker 自体もすべて Swarm と簡単に統合できるため、ユーザーは元々単一ノードに基づいていたシステムを Swarm に移植することが非常に容易になります。同時に、Swarm には Docker ネットワーク プラグインのサポートが組み込まれており、ユーザーは簡単にデプロイできます。クロスホストコンテナクラスターサービス。

Swarm は Kubernetes に似ていますが、kubernetes よりも軽量で機能が少なくなっています。

Docker Swarm は、エンタープライズ レベルの Docker セキュリティ クラスターとマイクロサービス アプリケーション オーケストレーション エンジンの 2 つの側面で構成されています。

クラスタリングの観点から見ると、Swarm は 1 つ以上の Docker ノードを編成して、ユーザーがクラスター内でそれらのノードを管理できるようにします。

Swarm には、暗号化された分散クラスター ストア、暗号化されたネットワーク、パブリック TLS (相互 TLS)、セキュア クラスター アクセス トークン (セキュア クラスター参加トークン)、およびデジタル処理を簡素化する一連の PKI (公開キー インフラストラクチャ) が組み込まれています。証明書の管理。ノードは自由に追加または削除できます。

オーケストレーションの点では、Swarm は複雑なマイクロサービス アプリケーションのデプロイと管理を容易にする豊富な API セットを提供します。宣言型構成ファイルでアプリケーションを定義すると、ネイティブの Docker コマンドを使用してアプリケーションをデプロイできます。

さらに、ローリング アップグレード、ロールバック、拡張および縮小操作も実行でき、これらも簡単なコマンドに基づいて完了できます。

これまで、Docker Swarm は Docker エンジンをベースとした独立した製品でした。 Docker バージョン 1.12 以降、Docker エンジンに完全に統合されており、単一のコマンドを実行するだけで有効化できます。 2018 年までに、ネイティブの Swarm アプリケーションに加えて、Kubernetes アプリケーションのデプロイと管理が可能になる予定です。

Docker Swarm の予備的な概要

クラスターの観点から見ると、Swarm は 1 つ以上の Docker ノードで構成されます。これらのノードは、物理サーバー、仮想マシン、Raspberry Pi、またはクラウド インスタンスにすることができます。唯一の前提条件は、すべてのノードが信頼できるネットワークを介して接続されていることです。

ノードは管理ノード (Manager) またはワーカー ノード (Worker) として構成されます。管理ノードはクラスターのコントロール プレーン (コントロール プレーン) を担当し、クラスターのステータスの監視や作業ノードへのタスクの分散などの操作を実行します。ワーカーノードは管理ノードからタスクを受け取り、実行します。

Swarm の構成およびステータス情報は、すべての管理ノードにある分散 etcd データベースに保存されます。データベースはメモリ内で実行され、データを最新の状態に保ちます。このデータベースの最も優れた点は、構成がほとんど必要なく、Swarm の一部としてインストールされ、管理が必要ないことです。

クラスター管理に関して、最大の課題はセキュリティの確保です。 Swarm クラスターをセットアップする場合、TLS は Swarm と緊密に統合されているため、必然的に使用することになります。

セキュリティ意識が高まっている今日の時代では、このようなツールは積極的に推進されるべきです。 Swarm は、通信の暗号化、ノード認証、およびロールの承認に TLS を使用します。自動キーローテーションはさらに素晴らしい機能です。バックグラウンドで静かに動作するため、ユーザーはこの機能の存在にさえ気づきません。

アプリケーション オーケストレーションに関しては、Swarm の最小スケジューリング単位はサービスです。これは Swarm とともに導入され、API の新しいオブジェクト要素であり、コンテナに基づいたいくつかの高度な機能をカプセル化した上位レベルの概念です。コンテナーがサービスにカプセル化されると、それはタスクまたはコピーと呼ばれ、サービスには拡張と縮小、ローリング アップグレード、単純なロールバックなどの機能が追加されます。

要約すると、次の図に示すように、Swarm を一般的な観点から見てみましょう。

docker swarmとは何ですか

推奨学習: 「docker ビデオ チュートリアル

以上がdocker swarmとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Docker in Action:実際の例とユースケースDocker in Action:実際の例とユースケースApr 24, 2025 am 12:10 AM

実際のプロジェクトのDockerのアプリケーションシナリオには、展開の簡素化、マルチコンテナーアプリケーションの管理、パフォーマンスの最適化が含まれます。 1.Dockerは、dockerfileを使用してnode.jsアプリケーションを展開するなど、アプリケーションの展開を簡素化します。 2。DockerComposeは、マイクロサービスアーキテクチャのWebやデータベースサービスなどのマルチコンテナーアプリケーションを管理しています。 3.パフォーマンス最適化は、マルチステージ構造を使用して画像サイズを縮小し、健康チェックを通じてコン​​テナのステータスを監視します。

Docker vs. Kubernetes:ユースケースとシナリオDocker vs. Kubernetes:ユースケースとシナリオApr 23, 2025 am 12:11 AM

小さなプロジェクトまたは開発環境でDockerを選択し、大規模なプロジェクトまたは生産環境でKubernetesを選択します。 1.ドッカーは、迅速な反復とテストに適しています。2。Kubernetesは、大規模なアプリケーションの管理と拡張に適した強力なコンテナオーケストレーション機能を提供します。

LinuxのDocker:Linuxシステムのコンテナ化LinuxのDocker:Linuxシステムのコンテナ化Apr 22, 2025 am 12:03 AM

Linuxは、豊富なツールとコミュニティサポートを提供するネイティブプラットフォームであるため、LinuxでDockerが重要です。 1. docker:sudoapt-getupdateとsudoapt-getinstalldocker-cedocker-ce-clicotainerd.ioを使用します。 2。コンテナの作成と管理:Dockerrun-D-Namemynginx-P80:80NginxなどのDockerrunコマンドを使用します。 3。DockerFileを書き込み:画像サイズを最適化し、マルチステージ構造を使用します。 4。最適化とデバッグ:DockerLogsとDockerexを使用します

Docker:コンテナ化ツール、Kubernetes:オーケストレーターDocker:コンテナ化ツール、Kubernetes:オーケストレーターApr 21, 2025 am 12:01 AM

Dockerはコンテナ化ツールであり、Kubernetesはコンテナオーケストレーションツールです。 1. Dockerパッケージアプリケーションとその依存関係は、Docker対応環境で実行できるコンテナに依存します。 2。Kubernetesはこれらのコンテナを管理し、自動展開、スケーリング、管理を実装し、アプリケーションを効率的に実行します。

Dockerの目的:アプリケーションの展開を簡素化しますDockerの目的:アプリケーションの展開を簡素化しますApr 20, 2025 am 12:09 AM

Dockerの目的は、アプリケーションの展開を簡素化し、コンテナ化技術を通じてさまざまな環境でアプリケーションが一貫して実行されるようにすることです。 1)Dockerは、アプリケーションと依存関係をコンテナにパッケージ化することにより、環境の違いの問題を解決します。 2)DockerFileを使用して画像を作成して、アプリケーションがどこでも一貫して実行されることを確認します。 3)Dockerの作業原則は画像とコンテナに基づいており、Linuxカーネルの名前空間とコントロールグループを使用して、分離とリソース管理を実現します。 4)基本的な使用法には、DockerHubからの画像の引き込みと実行が含まれます。高度な使用法には、DockerComposeを使用したマルチコンテナーアプリケーションの管理が含まれます。 5)画像構築の故障やコンテナの障害などの一般的なエラーは、ログやネットワーク構成を介してデバッグできます。 6)パフォーマンス最適化構造

LinuxとDocker:さまざまなLinux分布のDockerLinuxとDocker:さまざまなLinux分布のDockerApr 19, 2025 am 12:10 AM

Ubuntu、Centos、およびDebianにDockerをインストールして使用する方法は異なります。 1)ubuntu:aptパッケージマネージャーを使用します。コマンドはsudoapt-getupdate && sudoapt-getinstalldocker.ioです。 2)Centos:Yum Package Managerを使用すると、Dockerリポジトリを追加する必要があります。コマンドは、sudoyumininstall-yyum-utils && sudoyum-config-manager - add-repohttps://download.docker.com/linです

Mastering Docker:Linuxユーザー向けガイドMastering Docker:Linuxユーザー向けガイドApr 18, 2025 am 12:08 AM

LinuxでDockerを使用すると、開発効率が向上し、アプリケーションの展開を簡素化できます。 1)Ubuntu画像を引く:dockerpullubuntu。 2)ubuntuコンテナを実行:Dockerrun-itubuntu/bin/bash。 3)nginxを含むDockerFileを作成します:fromubuntu; runapt-getupdate && apt-getinstall-ynginx; expose80。 4)画像の作成:dockerbuild-tmy-nginx。 5)コンテナの実行:Dockerrun-D-P8080:80

LinuxのDocker:アプリケーションとユースケースLinuxのDocker:アプリケーションとユースケースApr 17, 2025 am 12:10 AM

Dockerは、Linuxのアプリケーションの展開と管理を簡素化します。 1)Dockerは、アプリケーションとその依存関係を軽量でポータブルコンテナにパッケージ化するコンテナ化されたプラットフォームです。 2)Linuxでは、DockerはCgroupと名前空間を使用して、コンテナの分離とリソース管理を実装します。 3)基本的な使用には、画像の引き込みと実行容器が含まれます。 DockerComposeなどの高度な使用は、マルチコンテナーアプリケーションを定義できます。 4)一般的に使用されるDockerLogsとDockerexecコマンドをデバッグします。 5)パフォーマンスの最適化は、マルチステージの構造により画像サイズを縮小することができ、DockerFileをシンプルに保つことがベストプラクティスです。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。