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

Kubernetesで、Podは作り直されるたびにIPアドレスが変わる。ほかのアプリケーションから、ラベルで選んだ複数のPodに、変わらない名前とアドレスで接続して負荷を分散できるようにするリソースはどれか。

  1. AConfigMap
  2. BService
  3. CPersistentVolume
答えと解説を見る

正解:B. Service

Serviceは、ラベルのセレクタに一致するPodの集まりに、クラスタの中で変わらない仮想的なIPアドレスとDNSの名前を与え、届いた通信をそれらのPodに振り分けます。Podが入れ替わっても、Serviceの名前で接続すればよいので、接続する側はPodのアドレスを知る必要がありません。クラスタの外に公開するときは、type を NodePort や LoadBalancer にするか、Ingressを使います。ConfigMapは設定値を、PersistentVolumeは永続的な記憶領域を扱うリソースです。

  • A. ConfigMapは、設定値をイメージから切り離してPodに渡すためのリソースです。
  • B. 正しい。Serviceは安定した名前とアドレスで、複数のPodに振り分けます。
  • C. PersistentVolumeは、Podが作り直されても残る記憶領域を表すリソースです。
この分野を解く 分野ページへ

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

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

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

  1. Kubernetesのクラスタで、1つのホスト名に届いたHTTPSの要求のうち、パスが /api で始まるものは api のServiceへ、それ以外は web のServiceへ振り分けたい。この振り分けの規則を定めるのに適したリソースはどれか。
  2. KubernetesのSecretに、データベースのパスワードを保存する。Secretの説明として、正しいものはどれか。
  3. あるWebアプリケーションは、起動してからキャッシュを読み込むまでの約60秒間は要求を処理できず、その間は /ready に503を返す。Podのコンテナに上の設定を加えたときの効果として、正しいものはどれか。
  4. KubernetesのWebアプリケーションで、livenessプローブの確認の処理の中で、依存先のデータベースに接続できるかまで調べるようにした。この設定で起こりうる問題として、最も適切なものはどれか。
  5. KubernetesのHorizontalPodAutoscalerで、PodのCPU使用率の目標を70%、Podの数の範囲を1〜10とした。いま5つのPodの平均のCPU使用率が30%である。必要なPodの数を ⌈現在の数 × 現在の使用率 ÷ 目標の使用率⌉(⌈ ⌉ は切り上げ)で求めるとき、必要なPodの数として、正しいものはどれか。