模擬問題集 › GCP-PCD › 練習問題 5

GCP-PCD 練習問題 5|スケーラブルで安全かつ信頼性の高いクラウドネイティブ アプリケーションの設計

Professional Cloud Developer・無料公開(全 200 問中 15 問を無料公開中)

問題
あなたのチームはクラウド費用の削減に取り組んでおり、あなたは GKE Autopilot クラスタのコストを評価したいと考えています。マニフェストを確認したところ、現在リソース リクエストが指定されていないことがわかりました。アプリケーションはステートレスかつフォールト トレラントで、ノードに対する特定のハードウェア要件やメモリ要件はありません。十分なコンピューティング リソースを備えたクラスタを維持しながら、スケーラブルで費用対効果の高いクラスタになるよう、できるだけ早く変更したいと考えています。どうすればよいですか?

選択肢と解説

  • ✓
    Pod を Spot Pod として実行するようリクエストし、YAML マニフェストで cloud.google.com/gke-spot=true ラベルを使用する。
  • 2
    YAML マニフェストで Balanced コンピューティング クラスをリクエストする。
  • 3
    YAML のデプロイ構成マニフェストで、最大 CPU を 5 vCPU にリクエストして設定する。
  • 4
    Cloud Trace と Cloud Monitoring を設定し、過去 30 日間に使用された最大メモリを特定して、その量のメモリをリクエストするよう YAML マニフェストを設定する。

解説

【正解】A

【0からの解説】
①前提知識
・GKE Autopilot は、ノードの作成・スケーリング・管理を Google が行うモードで、課金はノード単位ではなく Pod がリクエストした CPU・メモリなどのリソースに対して行われます。リソース リクエストを指定しない Pod には、コンピューティング クラスごとのデフォルト値(汎用クラスでは 0.5 vCPU・2 GiB など)が自動的に適用されます。
・Spot Pod は、Spot VM(Google Cloud の余剰容量)上で実行される Pod です。通常の Pod より大幅に安い料金で実行でき、その代わりに Google Cloud が容量を必要とした際に Pod が終了(プリエンプト)されることがあります。そのため、ステートレスでフォールト トレラント(途中で止まっても再実行・再スケジュールで回復できる)なワークロード向けとされています。Autopilot では、マニフェストの nodeSelector(またはノード アフィニティ)で cloud.google.com/gke-spot: "true" を指定するだけで Spot Pod をリクエストでき、Autopilot が自動で Spot ノードを用意します。
・コンピューティング クラス(Balanced・Scale-Out・Performance など)は、汎用クラスより高い性能や特定のマシン特性が必要な場合に選ぶもので、通常は汎用クラスより単価が高くなります。

②要件と制約の整理
・目的はコスト削減(費用対効果)とスケーラビリティ。
・アプリはステートレスでフォールト トレラント、特別なハードウェア / メモリ要件なし。
・「できるだけ早く」変更したい。
・十分なコンピューティング リソースは維持したい。

③正解がどう満たすか
ワークロードの性質(ステートレス・フォールト トレラント)はまさに Spot Pod の想定ユースケースです。マニフェストに cloud.google.com/gke-spot="true" の nodeSelector を 1 行追加するだけで、同じリソース量(=十分なコンピューティング リソース)を維持したまま、Pod あたりの単価を大きく下げられます。Pod がプリエンプトされても Deployment が再作成し、Autopilot が自動でノードを用意するので、スケーラビリティも保たれます。分析作業を必要とせず即座に適用できる点で「できるだけ早く」にも合致します。

【誤りの選択肢】
B:Balanced コンピューティング クラスは、汎用クラスより高い CPU 性能や大きなリソース量が必要なワークロード向けで、料金は汎用クラスより高くなります。特別なハードウェア要件がないこのアプリで選ぶと、コスト削減どころかコスト増になります。
C:Autopilot の課金はリクエストしたリソース量に基づくため、CPU を 5 vCPU という根拠のない大きな値でリクエストすると、デフォルト(0.5 vCPU)よりはるかに高額になります。実際の使用量に基づかない設定で、費用対効果の要件に反します。
D:実使用量に基づいてリクエストを適正化(ライトサイジング)するのは長期的には有効ですが、30 日分のデータを集めて分析する必要があり「できるだけ早く」に反します。また Cloud Trace はリクエストのレイテンシ分析用でメモリ使用量の把握には不要であり、ピーク時の最大メモリでリクエストするとかえって過剰確保になりがちです。

【参考】
Spot Pod でフォールト トレラントなワークロードを低コストで実行する | Google Kubernetes Engine (GKE)
Autopilot でのリソース リクエスト | Google Kubernetes Engine (GKE)
Autopilot クラスタの Balanced と Scale-Out の ComputeClass について | Google Kubernetes Engine (GKE)
← 練習問題 4練習問題 6 →
GCP-PCD の模擬問題集は全 200 問

本番形式の練習テスト 4 回を、試験モード/演習モードで受験できます。 全問に解説付き、ドメイン別の弱点分析にも対応。模試プラン(月額 ¥980)からご利用いただけます。

GCP-PCD の模試を受ける料金プランを見る

GCP-PCD の無料公開問題

問題 1問題 2問題 3問題 4問題 5問題 6問題 7問題 8問題 9問題 10問題 11問題 12問題 13問題 14問題 15