Kubernetes レプリケーション コントローラーの仕組み

Kubernetes レプリケーション コントローラーの仕組み

[[436665]]

レプリケーション コントローラーは、ポッドのライフサイクルを管理し、必要な数のポッドが常に実行されていることを確認する役割を担います。

ポッドポッドKubernetesでこれを行う方法はたくさんありますが、一般的なアプローチは「レプリケーション コントローラレプリケーションコントローラRC は、ポッドのライフサイクルを管理し、必要な数のポッドが常に実行されていることを確認する責任を負います。一方、自動スケーリング、準備状態と生存状態の検出、その他の高度なレプリケーション機能の実行などの高度なクラスター機能は担当しません。 Kubernetes クラスター内の他のコンポーネントは、これらの機能をより適切に実行できます。

つまり、RC の役割は限定されており、通常は、特定の要件を満たすために複雑なロジックを必要としない特定の実装に使用されます (たとえば、必要なポッドの数が常に指定された数と一致することを確認するなど)。必要な数を超えた場合、RC は超過分を削除し、ノード障害やポッド終了が発生した場合でも同じ数が存在するようにします。

シンプルなものには複雑な解決策は必要ありません。私にとって、これは RC の使用方法を示す完璧な比喩です。

RCの作成方法

ほとんどの Kubernetes リソースと同様に、YAML または JSON 形式を使用して RC を作成し、Kubernetes API エンドポイントに公開できます。

  1. $ kubectl create - f rcexample . yaml
  2. replicationcontroller / rcexample created

ここで、 rcexample.yamlどのようなものか詳しく見ていきます。

  1. apiVersion : v1
  2. kind : ReplicationController RC描述符
  3. metadata :
  4. name : rcexample 复制控制器名字
  5. spec :
  6. replicas : 3 预期的吊舱数量
  7. selector : 这个 RC的吊舱选择器
  8. app : nginx
  9. template : 用于创建新吊舱的模板
  10. metadata :
  11. labels :
  12. app : nginx
  13. spec :
  14. containers :
  15. - name : nginx
  16. image : nginx

さらに説明すると、このファイルを実行すると、 rcexampleという名前の RC が作成され、 nginxという名前の 3 つのポッド インスタンスが常に実行されるようになります。 1 つまたはすべてのapp=nginxポッドが実行されていない場合は、定義されたポッド テンプレートに従って新しいポッドが作成されます。

RC には 3 つの部分があります。

  • レプリカ: 3
  • ポッドテンプレート: app=nginx
  • ポッドセレクター: app=nginx

RC が常にポッドを作成しないようにするには、ポッド テンプレートがポッド セレクターと一致している必要があることに注意してください。テンプレートと一致しないポッドセレクターを使用して RC を作成すると、Kubernetes API サーバーからエラーが発生します。

RC rcexampleが作成されたことを確認するには:

  1. $ kubectl get po
  2. NAME READY STATUS RESTARTS AGE
  3. rcexample - 53thy 0 / 1 Running 0 10s
  4. rcexample - k0xz6 0 / 1 Running 0 10s
  5. rcexample - q3vkg 0 / 1 Running 0 10s

RC を削除するには:

  1. $ kubectl delete rc rcexample
  2. replicationcontroller "rcexample" deleted

RC のサービスに対してローリング アップデート戦略を使用して、ポッドを 1 つずつ置き換えることができることに注意してください。

コンテナをコピーする他の方法

Kubernetes デプロイメントでコンテナを複製する方法は複数あります。 Kubernetes がコンテナ プラットフォームの主な選択肢となった主な理由の 1 つは、信頼性、負荷分散、スケーリングのためにコンテナを複製するネイティブ機能です。

上記では、常に一定数のポッドが利用可能であることを保証する RC を簡単に作成する方法を示しました。レプリカの数を更新することで、ポッドを手動でスケーリングできます。

もう一つの方法は、レプリケーション セットレプリカセット(RS)」を使用して複製の目的を達成します。

  1. ( kind : ReplicaSet )

RS の機能は RC とほぼ同じです。主な違いは、RS ではローリング アップデート戦略が許可されないことです。

複製を実現するもう1つの方法は、展開する展開」。

  1. ( kind : Deployment )

デプロイメントは、コンテナを複製するより高度な方法です。機能的には、デプロイメントは同じ機能を提供しますが、必要に応じて変更をロールアウトおよびロールバックする機能があります。この機能は、デプロイメントに「戦略タイプ戦略タイプ” 仕様を使用して、古いポッドを新しいポッドに置き換えます。 2 種類のデプロイメント戦略を定義できます。再作成再現する" そして"ローリングアップデートローリングアップデートデプロイメント戦略は次のように指定できます。

  1. StrategyType : RollingUpdate

要約する

コンテナのレプリケーション機能は、ほとんどの企業が Kubernetes の導入を検討する主な理由の 1 つです。レプリケーションにより、運用の最小要件として最も重要なアプリケーションのほとんどに必要な信頼性とスケーラビリティを実現できます。

Kubernetes クラスターでレプリケーションを実装するために使用される方法を理解することは、アプリケーション アーキテクチャの考慮事項に最適な方法を決定する上で重要です。

<<:  テンセントクラウド、南米初のデータセンターをブラジルのサンパウロに開設、海外クラウドサービスの展開を加速

>>:  JVMメモリ領域分割の深い理解

推薦する

クラウドネイティブの AWS サービスを活用してセキュリティ体制を強化するにはどうすればよいでしょうか?

[[428809]]この記事はWeChat公式アカウント「新チタン雲務」から転載され、喬炳成が翻訳し...

ゴダディ 47% オフ

Godaddy が中国人向けの特別な割引コードを提供したのは久しぶりです。今回は強力な割引コードが登...

山大文学内部抗争:30人が突然集団辞職したが、制御可能

30人近くの集団辞職は突然だったが、すべてはコントロール下にある黄元侯小強氏はこう語った。シャンダ文...

spinservers: 安価な米国のハイエンド サーバー、30 分で利用可能、最低 $89、2*e5-2630Lv2/64g メモリ/1.6T SSD/10Gbps 帯域幅

8 月に、スピンサーバーは超高構成の米国独立サーバーを超格安で提供するプロモーションを開始しました。...

推奨: Buyvm $5/年/専用IP/cpanel仮想ホスト

buyvm は、cpanel パネル、純粋な SSD ハード ドライブ (RAID 付き)、無制限の...

ブランドプロモーションにWeChatマーケティングを活用する方法

WeChatは、70年代、80年代、90年代に生まれた人にとってはよく聞く言葉だと思います。信憑性は...

小さな調整でページ最適化の結果を素早く改善する方法

最適化は修正とは異なります。修正とは元の設計に大きな変更を加えることであり、最適化とは結果を迅速に改...

可用性、同時実行性、パフォーマンスに優れたクラウドネイティブ コンテナ ネットワークを構築するにはどうすればよいでしょうか?

クラウドネイティブ インフラストラクチャの構築について話すとき、クラウドネイティブ コンテナ ネット...

MOBAゲーム業界レポート!誰もが楽しめるeスポーツの時代が到来!

公正な競争という特徴こそが、 MOBAゲームが世界中で人気を博している根本的な理由です。 MOBA(...

詳細が成功と失敗を決める:ウェブサイトのランキング要因の詳細に関する調査

ウェブサイトのランキングについてはさまざまな意見があります。ウェブサイトが Baidu または Go...

[大企業からの面接質問] Redis では分散ロックはどのように実装されていますか?

分散ロックを実装する一般的な方法は 3 つあります。データベースの楽観的ロック。 Redis に基づ...

トレンドに気づくのが遅く、インターネットのトレンドを追うリソースが不足しているウェブマスターにとって、解決策は何でしょうか?

最近、共同購入サイトに関するレポートをたくさん読んでいます。「再編」や「損失を利益に変える」などのキ...

フォーラムの外部リンクを作成する際に注意すべき 4 つの詳細

Baidu のアルゴリズムはフォーラム外部リンクの重みを何度も減らしてきましたが、多くのウェブマスタ...

個人ウェブサイトが生き残りたいなら、次の5つの点に注意する必要があります

大手検索エンジンがインターネットのスパムサイトを一掃するにつれ、特に一部の個人サイトにとって、ランキ...