最初のポッドを Kubernetes クラスターにデプロイするにはどうすればよいですか?

最初のポッドを Kubernetes クラスターにデプロイするにはどうすればよいですか?

[[437979]]

[51CTO.com クイック翻訳] Pod は、Kubernetes アプリケーションの基本的な実行単位です。同じホスト上に一緒にデプロイされたコンテナのコレクションです。 Kubernetes クラスター内のポッドは、次の 2 つの方法で使用できます。

  • 単一のコンテナを実行するポッド: これはポッドを使用する最も一般的な方法です。 Kubernetes はコンテナを直接管理するのではなく、ポッドを管理します。
  • 連携して動作する必要がある複数のコンテナを実行するポッド: このパターンでは、ポッドにリソースを共有するための複数の密結合コンテナが存在する場合があります。

前述のように、Pod には複数のコンテナが存在する可能性があるため、可能な限り 1 つのコンテナを使用することを常に推奨します。複数のコンテナを 1 つの Pod に結合するのは、比較的高度なユースケースです。このパターンは、コンテナーが密結合されている特定の場合にのみ使用する必要があります。

単一のコンテナをデプロイする場合は、通常、「ポッド」という単語を「コンテナ」に置き換えることができます。 Pod はメンバー間のデータ共有とコミュニケーションを可能にします。

ポッドは常にノード上で実行されます。ノードは Kubernetes のワーカー マシンであり、クラスターに応じて仮想マシンまたは物理マシンになる場合があります。各ノードはマスターノードによって管理されます。ノードには複数の Pod が存在する場合があり、Kubernetes マスターはクラスター内のノード間での Pod のスケジュールを自動的に処理します。

ポッドライフサイクルの5つの段階

  • 保留中: Pod は Kubernetes システムによって受け入れられましたが、1 つ以上のコンテナ イメージがまだ作成されていません。これには、スケジュール設定までの時間と、ネットワーク経由でイメージをダウンロードするのにかかる時間が含まれます。これには時間がかかる場合があります。
  • 実行中: ポッドはノードにバインドされ、すべてのコンテナが作成されました。少なくとも 1 つのコンテナーがまだ実行中であるか、起動中または再起動中です。
  • 成功: ポッド内のすべてのコンテナが正常に終了し、再起動されません。
  • 失敗: ポッド内のすべてのコンテナが終了しましたが、少なくとも 1 つのコンテナの終了に失敗しました。つまり、コンテナはゼロ以外のステータスで終了するか、システムによって終了されます。
  • 不明: 何らかの理由で Pod のステータスを取得できませんでした。通常は、Pod のホストへの接続エラーが原因です。

前提条件

  • AWS アカウント(まだお持ちでない場合は作成してください)
  • Kubernetes クラスター (Kubernetes クラスターの作成方法を学習したい場合は、「kubeadm を使用して AWS EC2 インスタンス Ubuntu 18.04 LTS 上に Kubernetes クラスターを作成する」を検索してください)。

注: AWS EC2 インスタンスを試したくない場合は、仮想マシンを使用してクラスターを作成することもできます。

どうすればいいでしょうか?

  • NginX 用の Kubernetes Pod を作成して削除します。

Nginx用のKubernetesポッドを作成する

最初の Pod を作成するには、Object/Pod ファイルを作成するための新しいディレクトリを作成しましょう。次のコマンドを使用して、システムに新しいディレクトリを作成します。

  1. mkdir my- first -podを実行します。
  2. cd マイファーストポッド/

次の手順に進む前に、クラスターのステータスを確認します。

クラスターで使用可能なノードを確認し、「kubectl」のバージョンを確認するには、次のコマンドを使用します。

  1. sudo kubectl ノードを取得する
  2. sudo kubectl バージョン

デフォルトの名前空間内のポッドを一覧表示するには、次のコマンドを使用します。これはクラスター内の最初のポッドなので、デフォルトの名前空間にはポッドは表示されません。

  1. sudo kubectl ポッドを取得する

クラスター内に使用可能なノードができたら、最初のポッドを作成する準備が整います。

次のコード スニペットを含むファイル「my-first-pod.yml」を作成します。

  1. vim my- first -pod.ymlです
  2. ---  
  3. APIバージョン: v1
  4. 種類: ポッド
  5. メタデータ:
  6. 名前: myfirstpod
  7. ラベル:
  8. アプリ: ウェブ
  9. 仕様:
  10. コンテナ:
  11. -名前: myfirstcontainer
  12. 画像: nginx
  13. ポート:
  14. - コンテナポート: 80

  • apiVersion: APIVersion は、オブジェクトのこの表現のバージョン スキーマを定義します。
  • kind: 作成するオブジェクトの種類。ここではポッドを作成しているので、pod です。
  • name: 名前は名前空間内で一意です。
  • ラベル: オブジェクトを整理および分類するために使用できる文字列キーと値のマップ。
  • spec: ポッドの予想される動作の仕様。

これで、次のコマンドを使用してポッドを作成する準備が整いました。

  1. sudo kubectl apply -f my- first -pod.ymlを実行します。

次のコマンドを使用して、ポッドの詳細を取得できます。

  1. sudo kubectl ポッドを取得する

Pod が実際に実行されていることを確認するには、次のコマンドを実行します。これにより、ポッド内でコマンドが実行されます (注: これは docker exec の実行に似ています)。

  1. sudo kubectl exec myfirstpod — サービス nginx ステータス

ポッドが不要になった場合は、kubectl delete コマンドを使用して削除できます。

  1. sudo kubectlポッドを削除するmyfirstpod

最後に、ポッドが削除されたことを確認するには、次のコマンドを使用します。

  1. sudo kubectl ポッドを取得する

結論

この記事では、ポッドの基本と、そのライフサイクルのいくつかの段階について学習しました。 Kubernetes 上で最初の Nginx Pod を作成する手順と、Pod の詳細を抽出する方法を確認しました。さらに、Podを削除するコマンドも導入しました。

元のタイトル: Kubernetes クラスターに最初のポッドをデプロイする方法

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください。

<<:  専用回線を使わずにハイブリッドクラウドを構築するには?

>>:  HarmonyOS サンプルのペーストボード分散ペーストボード

推薦する

ファーストレベルドメイン名とセカンドレベルドメイン名間の友好リンクの交換を表示する方法

多くの人は、ファーストレベルドメイン名とセカンドレベルドメイン名が何であるかを理解していません。実際...

iResearchの「2021年クラウドネイティブインテリジェントマーケティング調査レポート」がリリース、Mobvista、Adobe、Alimamaが代表例として選出

デジタル経済は時代の発展の主要テーマとなっています。デジタル産業化の中核シナリオの一つとして、インテ...

ロングテールキーワード運用に関する考察

キーワードマイニングは何度も行っているようです。一般的な方法は、Baidu のツール、Baidu 関...

あなたはどんな蜘蛛の罠にかかったことがありますか?

企業サイトを運営したことがあるウェブマスターは、企業サイトは一般的に製品の宣伝に使用されるため、企業...

インターネット上のトラフィックの40%以上が偽物

2週間前、国内マーケティング業界で大きな出来事が起こりました。甲社がWeiboのトップトラフィックエ...

銀行業界は現在、クラウドへの移行をどのように進めているのでしょうか?

2021年7月15日午前、中国建設銀行でシステムクラッシュが発生し、通常の業務が行えなくなり、すべて...

草の根ウェブマスターが最初の100万ドルをすぐに稼ぐ方法

実際、インターネット業界で働く人は皆、すぐに金持ちになりたいという願望を持っています。私自身も、友人...

「10年間の塵と汚れは白い雲に消えた」Hexin Chuangtianの次世代クラウドデスクトップVENGD 4.0がリリースされました

4月18日、「塵と土が遠く白い雲に達する10年」をテーマにした和信創天の次世代クラウドデスクトップ製...

世界のクラウドコンピューティング市場の価値は2025年に8,321億ドルに達する

最近、世界はCOVID-19による大規模な危機に見舞われています。健康への影響にもかかわらず、パンデ...

機密情報ウェブサイトを宣伝するための実践的な方法

企業のウェブサイト最適化のための強力なリソースとしての分析情報ウェブサイトプロモーションは、多くのマ...

人気のブログコミュニティを作る5つの方法

ご存知のとおり、ブログは今や広く人々に利用されています。人々はブログを通じて自分の気持ちや生活を自由...

「王菊」の反撃の暴露:弱いブランドはいかにして「九内人」を見つけるか

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています王菊は大人...

Baidu アルゴリズム更新 SEOVIP ランキング消失の推測

2012年、世界の終わりが近づき、新年を迎える準備をしていたとき、Baiduのアルゴリズムは依然とし...

Dockerはボリュームの永続化にOpenStack Cinderを使用する

1 背景1.1 OpenStack Cinder の紹介OpenStack Cinder は、Ope...

ブランド効果プロモーション:Docin Libraryの運営

各 SEOER には独自の最適化方法があり、異なるターゲット グループを対象としています。検索エンジ...