huawei-cloud-ecs-query について
Huawei Cloud ECS の情報を照会するスキルです。スクリプトまたは hcloud CLI でクラウドサーバーを確認したいユーザー向けで、複数リージョン、AK/SK または Token 認証、表形式または JSON 形式の出力に対応します。
主な機能
- 01インスタンス一覧、詳細、状態の照会
- 02リージョン指定とインスタンスの絞り込み
- 03AK/SK と Token 認証への対応
- 04表形式または JSON での出力
- 05スクリプトまたは hcloud CLI の利用
活用シーン
- 01指定リージョンの ECS インスタンスの棚卸し
- 02個別サーバーの構成と状態の確認
- 03名前や状態によるインスタンスの絞り込み
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ huaweicloud/ huaweicloud-skills --skill huawei-cloud-ecs-queryインストール後、Claude Code で/huawei-cloud-ecs-queryを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
config.example.yamlevolutions.jsonreferences/acceptance-criteria.mdapi-reference.mdcli-installation-guide.mdiam-policies.mdtroubleshooting.mdverification-method.mdscripts/__init__.pyauth.pyecs_query.pyformatter.py詳細
Huawei Cloud ECS クエリスキル
概要
このスキルでは、Huawei Cloud のエラスティッククラウドサーバー(ECS)に関する情報を照会できます。対象は次のとおりです。
- インスタンス一覧の照会:すべての ECS インスタンスの基本情報を一覧表示します
- インスタンス詳細の照会:単一の ECS インスタンスの詳細な設定情報を取得します
- インスタンス状態の照会:ECS インスタンスの実行状態を確認します
2 種類の認証方式(AK/SK 署名認証と Token 認証)、2 種類の出力形式(表形式と JSON)、および複数リージョンでの照会に対応しています。
前提条件
1. Python の依存関係をインストールする
pip install requests pyyaml
2. 認証情報を取得する
方法 1:AK/SK 認証(推奨)
- Huawei Cloud コンソールにログイン → 右上のユーザー名 →「マイ認証情報」→「アクセスキー」→ アクセスキーを新規作成
- AK(Access Key ID)と SK(Secret Access Key)を保存します
- Project ID(プロジェクト ID)も必要です。「マイ認証情報」ページで確認できます
方法 2:Token 認証
- Huawei Cloud アカウントのユーザー名とパスワードが必要です
- アカウントの Domain ID(テナント ID。「マイ認証情報」ページで確認できます)が必要です
- Project ID が必要です
3. 設定ファイル
設定ファイル ~/.huawei-ecs/config.yaml を作成します(または --config パラメーターでパスを指定します)。
# 认证方式:aksk 或 token
auth_method: aksk
# AK/SK 认证配置
ak: "your-access-key-id"
sk: "your-secret-access-key"
project_id: "your-project-id"
# Token 认证配置(当 auth_method 为 token 时使用)
# username: "your-username"
# password: "your-password"
# domain_id: "your-domain-id"
# 默认区域
region: "cn-north-4"
# 输出格式:table 或 json
output_format: "table"
ワークフロー
ユーザーから ECS 情報の照会を依頼された場合は、次の手順を実行します。
- 照会の種類を特定する:ユーザーが必要としているのがインスタンス一覧(list)、インスタンス詳細(show)、インスタンス状態(status)のいずれかを確認します
- 認証設定を確認する:
~/.huawei-ecs/config.yamlが存在するか確認します。存在しない場合は、「前提条件」の章を参照して設定を完了するようユーザーに案内します - 照会を実行する:照会の種類に応じたコマンドを実行します(「主要なコマンド」の章を参照)
- 一覧 →
list-servers(--status/--nameによるフィルタリングを追加できます) - 詳細 →
show-server - 状態 →
server-status
- 一覧 →
- 出力を整形する:デフォルトの出力形式は表形式です。ユーザーが JSON を要求した場合は
--output jsonを使用します - エラーに対処する:API リクエストが失敗した場合は、エラーメッセージに応じて、ネットワーク、リージョン、または権限を確認するようユーザーに案内します(「注意事項」と
references/troubleshooting.mdを参照)
主要なコマンド
hcloud CLI の同等コマンド(推奨)
このスキルのスクリプトは、Huawei Cloud API に直接接続して照会を実行します。環境に hcloud CLI(KooCLI)がインストールされ、hcloud configure が完了している場合は、次の同等コマンドを使用してすばやく照会できます。
# 查询实例列表
hcloud ECS ListServersDetails --cli-region=cn-north-4 --limit=25
# 查询单个实例详情
hcloud ECS ShowServer --cli-region=cn-north-4 --server_id=<server_id>
# 查询实例状态(结合 --cli-query 过滤)
hcloud ECS ListServersDetails --cli-region=cn-north-4 --status=ACTIVE
CLI のインストール方法と認証方法については、references/cli-installation-guide.md を参照してください。
スクリプトコマンド
インスタンス一覧の照会
python scripts/ecs_query.py list-servers --config config.yaml
オプションのパラメーター:
--region:リージョンを指定します(例:cn-north-4、cn-east-3、ap-southeast-1)--output:出力形式(table または json)--limit:返される件数の上限(デフォルトは 25)--offset:ページオフセット(デフォルトは 1)--status:状態によるフィルタリング(ACTIVE、SHUTOFF、BUILD、ERROR など)--name:名前によるフィルタリング--flavor:フレーバー ID によるフィルタリング
インスタンス詳細の照会
python scripts/ecs_query.py show-server --server-id <server_id> --config config.yaml
server_id の取得方法:インスタンス ID がわからない場合は、まず
python scripts/ecs_query.py list-servers --config config.yaml(またはhcloud ECS ListServersDetails --cli-region=<region>)を実行し、結果から対象インスタンスの ID 列をコピーします。
インスタンス状態の照会
python scripts/ecs_query.py server-status --server-id <server_id> --config config.yaml
server_id の取得方法:同様に、まず
list-serversを使用してインスタンス ID を取得します。
出力の説明
表形式
インスタンス一覧は表形式で表示され、次の列が含まれます。
| 列名 | 説明 |
|---|---|
| ID | サーバー ID |
| Name | サーバー名 |
| Status | 実行状態 |
| Flavor | フレーバータイプ |
| vCPU | 仮想 CPU コア数 |
| RAM(MB) | メモリーサイズ |
| Private IP | プライベート IP アドレス |
| Public IP | エラスティックパブリック IP |
| Created | 作成日時 |
| AZ | アベイラビリティーゾーン |
状態の説明
| 状態値 | 意味 |
|---|---|
| ACTIVE | 実行中 |
| SHUTOFF | シャットダウン済み |
| BUILD | 作成中 |
| ERROR | エラー |
| REBOOT | 再起動中 |
| HARD_REBOOT | 強制再起動中 |
| MIGRATING | 移行中 |
| RESIZE | フレーバー変更中 |
| VERIFY_RESIZE | フレーバー変更の検証中 |
API リファレンス
API の詳細な説明については、references/api-reference.md を参照してください。
トラブルシューティング
- 設定ファイルがない:「前提条件」の章に従って
~/.huawei-ecs/config.yamlを作成します - 認証に失敗する:AK/SK または Token の設定が正しいか、アカウントに ECS の読み取り専用権限があるか確認します
- 接続に失敗する:ネットワークから
ecs.{region}.myhuaweicloud.comにアクセスできるか確認します - その他のトラブルシューティングについては、
references/troubleshooting.mdを参照してください
注意事項
- セキュリティに関する注意:設定ファイルには機密性の高い認証情報が含まれます。適切に管理し、バージョン管理システムに登録しないでください
- ネットワーク要件:Huawei Cloud API エンドポイント(
ecs.{region}.myhuaweicloud.com)にアクセスできる必要があります - 権限要件:使用するアカウント/IAM ユーザーには ECS の読み取り専用権限(ECS ReadOnlyAccess)が必要です。ポリシーの詳細については、
references/iam-policies.mdを参照してください - 対応リージョン:Huawei Cloud には複数のリージョンがあります。よく使用されるリージョンは次のとおりです。
- cn-north-4(中国北部・北京 4)
- cn-north-1(中国北部・北京 1)
- cn-east-3(中国東部・上海 1)
- cn-south-1(中国南部・広州)
- ap-southeast-1(中国・香港)
- ap-southeast-2(アジア太平洋・シンガポール)
- AK/SK 署名:SDK-HMAC-SHA256 署名アルゴリズムを使用します。Huawei Cloud の公式署名仕様に準拠しています