Professional Cloud DevOps Engineer

Question 82

あなたの組織は、あるプロジェクトで複数のGoogle Kubernetes Engine (GKE) クラスタを運用しています。すべてのクラスタにわたってドメイン固有のワークロードメトリクスとGKEのデフォルトメトリクスの両方を収集し、クエリするための高可用性ソリューションを設計する必要があります。その際、運用オーバーヘッドは最小限に抑えるものとします。どうすべきでしょうか?

A.
Prometheusオペレーターを使用して各クラスタにPrometheusをインストールし、メトリクスをスクレイプします。1つの中央Prometheusにリモートライトを設定します。中央のPrometheusインスタンスをクエリします。
B.
各GKEクラスタでマネージドコレクションを有効にします。BigQueryでメトリクスをクエリします。
C.
Prometheusオペレーターを使用して各クラスタにPrometheusをインストールし、メトリクスをスクレイプします。各PrometheusインスタンスでThanosサイドカーが有効になっていることを確認します。中央クラスタにThanosを設定します。中央のThanosインスタンスをクエリします。
D.
各GKEクラスタでマネージドコレクションを有効にします。Cloud Monitoringでメトリクスをクエリします。
Question 83

あなたの会社では、頻繁には使用されない大量のデータをクラウドストレージに保存しています。会社のCustomerServiceフォルダ内のプロジェクトはクラウドストレージに頻繁にアクセスしますが、保存するデータ量はごくわずかです。データ利用パターンを特定するために、会社全体でデータアクセス監査ログを有効化したいと考えています。CustomerServiceフォルダのプロジェクトはデータアクセス監査ログから除外する必要があります。どうすればよいですか?

A.
組織レベルでクラウドストレージのデータアクセス監査ログを有効化し、CustomerServiceフォルダのユーザーを含むように除外プリンシパルを設定する。
B.
組織レベルでクラウドストレージのデータアクセス監査ログを有効化し、追加の設定は行わない。
C.
CustomerServiceフォルダ以外のすべてのプロジェクトとフォルダに対して、クラウドストレージのデータアクセス監査ログを有効化する。
D.
すべてのプロジェクトとフォルダに対してクラウドストレージのデータアクセス監査ログを有効化し、CustomerServiceフォルダのユーザーを含むように除外プリンシパルを設定する。
Question 84

Cloud Runで本番稼働中のアプリケーションがあります。あなたのチームは最近、アプリケーションの新しいバージョン(リビジョンB)の開発を完了しました。最小限の労力で、クライアントの10%に対して新しいリビジョンをテストしたいと考えています。どうすべきでしょうか?

A.
新しいリビジョンを既存のサービスにトラフィックを割り当てずにデプロイします。リビジョンにタグを付け、そのURLをクライアントの10%と共有します。
B.
新しいサービスを作成し、その新しいサービスに新しいリビジョンをデプロイします。古いアプリケーションの新しいリビジョンをデプロイし、そのアプリケーションがトラフィックの一定割合を新しいサービスにルーティングするようにします。
C.
新しいサービスを作成し、その新しいサービスに新しいリビジョンをデプロイします。ロードバランサーを作成して、古いサービスと新しいサービスの間でトラフィックを分割します。
D.
新しいリビジョンを既存のサービスにトラフィックを割り当てずにデプロイします。古いリビジョンと新しいリビジョンの間でトラフィックを分割します。
Question 85

あなたは、顧客のために新しいマルチテナントGoogle Kubernetes Engine (GKE) クラスタを設計しています。顧客は、長期間有効な認証情報の使用に伴うリスクを懸念しています。顧客は、各GKEワークロードが最小権限の原則 (PoLP) に従って、最小限のIdentity and Access Management (IAM) 権限セットを持つことを要求しています。あなたは、Googleの推奨プラクティスに従いながら、IAM偽装ソリューションを設計する必要があります。どうすべきですか?

A.
1. Googleサービスアカウントを作成します。 2. ノードプールを作成し、そのGoogleサービスアカウントをデフォルトIDとして設定します。 3. ノードセレクタ、テイント、および容認を使用して、ワークロードが指定されたノードプールでのみ実行されるようにします。 4. ワークロードごとに繰り返します。
B.
1. Googleサービスアカウントを作成します。 2. テイントなしのノードプールを作成し、そのGoogleサービスアカウントをデフォルトIDとして設定します。 3. GoogleサービスアカウントにIAM権限を付与します。
C.
1. Googleサービスアカウントを作成します。 2. Workload Identityが有効なクラスタでKubernetesサービスアカウントを作成します。 3. `roles/iam.workloadIdentityUser` ロールと `iam.gke.io/gcp-service-account` アノテーションを使用して、GoogleサービスアカウントとKubernetesサービスアカウントをリンクします。 4. Kubernetesサービスアカウントをワークロードにマッピングします。 5. ワークロードごとに繰り返します。
D.
1. Googleサービスアカウントを作成します。 2. Googleサービスアカウントのサービスアカウントキーを作成します。 3. サービスアカウントキーを含むKubernetes Secretを作成します。 4. ワークロードがSecretをマウントし、`GOOGLE_APPLICATION_CREDENTIALS` 環境変数がマウントパスを指すように設定します。 5. ワークロードごとに繰り返します。
Question 86

Cloud BuildでCIパイプラインを設定しています。パイプラインをテストすると、提示されたcloudbuild.yaml定義(画像参照)では、fooステップとbarステップでそれぞれ5分かかります。 fooステップとbarステップは互いに独立しています。bazステップは、開始する前にfooステップとbarステップの両方が完了している必要があります。並列処理を使用してビルド時間を短縮したいと考えています。どうすればよいですか?

Question
A.
ビルドスクリプトを修正して以下を追加します: options: machineType: 'E2_HIGHCPU_8'
B.
ビルドスクリプトを修正して以下を追加します: options: machineType: 'E2_HIGHCPU_32'
C.
ビルドスクリプトを以下のように変更します:
D.
ビルドスクリプトを以下のように変更します: