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

GCP-PCD 練習問題 2|クラウドネイティブ アプリケーションのデプロイ構成

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

問題
あなたは、Cloud Run にデプロイする必要がある新しい Python 3 の API を開発しています。Cloud Run サービスは Apigee プロキシの背後に配置されます。Cloud Run サービスが、すでにデプロイ済みの Apigee プロキシと連携して動作することを確認する必要があります。このテストをできるだけ迅速に行いたいと考えています。どうすればよいですか?

選択肢と解説

  • 1
    サービスのコードを zip ファイルとして Cloud Storage バケットに保存する。gcloud run deploy --source コマンドを使用してアプリケーションをデプロイし、Apigee が Cloud Run を指すようにして統合をテストする。
  • 2
    Cloud Run エミュレータを使用してアプリケーションをローカルでテストする。Apigee がローカルの Cloud Run エミュレータを指すようにして統合をテストする。
  • 3
    コンテナ イメージをローカルでビルドし、そのイメージを Artifact Registry に push する。イメージを Cloud Run にデプロイし、Apigee が Cloud Run を指すようにして統合をテストする。
  • ✓
    gcloud run deploy --source コマンドを使用して、現在のディレクトリからアプリケーションを直接デプロイし、Apigee が Cloud Run を指すようにして統合をテストする。

解説

【正解】D

【0からの解説】
①前提知識
・Cloud Run の「ソースからのデプロイ」:gcloud run deploy --source . を実行すると、ローカル ディレクトリのソースコードがアップロードされ、Cloud Build が(Dockerfile があればそれを、なければ Google Cloud のビルドパックを使って)コンテナ イメージを自動でビルドし、Artifact Registry に保存したうえで Cloud Run にデプロイします。Python などの対応言語なら Dockerfile を書く必要すらなく、1 コマンドでデプロイが完了します。
・Apigee は Google Cloud のフルマネージドな API 管理プラットフォームで、API プロキシがクライアントからのリクエストを受け、認証・レート制限などを適用してからバックエンド(ここでは Cloud Run)へ転送します。Apigee のランタイムはクラウド上で動作しています。

②要件と制約の整理
・すでにデプロイ済みの Apigee プロキシと、新しい Cloud Run サービスの連携を確認したい。
・「できるだけ迅速に」テストしたい。

③正解がどう満たすか
カレント ディレクトリで gcloud run deploy --source . を実行するだけで、コンテナのビルド・保存・デプロイがまとめて行われ、すぐに Cloud Run サービスの URL が得られます。Apigee プロキシのターゲットをその URL に向ければ、実際のクラウド環境で Apigee 経由の統合をそのままテストできます。手作業のステップが最も少なく、最速でテストに入れる方法です。

【誤りの選択肢】
A:gcloud run deploy --source はローカルのソース ディレクトリ(またはソースファイル)を指定して使うもので、事前にコードを zip にして Cloud Storage バケットへ置くという手順は不要です。余計な作業が増えるだけで、「できるだけ迅速に」に反します。
B:Apigee のランタイムはクラウド上で動いているため、開発者のマシン上で動くローカルのエミュレータには通常到達できません(公開されたエンドポイントではないため)。また、gcloud には Pub/Sub や Firestore などのエミュレータはありますが、Apigee と連携させる「Cloud Run エミュレータ」でクラウドの統合テストを行うことは想定されておらず、実際の Cloud Run 上での連携確認にもなりません。
C:ローカルでのイメージのビルド、Artifact Registry への push、デプロイと手動のステップが多く、ローカルに Docker 環境も必要です。最終的な結果は D と同じですが、ソースからのデプロイ 1 コマンドで済む D に比べて時間がかかります。

【参考】
ソースコードからサービスをデプロイする | Cloud Run
← 練習問題 1練習問題 3 →
GCP-PCD の模擬問題集は全 200 問

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

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

GCP-PCD の無料公開問題

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