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メモリ領域分割の深い理解

推薦する

「クリーンネットワーク2014」キャンペーンに参加して、きれいなネットワーク空間を作りましょう

新華網、北京、4月14日:インターネット上でのわいせつ情報やポルノ情報の拡散は社会的な迷惑となってい...

検索エンジンの入札はデータを使った「ゲーム」である

データ分析といえば、特に長い間入札に触れていない多くの友人は、それが非常に「奥​​深くて神秘的」であ...

優れたSEO実践者の良い習慣

SEO に触れたことがあれば、SEO は毎日の定期的な作業であることがお分かりでしょう。したがって、...

locvps: 30% オフ、ハイエンドの香港 VPS、66 元/月、6G メモリ/2 コア/60g SSD/無制限トラフィック、Windows をサポート

locvps は現在、香港のクラウド データ センターで、ハイエンドで低価格の VPS 2 つを 3...

アメリカの配車サービスであるUberは、どのようにして4年間で時価総額を180億ドルにまで成長させたのでしょうか?

海外メディアの報道によると、アメリカの配車サービス「ウーバー」の評価額はわずか4年でゼロから驚異の1...

おすすめのウェブサイト: loveyourlarder ユニークな食品ウェブサイト

「ユーザーが新しい食品を発見し、購入できるようにする」ことが、loveyourlarder ウェブサ...

Hongmeng HarmonyOS 分散型カーゲームデモ

[[401992]]詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したH...

EverDB 分散実行プラン

この記事は、EverDB R&D チームが執筆した WeChat パブリック アカウント「独...

企業がソーシャル メディア マーケティングを選択するのはなぜでしょうか?

現在、社会、メディア、消費者はいずれも変化しています。企業がそれに追いつきたいのであれば、それに応じ...

SEO が市場から独自の地位を獲得する方法

SEO の価値は、インターネットからターゲットを絞った無料のトラフィックを獲得することですが、ほとん...

画像共有サイトPinterestが共有リンクのブロックを開始

テクノロジーブログ「AllThingsD」によると、7月16日、写真共有サイト「Pinterest」...

asmallorange - 全品 34% オフ/cpanel ライセンス無料/kvm/メモリ 2g/ハード ドライブ 50g/トラフィック 1T

有名な海外ホスティング会社 asmallorange.com では、夏のプロモーションを実施していま...

Baidu AcceleratorとBaidu Allianceが共同で「アクセラレータ製品調査」活動を開始

Baidu と Accelerator が共同で Baidu Accelerator を立ち上げて以...

ウェブサイト上の重要なページの重みと、重要でないページの処理

SEO によるウェブサイトの内部最適化には、内部ページの重み付けをどのように割り当て、一部の重要でな...

投稿した外部リンクを理解していますか?

ウェブマスターは、毎日 50、100 以上の外部リンクを投稿するために熱心に取り組んでいます。しかし...