mcpField
A
alibabacloud-flink-instance-manage

alibabacloud-flink-instance-manage

github.com/aliyunクラウド・DevOps281234 回インストール1 日前に更新
リポジトリ

alibabacloud-flink-instance-manage について

Alibaba Cloud Flink VVPのインスタンスとネームスペースを管理するエージェントスキルで、ライフサイクルの照会や作成を行うユーザー向けです。単一のPythonラッパースクリプトで操作し、対象を限定したうえで作成後に読み戻し検証を求めます。

主な機能

  1. 01Flinkインスタンスと状態の照会
  2. 02Flinkインスタンスの作成
  3. 03ネームスペースの照会と作成
  4. 04リージョン、ゾーン、タグの照会
  5. 05作成時の確認と検証

活用シーン

  1. 01リージョン内のFlinkインスタンス一覧の確認
  2. 02インスタンスを作成して状態を検証
  3. 03インスタンス配下のネームスペースの確認
  4. 04インスタンスタグや利用可能ゾーンの照会

インストール

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

$npx skills add https://github.com/aliyun/alibabacloud-aiops-skills --skill alibabacloud-flink-instance-manage

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/
requirements.txt
references/
acceptance-criteria.md
cli-installation-guide.md
command-templates.md
common-failures.md
core-execution-flow.md
e2e-playbooks.md
evaluation-deliverables.md
instance-state-management.md
output-handling.md
parameter-validation.md
python-environment-setup.md
quick-start.md
ram-policies.md
README.md
related-apis.md
required-confirmation-model.md
trigger-recognition-guide.md
verification-method.md
scripts/
instance_ops.py
prepare_trigger_batch.py

詳細

Alibaba Cloud Flink インスタンス管理

1 つのラッパースクリプトを通じて、作成と照会に厳密に限定した範囲で Alibaba Cloud Flink リソースを操作します。

対象範囲とエントリーポイント

  • 操作は必ず次のコマンドを通じて実行してください。
    python scripts/instance_ops.py <command> [options]
    
  • 許可されているコマンド:create、create_namespace、describe、describe_regions、describe_zones、describe_namespaces、list_tags
  • 対象範囲外:更新/削除、Flink SQL/ジョブの実行時操作、Flink 以外のサービス

起動ルール

プロンプトが Flink インスタンス/名前空間のライフサイクル操作に関するものである場合、このスキルを使用します。

  • 対象となる意図の例:
    • 「cn-beijing に Flink インスタンスを作成して」
    • 「Flink インスタンスとステータスの一覧を表示して」
    • 「インスタンス f-cn-xxx の名前空間を説明して」
    • 「Flink インスタンスのタグを照会」
    • 「Flink のアベイラビリティーゾーンはどこですか」
  • 対象外となる意図の例:
    • ECS/Kafka/OSS/DataWorks の操作
    • 一般的な質問(天気、翻訳など)
    • Flink SQL/Flink ジョブの作成や実行時のチューニング
  • 意図が曖昧なプロンプト:
    • インスタンス/名前空間の管理か、SQL/ジョブの操作かを確認する質問を 1 つだけ行います。

意図とコマンドの対応付け

ユーザーの意図コマンド
リージョン内のすべてのインスタンスを照会するdescribe --region_id <REGION>
インスタンスを作成するcreate ... --confirm
インスタンス内の名前空間を照会するdescribe_namespaces --region_id <REGION> --instance_id <ID>
名前空間を作成するcreate_namespace ... --confirm
利用可能なリージョン/ゾーンを照会するdescribe_regions / describe_zones --region_id <REGION>
タグを照会するlist_tags --region_id <REGION> --resource_type <TYPE> [--resource_ids ...]

運用ルール

  1. 作成コマンドでは確認が必須です
    • create と create_namespace には --confirm を必ず含めてください。
  2. 作成結果を再照会して検証します
    • 作成レスポンスだけを根拠に成功と判断しないでください。
  3. 再試行ポリシーは厳格です
    • 同じコマンドの試行は最大 2 回(初回と、修正後の再試行 1 回)です。
  4. 操作を自動で切り替えません
    • 操作が失敗した場合、ユーザーの承認なしに別の操作へ切り替えないでください。
  5. ライフサイクル対象を固定します
    • create -> create_namespace のフローでは、ユーザーが代替対象を承認しない限り、名前空間の作成先は新たに作成した同じ InstanceId でなければなりません。
  6. 名前空間の事前確認が必須です
    • create_namespace の前に、インスタンスのステータス/リソースと、既存の名前空間の割り当てを確認してください。
  7. シークレットを公開しません
    • 平文の AK/SK を出力したり、要求したりしないでください。デフォルトの認証情報チェーンの利用を案内してください。
  8. パラメーターを捏造しません
    • VPC/VSwitch/インスタンス ID を決して作り上げないでください。
  9. 監査可能な確認証跡を残します
    • ライフサイクル操作の出力には、SafetyCheckRequired または明示的な --confirm の証跡を含めてください。
  10. ライフサイクルフローの一部完了を主張しません
  • create と create_namespace の両方が必要なフローでは、両方の作成操作が成功した場合にのみ、全体のステータスを completed にできます。
  1. 容量を自動で拡張しません
  • リソース不足で create_namespace が失敗した場合、その旨を明確に報告し、このスキルの対象範囲外であるリソースの手動スケーリングをユーザーに依頼してください。

実行プロトコル

ステップ 1:リクエストを分類する
  • Flink インスタンス/名前空間/タグ/リージョン/ゾーンの作成または照会で、対象範囲内の場合は続行します。
  • 対象範囲外または Flink 以外の場合は、説明を添えて拒否するか、適切な窓口へ案内します。
ステップ 2:パラメーターを検証する
  • references/parameter-validation.md を適用します。
  • 必須パラメーターが不足している場合は、ユーザーに質問するか、必要な対応を明確に示します。
ステップ 3:コマンドを実行する
  • 照会コマンド:一時的な照会エラーが発生しない限り、1 回実行します。
  • 作成コマンド:最終的なコマンド文字列を組み立て、実行前に --confirm が含まれていることを確認します。
ステップ 4:作成結果を確認する
  • create の場合:describe --region_id <REGION> で確認します。
  • create_namespace の場合:describe_namespaces --region_id <REGION> --instance_id <ID> で確認します。
  • 作成がまだ反映されていないと判断する前に、短いバックオフを挟んで読み取り確認を最大 3 回行います。
  • create -> create_namespace の連続処理の場合:
    • 同じ InstanceId に対して、30 秒ごとに describe --region_id <REGION> をポーリングします
    • 待機時間の上限:10 分
    • それでも RUNNING にならない場合は停止し、次のアクション(待機/後で再試行)を提示します
    • ユーザーの明示的な承認なしに、別のインスタンスに切り替えないでください
    • 名前空間の作成に失敗した場合、ライフサイクルチェーンは completed ではなく、failed/not_ready とします
    • InsufficientResources の場合は、ユーザーにインスタンスを手動でスケールし、後で再試行するよう依頼します

主な参照資料

  • まずはこちらをご覧ください:
    • references/README.md
    • references/quick-start.md
    • references/trigger-recognition-guide.md
    • references/core-execution-flow.md
    • references/command-templates.md
ドキュメント目的
references/parameter-validation.md実行前の検証チェックリスト
references/e2e-playbooks.md実行シーケンス全体
references/common-failures.mdよくある間違いと修正方法
references/required-confirmation-model.md確認ゲートのルール
references/instance-state-management.mdインスタンスの状態と準備状況の確認
references/output-handling.md出力の解析と再試行ポリシー
references/verification-method.md作成/クエリ後の確認パターン
references/acceptance-criteria.md通常操作の完了チェックリスト
references/python-environment-setup.mdPython の依存関係と認証の設定
references/cli-installation-guide.mdAliyun CLI の診断設定
references/ram-policies.md必要な RAM 権限
references/related-apis.mdAPI とコマンドの対応付け

出力形式

すべてのコマンドは JSON を返します:

{
  "success": true,
  "operation": "<command>",
  "confirmation_check": {
    "required_flag": "--confirm",
    "provided": true,
    "status": "passed"
  },
  "data": {},
  "request_id": "..."
}

confirmation_check は作成操作で表示され、監査可能な安全性の証拠として使用されます。

終了コード:0 = 成功、1 = エラー。

コメント