このトピックでは、Alibaba Cloud SDK for Pythonを使用してApsaraDB RDSのDescribeDBInstances操作を呼び出してインスタンスを照会する方法について説明します。
APIドキュメントの表示
API操作を呼び出す前に、API操作に関するドキュメントを読んで、API操作を呼び出すために必要なパラメーターとアクセス許可について確認することをお勧めします。 詳細については、「機能別操作一覧」をご参照ください。
Resource Access Management (RAM) ユーザーを作成し、RAMユーザーに権限を付与する
RAMユーザーがいて、必要な権限がRAMユーザーに付与されている場合は、この手順をスキップしてください。
RAM ユーザーを作成します。
RAMコンソールにログインし、[ユーザー] ページに移動し、[ユーザーの作成] をクリックします。
[ログイン名] をrds-openapi-operatorに設定し、[アクセスモード] で [OpenAPIアクセス] を選択します。
[OK] をクリックします。 RAMユーザーが作成されたら、ユーザーのAccessKey IDとAccessKey secretを保存します。
RAMユーザーに権限を付与します。
[ユーザー] ページに移動し、作成したRAMユーザーを見つけて、[操作] 列の [権限の追加] をクリックします。
テキストボックスで
AliyunRDS
を検索し、AliyunRDSReadOnlyAccessポリシーを選択します。説明AliyunRDSReadOnlyAccessポリシーは、RAMユーザーにRDSインスタンスを照会する権限を付与します。 AliyunRDSFullAccessポリシーを選択して、RAMユーザーにRDSインスタンスの完全な管理権限を付与するか、カスタムポリシーを選択することもできます。 詳細については、「カスタムポリシーの作成」をご参照ください。
[権限の付与] をクリックして承認を完了します。
API操作の呼び出し
このトピックでは、Alibaba Cloud SDK for Pythonを使用してAPI操作を呼び出す方法について説明します。 他のプログラミング言語でも同じ方法でAlibaba Cloud SDKを使用できます。 詳細については、をご覧ください。 OpenAPIポータル。
Pythonのインストール
Python 3をダウンロードしてインストールします。 Pythonをインストールしている場合は、python -- version
コマンドを実行してPythonのバージョンを表示できます。
環境変数の設定
このセクションでは、オペレーティングシステムでALIBABA_CLOUD_ACCESS_KEY_ID
およびALIBABA_CLOUD_ACCESS_KEY_SECRET
環境変数を設定する方法について説明します。
LinuxまたはmacOSオペレーティングシステムを使用している場合は、次のコマンドの
<access_key_id>
と<access_key_secret>
をAccessKey IDとAccessKey secretに置き換えます。 次に、デバイスでコマンドを順番に実行します。export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id> export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>
Windowsオペレーティングシステムを使用している場合は、
ALIBABA_CLOUD_ACCESS_KEY_ID
およびALIBABA_CLOUD_ACCESS_KEY_SECRET
環境変数を追加するファイルを作成し、AccessKey IDおよびAccessKeyシークレットに変数を設定します。 次に、Windowsオペレーティングシステムを再起動します。
依存関係のインストール
デバイスで次のコマンドを実行して、依存関係をインストールします。
pip install alibabacloud_rds20140815==5.0.1
サンプルコードのダウンロード
アクセス DescribeDBInstances。
[パラメーター] タブで、必要なパラメーターを設定します。 この例では、RegionIdをcn-beijingに設定する必要があります。
右側の [SDKサンプルコード] タブで、[Python] (言語用) を選択し、[プロジェクトのダウンロード] をクリックしてサンプルコードパッケージをダウンロードします。
デバイスでパッケージを解凍し、alibabacloud_sampleディレクトリに移動します。
サンプルコードの実行
以下のコマンドを実行します。
python sample.py
レスポンス例:
{
"headers": {
"date": "Tue, 18 Jun 2024 10:12:14 GMT",
"content-type": "application/json;charset=utf-8",
"content-length": "1018",
"connection": "keep-alive",
"keep-alive": "timeout=25",
"access-control-allow-origin": "*",
"access-control-expose-headers": "*",
"x-acs-request-id": "3BBF9A9B-E74C-5EF5-99BB-4F65B4B67499",
"x-acs-trace-id": "dcfce27991f7d63647cc3c31ae3daa65",
"etag": "1se2pACCKd0kse87Rqtbprg8"
},
"statusCode": 200,
"body": {
"Items": {
"DBInstance": [
{
"ConnectionMode": "Standard",
"ConnectionString": "rm-2zea24972vgw2****.mysql.rds.aliyuncs.com",
"CreateTime": "2024-06-18T10:09:56Z",
"DBInstanceClass": "mysql.n1e.small.1",
"DBInstanceId": "rm-2zea24972vgw2****",
"DBInstanceMemory": 1024,
"DBInstanceNetType": "Intranet",
"DBInstanceStatus": "Creating",
"DBInstanceStorageType": "general_essd",
"DBInstanceType": "Primary",
"DeletionProtection": false,
"Engine": "MySQL",
"EngineVersion": "8.0",
"ExpireTime": "2024-07-18T16:00:00Z",
"InstanceNetworkType": "VPC",
"LockMode": "Unlock",
"MutriORsignle": false,
"PayType": "Prepaid",
"ReadOnlyDBInstanceIds": {
"ReadOnlyDBInstanceId": []
},
"RegionId": "cn-beijing",
"ResourceGroupId": "rg-acfmz7u4zzr****",
"TipsLevel": 0,
"VSwitchId": "vsw-2zeyawzswr2lno0ys****",
"VpcCloudInstanceId": "rm-2zea24972vgw2****-20240618180950",
"VpcId": "vpc-2zeev9fov0chw8hjt****",
"ZoneId": "cn-beijing-l"
}
]
},
"NextToken": "o7PHCFqQhehg8NUW9EJ7Yw",
"PageNumber": 1,
"PageRecordCount": 1,
"RequestId": "3BBF9A9B-E74C-5EF5-99BB-4F65B4B67499",
"TotalRecordCount": 1
}
}