CKA 試験に必須: 複数のコンテナの Pod カプセル化の高度なテクニックを習得しましょう。

CKA 試験に必須: 複数のコンテナの Pod カプセル化の高度なテクニックを習得しましょう。

Kubernetes の世界では、Pod はデプロイ可能な最小単位であり、複数のコンテナが緊密に連携できるように、同じ Pod 内で複数のコンテナを実行する必要がある場合があります。この記事では、複数のコンテナを Pod にカプセル化し、Kubernetes の強力な可能性を最大限に引き出す方法について詳しく説明します。

1. ポッドの基本概念

Pod は Kubernetes における最小のリソース管理コンポーネントです。 Pod は、コンテナ化されたアプリケーションの実行を最小限に抑えるリソース オブジェクトでもあります。 Pod はクラスター内で実行されているプロセスを表します。 Kubernetes の他のほとんどのコンポーネントは、Pod 機能をサポートおよび拡張するために Pod を中心に展開されます。

ポッド

Kubrenetes クラスターで Pod を使用するには 2 つの方法があります。

(1)ポッド内でコンテナを実行する:

ポッドごとに 1 つのコンテナ モデルが最も一般的な使用法です。この使用法では、ポッドは単一のコンテナのカプセル化と考えることができ、Kubernetes はコンテナを直接管理するのではなく、ポッドを管理します。

(2)ポッド内で複数のコンテナを同時に実行する:

Pod は、互いに緊密に結合されて連携し、それらの間でリソースを共有する必要がある複数のコンテナをカプセル化することもできます。同じ Pod 内のこれらのコンテナは、相互に連携して、ファイルを共有するコンテナとこれらのファイルを更新する別の「サイドカー」コンテナなどのサービス ユニットになることができます。 Pod はこれらのコンテナのストレージ リソースを単一のエンティティとして管理します。

たとえば、共有ボリュームからファイルを提供する Web サーバーを提供するコンテナーと、それらのファイルをリモートで更新する別のサイドカー コンテナーを次のように用意できます。

一部のポッドにはInitコンテナ[1]とアプリケーションコンテナ[2]があります。デフォルトでは、アプリケーション コンテナを起動する前に、init コンテナが実行され、完了します。

2. ケースデモンストレーション

1. ポッド内でコンテナを実行する

以下は、イメージ nginx:1.14.2 を実行するコンテナで構成される Pod の例です。これはポッド内でコンテナを実行しています。

 apiVersion:v1 kind:Pod metadata: name:simple-pod spec: containers: -name:nginx image:nginx:1.14.2 ports: -containerPort:80

上記の Pod を作成するには、次のコマンドを実行します。

 kubectl apply -f simple-pod.yaml

通常、ポッドは直接作成されるのではなく、ワークロード リソースを使用して作成されます。

2. ポッド内で複数のコンテナを同時に実行する

以下は、イメージ nginx:1.14.2 と MYSQL を実行するコンテナで構成される、複数のコンテナをカプセル化する Pod の例です。

 apiVersion:v1 kind:Pod metadata: name:complex-pod spec: containers: -name:nginx image:nginx:1.14.2 ports: -containerPort:80 -name:mysql image:mysql env: -name:MYSQL_ROOT_PASSWORD value:"@123456@" ports: -containerPort:3306

MySQL コンテナの最新バージョンは環境変数で設定する必要があるため、そうしないと起動に失敗します。

上記の Pod を作成するには、次のコマンドを実行します。

 kubectl apply -f complex-pod.yaml

Pod は複数のコンテナをカプセル化します。 kubectl を使用してポッド内のコンテナを操作することは、ポッド内で単一のコンテナを実行することとは異なります。たとえば、nginx コンテナに入る場合。複数のコンテナを Pod にカプセル化するには、次のコマンドを実行する必要があります。

 kubectl exec -it complex-pod -c nginx /bin/sh
  • complex-pod: ポッドの名前です
  • -c はポッド内のコンテナの名前を指定します。例: nginx

3. CKA本試験解説

1. 実際の質問のスクリーンショット

2. 中国の分析

k8s クラスター環境を切り替えます: kubectl config use-context k8sTask: kucc1 という名前の Pod を作成します。この Pod には、nginx、redis、memcached、consul の 4 つのコンテナが含まれています。

3. 公式参考文書

ポッドは複数のコンテナをカプセル化する[3]

4. 質問分析

(1)k8sクラスタ環境に切り替える

kubectl config use-context k8s

(2)Podリソースオブジェクトファイルを書き込む

apiVersion:v1 kind:Pod metadata: name:kucc1 spec: containers: -name:nginx image:nginx -name:redis image:redis -name:memcached image:memcached -name:consul image:consul

(3)リソースリストを提出する

kubectl apply -f kucc1.yaml

(4)ポッド作成のステータスを確認する

kubect get pod

参考文献

  • [1]Initコンテナ: https://kubernetes.io/zh-cn/docs/reference/glossary/?all=true#term-init-container
  • [2] アプリケーションコンテナ: https://kubernetes.io/zh-cn/docs/reference/glossary/?all=true#term-app-container
  • [3] ポッドは複数のコンテナをカプセル化します: https://kubernetes.io/zh-cn/docs/tasks/inject-data-application/define-environment-variable-container/

<<:  AWSはGoogle Cloudに続き移行の「退出料金」を廃止し、顧客は無料で退出できるようになった

>>:  2024年、SaaSユニコーン絶滅の時代?

推薦する

Baidu Liveに希望はあるのでしょうか?

最近、百度はライブ放送事業を積極的に推進しており、まず「エネルギー集結計画」を打ち出し、100億のト...

ゴールデンウィーク中、電子商取引のトラフィックは大幅に減少しましたが、速達便では倉庫の溢れは発生せず、トラフィックは若干減少しました。

北京ニュース(劉霞記者)「8.15価格戦争」で大人気となった大手電子商取引企業は、国慶節の休暇中の消...

中小電子商取引企業は引き続き寒風にさらされている。ファッション百貨店B2Cヤオディアン100は営業を停止

Yaodian100の営業停止の公式発表(写真提供:テンセントテクノロジー)テンセントテクノロジーニ...

どちらの検索結果がより公平でしょうか?マイクロソフト、グーグルの「有料ランキング」を非難

[はじめに] Microsoft: Google に対し、「有料ランキング」の慣行をやめ、消費者が本...

百度6月の大型アップデートにおけるウェブサイトペナルティの3つの状況を分析

6月の百度の大型アップデートを受けて、私たちはペナルティを受けたウェブサイトを詳細に観察しました。同...

frontrangehosting プロモーション/openvz 60% オフ/kvm 70% オフ

frontrangehosting は比較的新しい VPS プロバイダーで、無料 IP 範囲は AS...

Parallels Toolbox 2.5 for Mac 使いやすい新ツールで毎日のコンピューティングを簡素化

クロスプラットフォーム ソリューションの世界的リーダーであり、Mac® 上で Windows® アプ...

Amazon SageMaker が DerbySoft のホテル客室空室状況クエリの精度向上に貢献

【2020年10月12日】記者は、DerbySoft(上海)有限公司から、同社がAmazon Clo...

Vancl は「帰路」で何をしたいのでしょうか?

昨年第4四半期に黒字を達成したヴァンクルにとって、今年のプレッシャーは依然として非常に大きい。チュー...

航空機の「ブラックボックス」データをクラウドにアップロードするのが難しいのはなぜですか?

最近、中国東方航空のボーイング737旅客便MU5735便の墜落事故がインターネット上で大騒ぎになって...

マイクロソフト、中国での国境を越えた脱税で捜査中

ロイター通信は新華社通信の報道を引用し、マイクロソフト社が中国当局に1億4000万ドルの追徴課税を支...

ウェブサイトのコンテンツを読むためにページをめくる必要があるのはなぜですか?

コンテンツは最も高価です!ウェブサイトを運営する人にとって、コンテンツの価値を高めるにはどうすればよ...

車のインターネットがビジネスイノベーションを加速

自動車業界におけるビッグデータ、モノのインターネット、人工知能の継続的かつ急速な進歩により、自動車業...

純粋に技術的な乾物共有: 分散トランザクション処理方法の概要

プロジェクト開発では、分散トランザクションを処理する必要があることがよくあります。たとえば、データベ...