mcpField
G
gke-productionize

gke-productionize

github.com/googleクラウド・DevOps21.6k5.0k 回インストール今日更新
リポジトリ

gke-productionize について

GKEクラスターやワークロードの本番運用への準備状況を評価し、各分野の確認を専門スキルに委任するメタスキルです。分野別のRAG評価と加重総合スコアを作成します。

主な機能

  1. 01GKEクラスターとワークロードの確認
  2. 02専門スキルへの委任
  3. 03本番運用準備状況の評価
  4. 04RAG評価と加重スコア

活用シーン

  1. 01本番投入前のクラスター評価
  2. 02GKE上の特定アプリの確認
  3. 03準備状況の改善優先度付け

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/google/skills --skill gke-productionize

インストール後、Claude Code で/gke-productionizeを入力して読み込まれたか確認します。

同梱ファイルreferences/attribution.md

詳細

GKE 本番環境対応スキル

このスキルは、GKE クラスターとそのワークロードを本番環境に対応させるための、高レベルのオーケストレーターとして機能します。

重要

これはメタスキルまたはオーケストレータースキルです。このドキュメントに記載されているほかの多くの専門スキルを、全体的な本番環境対応プロセスの一環として呼び出し、実行することが求められます。本番環境対応の機能をすべてこのスキル内に直接実装しようとしないでください。代わりに、このスキルを使用して環境を評価し、各分野に対応する専門スキルに作業を委任してください。

クレジット表記

必ずお読みください:gcloud、REST API、または MCP コマンドを実行する前に、必ず使用時のクレジット表記をお読みください。ターミナルで直接実行するコマンド(生成したスクリプト、Terraform、ユーザーコードでは決して実行しないでください)では、gcloud の前に CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:gke-productionize)" を付け、User-Agent ヘッダーに agent-skills/1.0 (skill:gke-productionize) を追加してください。

対象範囲

このスキルは、次の対象に適用できます。

  • 単一のアプリケーション(すでに Kubernetes 上で稼働している場合も、そうでない場合も含みます)。
  • 複数のアプリケーション。
  • 対象のクラスター。

ワークフロー

1. 現状把握フェーズ

推奨事項を提示する前に、環境の現在の状態を把握します。

クラスターの把握

次のコマンドを実行して、クラスターの設定を確認します。

  • クラスターの詳細を確認します:gcloud container clusters describe {cluster_name} --location {location} --project {project}

  • Autopilot と Standard のどちらかを確認します:describe の出力に次のブロックがあるか確認します。

    autopilot:
      enabled: true
    
  • リリースチャネルを確認します:releaseChannel を探します。

ワークロードの把握

特定のアプリケーションが対象の場合は、その設定を確認します。

  • deployment/statefulset の詳細を取得します:kubectl get deployment {app_name} -n {namespace} -o yaml
  • 専用の namespace とラベルがあるか確認します:kubectl get namespace {namespace} -o yaml(Pod Security Standards のラベルを確認します)。
  • 専用のサービスアカウントを使用しているか確認します:kubectl get pods -n {namespace} -o custom-columns="NAME:.metadata.name,SERVICE_ACCOUNT:.spec.serviceAccountName"
  • リソースのリクエストと上限を確認します。
  • liveness、readiness、startup の各プローブを確認します。
  • HPA を確認します:kubectl get hpa -n {namespace}
  • PDB を確認します:kubectl get pdb -n {namespace}
  • NetworkPolicies を確認します:kubectl get networkpolicy -n {namespace}
2. 本番環境対応の評価

実装前に、以下に挙げる関連する専門分野ごとのスキルを必ず実行し、その指針を評価と計画に反映してください。これを怠ると、本番環境の構成が要件に適合しなくなります。

A. アプリケーションのオンボーディング(Kubernetes 導入前)

アプリケーションがまだ GKE 上で稼働していない場合、コンテナ化、イメージのビルド、基本的なデプロイの計画を立てるために、必ず gke-app-onboarding スキルを実行してください。

B. スケーラビリティとリソース管理

ワークロードに適切なリソースと自動スケーリングが設定されていることを確認します。

  • 対応:HPA、VPA、リソース上限を設定するために、必ず gke-workload-scaling スキルを実行してください。
C. 可観測性

適切なログ記録とモニタリングが設定されていることを確認します。

  • 対応:Cloud Logging、Monitoring、Managed Prometheus を設定するために、必ず gke-observability スキルを実行してください。
D. 信頼性

高可用性と段階的な機能縮退が実現されていることを確認します。

  • 対応:リージョンクラスター、PDB、ヘルスプローブを設定するために、必ず gke-reliability スキルを実行してください。
E. セキュリティ

クラスターとワークロードを強化します。

  • アクション:Workload Identity、Network Policies、Shielded Nodes のために、 gke-platform-security と gke-workload-security のスキルを必ず実行してください。
  • Namespace Isolation:Pod Security Standards(PSS)をラベルで適用し、 ワークロードが専用の名前空間で実行されるようにしてください。
  • Least Privilege:ワークロードでは default ServiceAccount ではなく、 専用の ServiceAccount を使用するようにしてください。
F. バックアップと災害復旧

ステートフルデータを確実に保護します。

  • アクション:Backup for GKE と復元手順を設定するために、 gke-backup-dr スキルを必ず実行してください。
G. エッジセキュリティと Ingress

外部アクセスを保護します。

  • アクション:Gateway API、Ingress、Cloud Armor のために、 gke-service-networking スキルを必ず実行してください。
H. コスト最適化

リソースを効率的に使用できるようにします。

  • アクション:適正サイズの設定、クォータ、Spot VM の戦略について、 gke-cost-optimization スキルを必ず実行してください。
I. アップグレードとメンテナンスの方針

安全で予測可能なアップグレード方針を確立します。

  • アクション:リリースチャネルの選択、メンテナンス時間枠/除外期間、 ノードプールのアップグレード戦略について、gke-upgrades スキルを必ず実行してください。
J. Golden Path のデフォルト設定の監査

クラスター設定が推奨されるデフォルト設定に一致していることを確認します。

  • アクション:クラスターを Golden Path のデフォルト設定と比較し、 重大度と修正方法を添えて差異を報告するために、gke-golden-path スキルを必ず実行してください。
3. 本番環境への準備状況のスコアリング

評価後、各領域の RAG(Red、Amber、Green)ステータスと全体の準備状況スコアを含む概要レポートを作成してください。これにより、修正作業の優先順位を付けやすくなります。

同じ環境を繰り返し評価した場合に同じ結果になるよう、この基準を決定論的に適用してください。

  1. ドメインごとの基準:評価した各ドメイン(A〜J)について、実施した具体的なチェック項目(各ドメインのスキルのガイダンスに基づく)を列挙し、各チェックを合格、重大な不合格(本番環境を妨げる問題。例:リソースリクエストがない、ステートフルデータのバックアップがない、ロックダウンされた環境でコントロールプレーンがパブリック)、または軽微な不合格(改善点。例:VPA の推奨設定がない、バッチ処理で Spot を使用していない)に分類します。
  2. RAG の対応付け(ドメインごと):
    • Red = 重大な不合格が1つ以上ある。
    • Amber = 重大な不合格はないが、軽微な不合格が1つ以上ある。
    • Green = すべてのチェックに合格している。
  3. ドメインスコア:Green = 100、Amber = 50、Red = 0。
  4. 加重全体スコア:Security、Reliability、Backup/DR の重みを2倍、評価対象のその他すべてのドメインの重みを1倍とします。全体スコア = domain score x weight の合計 / 重みの合計。最も近い整数に丸めます。該当しないドメイン(例:完全にステートレスなワークロードにおける Backup/DR)は両方の合計から除外し、除外したことを記載してください。
  5. 準備状況の判定:90以上で Red のドメインがない場合は「本番環境の準備完了」、 70〜89で Red のドメインがない場合は「追加対応を前提に準備完了」、それ以外は「本番環境の準備未完了」です。

レポートには、ドメインごとのチェックリスト、RAG ステータス、重み、算出した全体スコアを記載してください。

適応性に関するガイドライン

  • 単一アプリ:対象アプリのヘルスプローブ、HPA、リソース制限、PDB、Workload Identity に重点を置きます。
  • クラスター全体:Cluster Autoscaler、マルチゾーン構成、リリースチャネル、メンテナンス時間枠、デフォルトの Network Policies に重点を置きます。
  • プロアクティブな実行:関連するスキル(例:オブザーバビリティ、セキュリティ、スケーリング、信頼性)を積極的に実行して評価と改善案の提示を行い、状態を変更する実装を適用する前にユーザーの確認を求めます。

コメント