gke-cluster-creator について
gke-cluster-creatorは、ベストプラクティスのテンプレートとカスタマイズ手順でGKEクラスター作成を案内します。クラスター種別や設定を選ぶチーム向けで、Standard、Autopilot、GPU構成のテンプレートを用意し、MCPツールで作成します。
主な機能
- 01クラスター設定テンプレートの選択
- 02必須パラメーターの収集と検証
- 03必要に応じたクラスター設定の変更
- 04ツールによるGKEクラスター作成
活用シーン
- 01開発・テスト用のゾーンクラスター作成
- 02高可用性の本番クラスター設定
- 03AI推論向けGPUクラスターの選択
MCP 対応
create_cluster MCPツールを呼び出してGKEクラスターを作成し、最終設定をツールのパラメータースキーマに照らして検証します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ googlecloudplatform/ gke-mcp --skill gke-cluster-creatorインストール後、Claude Code で/gke-cluster-creatorを入力して読み込まれたか確認します。
詳細
GKE クラスター作成スキル
このスキルは、ベストプラクティスに基づくテンプレートを提供し、カスタマイズの手順を案内することで、ユーザーによる Google Kubernetes Engine (GKE) クラスターの作成を支援します。
core_behavior
- テンプレートの選択:
- ユーザーがテンプレートを指定していない場合は、利用可能なテンプレートを提示します。
- トレードオフ(例:コストと可用性、Autopilot と Standard)を説明します。
- カスタマイズ:
- テンプレートが選択されたら、デフォルト設定(JSON/YAML)を提示します。
- 必須の不足情報
project_id、location、cluster_nameをユーザーに尋ねます。 - オプションのフィールド(例:
machineType、nodeCount、network)を変更するかどうかを尋ねます。
- 検証:
project_id、location、cluster_nameが設定されていることを確認します。- 設定が
create_clusterMCP ツールのスキーマに適合していることを確認します。
- 実行:
- 最終設定を指定して
create_clusterMCP ツールを呼び出します。
- 最終設定を指定して
best_practices
ユーザーを案内したり設定を生成したりする際は、以下の GKE クラスター作成のベストプラクティスに従ってください。
セキュリティ
- プライベートクラスター:攻撃対象領域を最小限に抑えるため、プライベートコントロールプレーンと制限されたパブリックエンドポイントを備えたプライベートクラスターをデフォルトにします。
- VPC ネイティブネットワーキング:エイリアス IP 範囲を有効にし、Pod レベルのファイアウォールルールとネットワークセキュリティの強化を可能にする VPC ネイティブクラスターを使用します。
- Workload Identity:静的なサービスアカウントキーを使用するのではなく、GKE ワークロードに Google Cloud サービスへのアクセス権を安全に付与するために Workload Identity を優先します。
- Shielded GKE Nodes:ルートキットやブートキットから保護するため、Shielded GKE Nodes を有効にします。
- 最小権限(RBAC):ユーザーとワークロードに最小限の権限を付与するよう、厳格なロールベースのアクセス制御を導入します。
コスト最適化
- 自動スケーリング:需要に応じてリソースを調整するため、Cluster Autoscaler と Horizontal Pod Autoscaler を有効にします。
- 適正なサイズ設定:適切なマシンタイプとノード数を選択します。障害に強い非クリティカルなワークロードでは、Spot VM の使用を検討します。
高可用性と信頼性
- リージョンクラスター:本番環境では、複数のゾーンにコントロールプレーンを複製して可用性を確保するため、リージョンクラスターを使用します。(注:標準のリージョンクラスターでは、デフォルトで 3 つのゾーンにノードが作成されます。)
- Pod Disruption Budgets:ノードのメンテナンス中にアプリケーションの安定性を保つため、Pod Disruption Budgets の設定を推奨します。
- リリースチャンネル:クラスターを自動で安全にアップグレードするため、リリースチャンネル(例:Regular または Stable)に登録します。
templates
1. Standard Zonal(コスト効率の高い開発/テスト)
最適な用途:開発、テスト、クリティカルでないワークロード。
{
"name": "projects/{PROJECT_ID}/locations/{ZONE}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "e2-medium",
"diskSizeGb": 50,
"oauthScopes": [
"https://www.googleapis.com/auth/devstorage.read_only",
"https://www.googleapis.com/auth/logging.write",
"https://www.googleapis.com/auth/monitoring",
"https://www.googleapis.com/auth/service.management.readonly",
"https://www.googleapis.com/auth/servicecontrol",
"https://www.googleapis.com/auth/trace.append"
]
}
}
2. Standard Regional(高可用性)
最適な用途:高可用性が求められる本番ワークロード。 注:デフォルトで 3 つのノードが作成されます(リージョン内の各ゾーンに 1 つ)。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "e2-standard-4",
"diskSizeGb": 100,
"oauthScopes": ["https://www.googleapis.com/auth/cloud-platform"]
}
}
3. Autopilot(運用不要)
最適な用途:ノードを管理したくない場合の、ほとんどのワークロード。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"autopilot": {
"enabled": true
}
}
4. GPU 推論(L4)
最適な用途:AI/ML 推論、小規模モデルのサービング。
注:g2-standard-4 のクォータが必要です。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "g2-standard-4",
"accelerators": [
{
"acceleratorCount": "1",
"acceleratorType": "nvidia-l4"
}
],
"diskSizeGb": 100,
"oauthScopes": ["https://www.googleapis.com/auth/cloud-platform"]
}
}
5. AI Hypercompute(A3 HighGPU)
最適な用途:大規模モデルのトレーニング/推論。 注:コストが高く、厳しいクォータ要件があります。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "a3-highgpu-8g",
"accelerators": [
{
"acceleratorCount": "8",
"acceleratorType": "nvidia-h100-80gb-hbm3"
}
],
"diskSizeGb": 200,
"oauthScopes": ["https://www.googleapis.com/auth/cloud-platform"]
}
}
instructions
- 必ず、コンテキストに
project_idがない場合はユーザーに確認してください。 - 必ず、
location(リージョンまたはゾーン)を確認してください。 - 必ず、一意の
cluster_nameを確認してください。 - ユーザーが
Access to Google Cloud APIsを必要としているか確認してください(最新の GKE では、デフォルトのcloud-platformスコープが通常最適です)。 - GPU クラスターまたはリージョンクラスターを選択した場合は、費用についてユーザーに警告してください。
- クラスターの作成には
create_clusterMCP ツールを使用してください。parent引数はprojects/{PROJECT_ID}/locations/{LOCATION}、cluster引数は JSON オブジェクトです。cluster.nameは短い名前のみです(例:「my-cluster」)。 - 重要:
create_clusterを呼び出す際、parent引数でスコープが定義されるため、cluster.nameにはリソースパス全体ではなく、短い名前(例:my-cluster)を指定してください。
example_usage
ユーザー:「GKE クラスターを作成したいです。」 モデル:「お手伝いします。どの種類のクラスターが必要ですか?
- 標準ゾーンクラスター:開発/テストに適しています。
- 標準リージョンクラスター:高可用性を実現します。
- Autopilot:完全マネージドです。
- GPU 対応:AI/ML ワークロード向けです。」
ユーザー:「標準ゾーンクラスターをお願いします。」 モデル:「承知しました。いくつか詳細をお知らせください。
- プロジェクト ID
- ゾーン(例:us-central1-a)
- クラスター名」
ユーザー:「プロジェクトは my-proj、ゾーンは us-west1-b、名前は dev-cluster です。」
モデル:「使用する構成は次のとおりです。
[JSON view]
続行しますか?」