Alibaba Cloud Command Line Interface (Alibaba Cloud CLI) は、OpenAPI Explorer をベースに構築された統合ツールです。Alibaba Cloud CLI を使用すると、ApsaraDB for HBase の管理とメンテナンスを自動化できます。このトピックでは、Alibaba Cloud CLI を使用して ApsaraDB for HBase の API オペレーションを呼び出す方法について説明します。
前提条件
Alibaba Cloud CLI に慣れていない場合は、「Alibaba Cloud CLI とは」をご参照ください。
Alibaba Cloud CLI のインストール
Alibaba Cloud CLI を使用するには、まずインストールする必要があります。Alibaba Cloud CLI は、Windows、Linux、macOS 用のインストーラーを提供しています。お使いのオペレーティングシステムに適したインストーラーを選択してください。
-
Windows: Windows への Alibaba Cloud CLI のインストール。
また、Cloud Shell を使用して Alibaba Cloud CLI コマンドをデバッグすることもできます。Cloud Shell の詳細については、「Cloud Shell とは」をご参照ください。
Alibaba Cloud CLI の設定
Alibaba Cloud アカウント (root ユーザー) は、すべてのプロダクト API に対する完全な権限を持っており、高いセキュリティリスクをもたらします。API 呼び出しや日常の O&M タスクには、RAM ユーザーを作成して使用することを強く推奨します。
Alibaba Cloud CLI を使用する前に、認証情報とデフォルトのリージョンを設定する必要があります。Alibaba Cloud CLI は、複数の種類の認証情報をサポートしています。詳細については、「認証情報の設定と管理」をご参照ください。この例では、AccessKey ペアを使用します。次の手順に従います。
-
RAM ユーザーを作成し、必要な権限を付与します。詳細については、「RAM ユーザーの作成」および「RAM ユーザー権限の管理」をご参照ください。
重要この例では、
AliyunHBaseReadOnlyAccessポリシーを RAM ユーザーにアタッチする必要があります。AliyunHBaseFullAccessポリシーをアタッチすることもできます。このポリシーは、ApsaraDB for HBase インスタンスをクエリおよび変更するための完全な権限を付与します。または、ビジネスニーズに基づいてカスタムポリシーを作成することもできます。詳細については、「カスタム RAM 認可ポリシーの作成」をご参照ください。 -
RAM ユーザーを作成して権限を付与した後、そのユーザーの AccessKey ペアを作成します。
AccessKey IDとAccessKey Secretを記録します。詳細については、「AccessKey ペアの作成」をご参照ください。 -
利用可能なリージョン ID を取得して記録します。Alibaba Cloud CLI は、指定したリージョンに API リクエストを送信します。利用可能なリージョンの一覧については、「リクエストの構造」をご参照ください。
説明コマンドに
--regionオプションを追加して、API リクエストのリージョンを指定できます。このオプションは、設定ファイルや環境変数で指定されたリージョンをオーバーライドします。詳細については、「コマンドラインオプション」をご参照ください。 -
RAM ユーザーの AccessKey ペアを使用してプロファイルを設定します。この例では、プロファイルに
AkProfileという名前を付けます。詳細については、「認証情報の設定と管理」をご参照ください。
CLI コマンド例の生成
-
OpenAPI Explorer で ApsaraDB for HBase のAPI デバッグページに移動します。
-
「API デバッグ」ページでは、左側の検索ボックスで、使用したい API を検索できます。[パラメーター設定] で API ドキュメントの説明に従ってパラメーターを指定し、次に [パラメーター設定] の右側にある [CLI の例] タブをクリックすると、パラメーターが設定されたコマンドの例が生成されます。
-
アイコンをクリックして Cloud Shell を開き、コマンドをデバッグします。 -
アイコンをクリックして CLI の例をクリップボードにコピーします。その後、ローカルターミナルに貼り付けて実行できます。-
CLI の例をローカルシェルにコピーしてデバッグする際は、パラメーターのフォーマットに注意してください。Alibaba Cloud CLI のパラメーターフォーマットの詳細については、「パラメーターのフォーマット」をご参照ください。
-
OpenAPI Explorer は、デフォルトでコマンドに
--regionオプションを追加します。このオプションは、プロファイルと環境変数のリージョン設定をオーバーライドします。必要に応じて、このオプションを削除または保持できます。
-
-
API オペレーションの呼び出し
コマンドの構造
Alibaba Cloud CLI コマンドの一般的な構文は次のとおりです。詳細については、「CLI コマンドの生成と実行」をご参照ください。
aliyun <command> <subcommand> [options and parameters]
一般的なコマンドオプション
コマンドラインオプションを使用して、コマンドのデフォルトの動作を変更したり、機能を追加したりできます。一般的なコマンドラインオプションは次のとおりです。
-
--profile <profileName>:指定されたプロファイルを使用してコマンドを実行します。--profileオプションは、デフォルトのプロファイルと環境変数をオーバーライドします。 -
--help:現在のコマンドのヘルプ情報を表示します。詳細については、「ヘルプ情報の取得」をご参照ください。
詳細については、「コマンドラインオプション」をご参照ください。
例
次の例は、DescribeInstance オペレーションを呼び出して、特定の ApsaraDB for HBase インスタンスをクエリする方法を示しています。DescribeInstance オペレーションの詳細については、「DescribeInstance」をご参照ください。
-
コマンドを実行します。
aliyun hbase DescribeInstance --region cn-hangzhou --ClusterId 'ld-bp142678b0894****' -
コマンドは次の出力を返します。
{ "BackupStatus": "open", "ClusterId": "ld-bp142678b0894****", "ClusterName": "hbaseue_test", "ClusterType": "cluster", "ColdStorageSize": 0, "ColdStorageStatus": "open", "ConfirmMaintainTime": false, "CoreDiskCount": 4, "CoreDiskSize": 100, "CoreDiskType": "cloud_ssd", "CoreInstanceType": "hbase.sn2.2xlarge", "CoreNodeCount": 4, "CreatedTime": "2024-08-06T11:20:36", "CreatedTimeUTC": "2024-08-06T03:20:36Z", "EnableHbaseProxy": false, "EncryptionType": "NoEncryption", "Engine": "hbaseue", "InstanceId": "ld-bp142678b0894****", "InstanceName": "hbaseue_test", "IsDeletionProtection": false, "IsHa": true, "IsLatestVersion": false, "IsMultiModel": true, "MaintainEndTime": "06:00:00", "MaintainStartTime": "02:00:00", "MajorVersion": "2.0", "MasterDiskSize": 0, "MasterDiskType": "", "MasterInstanceType": "hbase.sn1.large", "MasterNodeCount": 2, "ModuleId": 0, "ModuleStackVersion": "2.0", "NeedUpgrade": false, "NeedUpgradeComps": { "Comps": [] }, "NetworkType": "VPC", "PayType": "Postpaid", "RegionId": "cn-hangzhou", "RequestId": "FBEE6642-D79E-5***-****-C4AF1******", "ResourceGroupId": "rg-acfmz7u4zzr****", "Status": "ACTIVATION", "Tags": { "Tag": [] }, "TaskProgress": "0", "TaskStatus": "running", "VpcId": "vpc-bp1ov7as4yvz4kxei****", "VswitchId": "vsw-bp1wh6lp1abs3fi0h****", "ZoneId": "cn-hangzhou-b" }