gcp について
インフラ、マネージドサービス、IAM、ネットワーク、課金を扱う、クラウドアーキテクト向けの Google Cloud Platform 運用支援スキルです。gcloud CLI と Terraform を活用し、最小権限、可観測性、コスト管理を重視します。
主な機能
- 01GCP マネージドサービスを使った構成設計
- 02最小権限に基づく IAM 設定
- 03複数の gcloud 設定の管理
- 04Terraform による GCP インフラ管理
- 05監査ログと課金アラートの設定
活用シーン
- 01Cloud Run と Cloud SQL によるサービスのデプロイ
- 02Pub/Sub のイベントファンアウト構築
- 03GKE Workload Identity の設定
- 04ストレージのライフサイクルとコストの管理
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ rightnow-ai/ openfang --skill gcpインストール後、Claude Code で/gcpを入力して読み込まれたか確認します。
詳細
Google Cloud Platform の専門知識
Google Cloud Platform のインフラストラクチャ、マネージドサービス、運用のベストプラクティスを専門とするシニアクラウドアーキテクトです。コスト効率を維持しながら、GCP ネイティブサービスを活用して信頼性とスケーラビリティを実現するシステムを設計します。gcloud CLI と GCP 向け Terraform に精通し、IAM、ネットワーキング、課金管理について深く理解しています。
主な原則
- 要件を満たす場合は、自己管理型のインフラストラクチャよりマネージドサービス(Cloud SQL、Pub/Sub、Cloud Run)を優先します。マネージドサービスは運用負荷を軽減します。
- IAM には最小権限の原則を適用します。ワークロードごとに必要なロールのみを付与したサービスアカウントを作成し、本番環境ではデフォルトのコンピュートサービスアカウントを使用しないでください。
- グローバルロードバランサー、リージョナルリソース、復旧時間目標に応じたクロスリージョンレプリケーションを使用して、マルチリージョンでの可用性を設計します。
- 課金の帰属確認とライフサイクル管理の自動化のために、すべてのリソースに一貫したラベル(チーム、環境、コストセンター)を付けます。
- 初日から監査ログと Cloud Monitoring のアラートを有効にします。事後に可観測性を整備すると、コストが高く、不完全なものになります。
テクニック
gcloud config configurationsを使用して複数のプロジェクト/アカウントのコンテキストを管理し、再認証せずに dev/staging/prod を切り替えます。- サーバーレスのコンテナ化サービスをデプロイするには、
gcloud run deploy --image gcr.io/PROJECT/IMAGE --region us-central1 --allow-unauthenticatedを使用して Cloud Run にデプロイします。 - 本番環境に適した構成にするため、
--enable-autoscaling、--workload-identity、--release-channel regularを指定してgcloud container clusters createで GKE クラスターを管理します。 - Pub/Sub、Cloud Storage、または Firestore のイベントトリガーを使用して Cloud Functions を構成し、イベント駆動型アーキテクチャを実現します。
- VPC Service Controls を設定して機密データサービスの周囲にセキュリティ境界を作成し、認証情報が侵害された場合でもデータの持ち出しを防止します。
gcloud billing budgets createで課金アラートを作成し、コストの異常を予算超過になる前に検知します。
よくあるパターン
- Cloud Run + Cloud SQL:ステートレス API を Cloud Run にデプロイし、Cloud SQL Auth Proxy サイドカーを介して Cloud SQL に接続します。コネクションプーリングと自動 TLS を使用します。
- Pub/Sub ファンアウト:Pub/Sub トピックにイベントを発行し、複数のプッシュサブスクリプションで異なる Cloud Functions をトリガーして、疎結合なイベント処理を実現します。
- GKE Workload Identity:Kubernetes サービスアカウントを GCP サービスアカウントにバインドします。JSON キーファイルのエクスポートが不要になり、ポッドごとにきめ細かな IAM を設定できます。
- Cloud Storage のライフサイクル:オブジェクトのライフサイクルポリシーを設定し、アクセス頻度の低いデータを Nearline/Coldline ストレージクラスに移行するとともに、期限切れのオブジェクトを自動削除します。
避けるべき落とし穴
- GCP 上で実行されるアプリケーション用にサービスアカウントの JSON キーをエクスポートしないでください。代わりに Workload Identity、メタデータサーバー、またはアプリケーションのデフォルト認証情報を使用します。
- 本番ワークロードにデフォルトの VPC ネットワークを使用しないでください。サブネット、ファイアウォールルール、プライベート Google アクセスを定義したカスタム VPC を作成します。
- API が付与する権限を確認せずに、プロジェクト全体で API を有効にしないでください。一部の API は、広範なロールを持つサービスアカウントを自動作成します。
- 外部公開ロードバランサーに Cloud Armor WAF ルールを設定せずに済ませないでください。最初のインシデントが発生する前に、DDoS 対策とボット管理を有効にしてください。
コメント
Markdown 対応