alibabacloud-flink-instance-manage について
Alibaba Cloud Flink VVPのインスタンスとネームスペースを管理するエージェントスキルで、ライフサイクルの照会や作成を行うユーザー向けです。単一のPythonラッパースクリプトで操作し、対象を限定したうえで作成後に読み戻し検証を求めます。
主な機能
- 01Flinkインスタンスと状態の照会
- 02Flinkインスタンスの作成
- 03ネームスペースの照会と作成
- 04リージョン、ゾーン、タグの照会
- 05作成時の確認と検証
活用シーン
- 01リージョン内のFlinkインスタンス一覧の確認
- 02インスタンスを作成して状態を検証
- 03インスタンス配下のネームスペースの確認
- 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.txtreferences/acceptance-criteria.mdcli-installation-guide.mdcommand-templates.mdcommon-failures.mdcore-execution-flow.mde2e-playbooks.mdevaluation-deliverables.mdinstance-state-management.mdoutput-handling.mdparameter-validation.mdpython-environment-setup.mdquick-start.mdram-policies.mdREADME.mdrelated-apis.mdrequired-confirmation-model.mdtrigger-recognition-guide.mdverification-method.mdscripts/instance_ops.pyprepare_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 ...] |
運用ルール
- 作成コマンドでは確認が必須です
createとcreate_namespaceには--confirmを必ず含めてください。
- 作成結果を再照会して検証します
- 作成レスポンスだけを根拠に成功と判断しないでください。
- 再試行ポリシーは厳格です
- 同じコマンドの試行は最大 2 回(初回と、修正後の再試行 1 回)です。
- 操作を自動で切り替えません
- 操作が失敗した場合、ユーザーの承認なしに別の操作へ切り替えないでください。
- ライフサイクル対象を固定します
create -> create_namespaceのフローでは、ユーザーが代替対象を承認しない限り、名前空間の作成先は新たに作成した同じInstanceIdでなければなりません。
- 名前空間の事前確認が必須です
create_namespaceの前に、インスタンスのステータス/リソースと、既存の名前空間の割り当てを確認してください。
- シークレットを公開しません
- 平文の AK/SK を出力したり、要求したりしないでください。デフォルトの認証情報チェーンの利用を案内してください。
- パラメーターを捏造しません
- VPC/VSwitch/インスタンス ID を決して作り上げないでください。
- 監査可能な確認証跡を残します
- ライフサイクル操作の出力には、
SafetyCheckRequiredまたは明示的な--confirmの証跡を含めてください。
- ライフサイクル操作の出力には、
- ライフサイクルフローの一部完了を主張しません
createとcreate_namespaceの両方が必要なフローでは、両方の作成操作が成功した場合にのみ、全体のステータスをcompletedにできます。
- 容量を自動で拡張しません
- リソース不足で
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.mdreferences/quick-start.mdreferences/trigger-recognition-guide.mdreferences/core-execution-flow.mdreferences/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.md | Python の依存関係と認証の設定 |
references/cli-installation-guide.md | Aliyun CLI の診断設定 |
references/ram-policies.md | 必要な RAM 権限 |
references/related-apis.md | API とコマンドの対応付け |
出力形式
すべてのコマンドは JSON を返します:
{
"success": true,
"operation": "<command>",
"confirmation_check": {
"required_flag": "--confirm",
"provided": true,
"status": "passed"
},
"data": {},
"request_id": "..."
}
confirmation_check は作成操作で表示され、監査可能な安全性の証拠として使用されます。
終了コード:0 = 成功、1 = エラー。
コメント
Markdown 対応