Alibaba Cloud コマンドラインインターフェイス (Alibaba Cloud CLI) は、OpenAPI Explorer をベースに構築された統合ツールです。Alibaba Cloud CLI を使用すると、Alibaba Cloud CDN の管理とメンテナンスを自動化できます。このトピックでは、Alibaba Cloud CDN の API オペレーションを呼び出す方法を説明し、例を示します。
前提条件
開始する前に、Alibaba Cloud CLI について理解しておく必要があります。詳細については、「Alibaba Cloud CLI とは」をご参照ください。
Alibaba Cloud CLI のインストール
Alibaba Cloud CLI を使用する前に、インストールする必要があります。Alibaba Cloud CLI は、Windows、Linux、macOS 用のインストーラーを提供しています。お使いのオペレーティングシステムに合ったインストーラーを選択してください。
-
Windows: 「Windows への CLI のインストール」をご参照ください。
-
Linux: 「CLI のインストールまたは更新」をご参照ください。
-
macOS: 「macOS への CLI のインストール」をご参照ください。
また、Alibaba Cloud が提供する Cloud Shell を使用して、Alibaba Cloud CLI コマンドをデバッグすることもできます。Cloud Shell の詳細については、「Cloud Shell とは」をご参照ください。
Alibaba Cloud CLI の設定
Alibaba Cloud アカウント (ルートアカウント) は、サービスとリソースに対する完全な管理アクセス権を持っており、重大なセキュリティリスクとなります。API アクセスや日常の運用保守には、RAM ユーザーを作成して使用することを強く推奨します。
Alibaba Cloud CLI を使用する前に、ID 認証情報とリージョン ID を設定する必要があります。Alibaba Cloud CLI は、さまざまなタイプの ID 認証情報をサポートしています。詳細については、「ID 認証情報の設定と管理」をご参照ください。このトピックでは、AccessKey 認証情報を例に説明します。
-
RAM ユーザーを作成して、必要な権限を付与します。詳細については、「RAM ユーザーの作成」および「RAM ユーザーへの権限付与」をご参照ください。
重要この例では、RAM ユーザーに
AliyunCDNReadOnlyAccessポリシーをアタッチする必要があります。また、Alibaba Cloud CDN ドメイン名のクエリと変更に対する完全な制御を付与するAliyunCDNFullAccessポリシーをアタッチするか、カスタムポリシーを作成することもできます。詳細については、「CDN カスタムポリシーリファレンス」をご参照ください。 -
RAM ユーザーを作成して承認した後、AccessKey ペアを作成します。
AccessKey IDとAccessKey Secretを記録してください。詳細については、「AccessKey の作成」をご参照ください。 -
利用可能なリージョン ID を取得して記録します。Alibaba Cloud CLI は、指定したリージョンに API リクエストを送信します。利用可能なリージョンのリストについては、「リクエスト構造」をご参照ください。
説明--regionオプションを使用して、コマンドにリージョンを指定できます。このオプションは、認証情報と環境変数で設定されたデフォルトのリージョンを上書きします。詳細については、「コマンドラインオプション」をご参照ください。 -
RAM ユーザーの AccessKey ペアを使用して認証情報を設定します。設定プロファイルに
AkProfileという名前を付けます。詳細については、「エンドポイント」をご参照ください。
CLI コマンド例の生成
-
Alibaba Cloud CDN API の デバッグ ページに移動します。
-
左側の検索ボックスで、使用する API を検索します。[Parameters] タブで、API ドキュメントに基づいてパラメータを設定します。[CLI Example] タブをクリックすると、設定したパラメータを含むコマンド例が生成されます。
-
アイコンをクリックすると、Cloud Shell が開き、コマンドをデバッグできます。 -
アイコンをクリックして CLI 例をコピーします。その後、ローカルシェルに貼り付けてコマンドを実行します。-
CLI 例をローカルシェルに貼り付けてデバッグする場合は、パラメータの形式に注意してください。Alibaba Cloud CLI コマンドのパラメータ形式の詳細については、「コマンドパラメータについて」をご参照ください。
-
デフォルトでは、OpenAPI Explorer は生成された例に
--regionオプションを追加します。ローカルでコマンドを実行する場合、Alibaba Cloud CLI はデフォルトの認証情報設定と環境変数のリージョン情報を無視し、指定されたリージョンを優先します。必要に応じて、このオプションを削除または保持できます。
-
-
API オペレーションの呼び出し
コマンド構造
Alibaba Cloud CLI の一般的なコマンドライン構造は次のとおりです。詳細については、「コマンドの生成と呼び出し」をご参照ください。
aliyun <command> <subcommand> [options and parameters]
一般的なコマンドラインオプション
Alibaba Cloud CLI では、コマンドラインオプションを使用して、コマンドのデフォルト動作を変更したり、機能を追加したりできます。一般的なオプションには次のものがあります。
-
--profile <profileName>:--profileオプションで、profileNameに有効な設定名を指定すると、Alibaba Cloud CLI はデフォルトの ID 認証情報設定と環境変数の設定を無視し、指定された設定を優先してコマンドを呼び出します。 -
--help: コマンドに--helpオプションを追加すると、そのコマンドのヘルプ情報を取得できます。詳細については、「ヘルプ情報の取得」をご参照ください。
詳細については、「コマンドラインオプション」をご参照ください。
例
次の例では、Alibaba Cloud CDN の DescribeUserDomains API を呼び出して、アカウント配下のすべてのドメイン名とそのステータスをクエリする方法を示します。DescribeUserDomains API の詳細については、「DescribeUserDomains」をご参照ください。
-
コマンドを実行します。
aliyun cdn DescribeUserDomains --DomainName mxxxio.top -
コマンドは次の出力を返します。
{ "Domains": { "PageData": [ { "CdnType": "web", "Cname": "mxxx.xxxp.w.kunlunq.com", "Coverage": "domestic", "Description": "", "DomainId": 201xxx553, "DomainName": "mxxxio.top", "DomainStatus": "online", "GlobalResourcePlan": "off", "GmtCreated": "2024-08-27T06:29:36Z", "GmtModified": "2024-08-27T06:34:04Z", "ResourceGroupId": "rg-acfmwpdflelaoai", "Sandbox": "", "Sources": { "Source": [ { "Content": "183.xxx.xxx.88.cn-hangzhou.sae.aliyuncs.com", "Port": 80, "Priority": "20", "Type": "domain", "Weight": "10" } ] } } ] }, "PageNumber": 1, "PageSize": 20, "RequestId": "E4EBD2BF-5EB0-4044-9B97-xxxxxx", "TotalCount": 1 }
Alibaba Cloud CDN の API 呼び出しでエラーが返された場合は、返されたエラーコードを使用して、リクエストパラメータとその値が有効であることを確認してください。
また、レスポンスのリクエスト ID または SDK エラーメッセージを Alibaba Cloud OpenAPI Diagnostics で使用して、問題をトラブルシューティングすることもできます。