クラウドとコンテナの基礎

Kubernetesで、replicas: 3 を指定したDeploymentのPodが3つ動いている。このうち1つのPodを kubectl delete pod で削除したときに起きることとして、正しいものはどれか。

  1. ADeploymentの設定も replicas: 2 に書き換わり、Podは2つのまま動き続ける
  2. B実際の数が指定した3に足りなくなったことをコントローラが検知し、新しいPodを1つ作る
  3. CDeploymentに属するほかの2つのPodも削除され、Deployment全体が停止する
答えと解説を見る

正解:B. 実際の数が指定した3に足りなくなったことをコントローラが検知し、新しいPodを1つ作る

Kubernetesでは、利用者は「Podを3つ動かす」というあるべき状態を宣言し、コントローラが実際の状態をくり返し観察して、違いがあれば宣言に近づけるように操作します(リコンサイル)。Podを1つ削除すると実際の数が2になるので、ReplicaSetのコントローラが新しいPodを作って3に戻します。ノードの故障でPodが失われた場合も、同じ仕組みでほかのノードにPodが作り直されます。Podの数を本当に減らしたいときは、Podを消すのではなく、Deploymentの replicas を変更します。

  • A. Podを削除しても、Deploymentに宣言した replicas は変わりません。宣言との違いを埋めるようにPodが作られます。
  • B. 正しい。宣言した状態と実際の状態の違いを、コントローラが埋めます。
  • C. 削除したPod以外には影響しません。Deploymentを削除しない限り、ほかのPodは動き続けます。
この分野を解く 分野ページへ

クラウドとコンテナの基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

クラウドとコンテナの基礎のほかの問題

  1. KubernetesのDeploymentで、Podのテンプレートのコンテナイメージを新しい版に変更した。既定の更新方式(RollingUpdate)で起きることとして、正しいものはどれか。
  2. replicas: 10 のDeploymentで、ローリングアップデートの設定を maxSurge: 25%、maxUnavailable: 25% とした。更新の途中の、Podの総数の上限と、利用可能なPodの数の下限の組み合わせとして、正しいものはどれか。
  3. Kubernetesで、Podは作り直されるたびにIPアドレスが変わる。ほかのアプリケーションから、ラベルで選んだ複数のPodに、変わらない名前とアドレスで接続して負荷を分散できるようにするリソースはどれか。
  4. Kubernetesのクラスタで、1つのホスト名に届いたHTTPSの要求のうち、パスが /api で始まるものは api のServiceへ、それ以外は web のServiceへ振り分けたい。この振り分けの規則を定めるのに適したリソースはどれか。
  5. KubernetesのSecretに、データベースのパスワードを保存する。Secretの説明として、正しいものはどれか。