Gunakan Alibaba Cloud SDK untuk Python untuk memanggil operasi DescribeDBClusters dan menampilkan kluster ApsaraDB for ClickHouse Anda secara terprogram.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Python 3 terinstal. Jalankan
python --versionuntuk memeriksa versi Anda.Memiliki Akun Alibaba Cloud dengan setidaknya satu kluster ApsaraDB for ClickHouse.
Siapkan pengguna RAM
Lewati bagian ini jika Anda sudah memiliki pengguna RAM dengan izin yang diperlukan.
Buka halaman Users dan klik Create User.
Atur Logon Name menjadi
clickhouse-openapi-operatordan Access Mode menjadi Using permanent AccessKey to access.Klik OK. Simpan ID AccessKey dan rahasia AccessKey yang ditampilkan—Anda tidak akan dapat mengambil kembali rahasia tersebut.
Pada halaman Users, klik Add Permissions di kolom Actions untuk pengguna yang telah Anda buat.
Pada bagian Policy, cari
AliyunClickHousedan pilih AliyunClickHouseReadOnlyAccess.AliyunClickHouseReadOnlyAccess memberikan akses read-only ke ApsaraDB for ClickHouse. Untuk mengizinkan modifikasi, pilih AliyunClickHouseFullAccess. Untuk menentukan cakupan kustom, lihat Buat kebijakan kustom.
Klik Grant permissions.
Panggil operasi DescribeDBClusters
Konfigurasikan variabel lingkungan
Simpan kredensial Anda sebagai variabel lingkungan untuk menghindari hardcoding di kode sumber.
Linux atau macOS — ganti nilai placeholder dan jalankan:
export ALIBABA_CLOUD_ACCESS_KEY_ID=<your-access-key-id>
export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<your-access-key-secret>Windows — tambahkan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET sebagai variabel lingkungan sistem yang diatur ke ID AccessKey dan rahasia AccessKey Anda, lalu restart mesin Anda.
Instal SDK
pip install alibabacloud_clickhouse20191111Unduh kode contoh
Cara tercepat untuk mendapatkan kode yang dapat dijalankan adalah dari OpenAPI Explorer:
Buka halaman DescribeDBClusters di OpenAPI Explorer.
Pada tab Parameters, atur RegionId ke wilayah tempat kluster Anda berada (misalnya,
cn-hangzhou).Pada tab SDK Sample Code, pilih Python dan klik Download Project.
Ekstrak paket yang diunduh dan navigasikan ke direktori
alibabacloud_sample.
Jalankan kode
python sample.pyTanggapan sukses terlihat seperti:
[
LOG
]{
"headers": {
"date": "Thu, 27 Jul 2023 10:03:39 GMT",
"content-type": "application/json;charset=utf-8",
"content-length": "1665",
"connection": "keep-alive",
"keep-alive": "timeout=25",
"vary": "Accept-Encoding",
"access-control-allow-origin": "*",
"access-control-expose-headers": "*",
"x-acs-request-id": "F2F4B6CB-3C03-51A0-9300-F78BC94E****",
"x-acs-trace-id": "4d9ceb1f6cb98086cd8333f0bb30****",
"etag": "1YlaXvHZ3H5CjZic1Oeo****"
},
"statusCode": 200,
"body": {
"DBClusters": {
"DBCluster": [
{
"Category": "Basic",
"ResourceGroupId": "rg-acfmz7u4zzr****",
"ControlVersion": "v2",
"Port": "8123",
"DBClusterId": "cc-bp1084nnobip9****",
"DBClusterNetworkType": "vpc",
"DBNodeCount": 1,
"CommodityCode": "clickhouse_go_public_cn",
"Bid": "26842",
"LockReason": "",
"Tags": {
"Tag": [
{
"Value": "01",
"Key": "test"
}
]
},
"DBNodeStorage": 100,
"IsExpired": false,
"StorageType": "CloudESSD",
"ZoneId": "cn-hangzhou-h",
"DBClusterStatus": "Running",
"CreateTime": "2023-07-27T07:47:19Z",
"VSwitchId": "vsw-bp11dxnc500olkyyf****",
"DBClusterDescription": "cc-bp1084nnobip9****",
"PayType": "Postpaid",
"LockMode": "Unlock",
"DBNodeClass": "S8",
"ScaleOutStatus": {},
"VpcId": "vpc-bp1pf7eciga85yo53****",
"VpcCloudInstanceId": "cc-bp1084nnobip9****",
"RegionId": "cn-hangzhou",
"ConnectionString": "cc-bp1084nnobip9****.clickhouse.ads.aliyuncs.com",
"ExpireTime": "",
"AliUid": 164882191396****
},
{
"Category": "Basic",
"ResourceGroupId": "rg-acfmz7u4zzr****",
"ControlVersion": "v2",
"Port": "8123",
"DBClusterId": "cc-bp166xfnay4rw****",
"DBClusterNetworkType": "vpc",
"DBNodeCount": 1,
"CommodityCode": "clickhouse_go_public_cn",
"Bid": "26842",
"LockReason": "",
"Tags": {
"Tag": [
{
"Value": "01",
"Key": "test"
}
]
},
"DBNodeStorage": 100,
"IsExpired": false,
"StorageType": "CloudESSD",
"ZoneId": "cn-hangzhou-h",
"DBClusterStatus": "Running",
"CreateTime": "2023-07-27T06:53:54Z",
"VSwitchId": "vsw-bp1mbnyrjtf3ihga1****",
"DBClusterDescription": "cc-bp166xfnay4rw****",
"PayType": "Postpaid",
"LockMode": "Unlock",
"DBNodeClass": "S8",
"ScaleOutStatus": {},
"VpcId": "vpc-bp1ov7as4yvz4kxei****",
"VpcCloudInstanceId": "cc-bp166xfnay4rw****",
"RegionId": "cn-hangzhou",
"ConnectionString": "cc-bp166xfnay4rw****.clickhouse.ads.aliyuncs.com",
"ExpireTime": "",
"AliUid": 164882191396****
}
]
}
}
}Setiap objek dalam array DBCluster merepresentasikan satu kluster. Bidang utama:
| Field | Description |
|---|---|
DBClusterId | ID kluster unik |
DBClusterStatus | Status saat ini, misalnya Running |
ConnectionString | Endpoint untuk menghubungkan ke kluster |
Port | Port HTTP (8123) |
RegionId | Wilayah tempat kluster dideploy |
PayType | Metode penagihan (Postpaid = pay-as-you-go) |
Tip: Dalam kode produksi, buat client SDK sekali dan gunakan kembali untuk berbagai permintaan. Membuat client baru untuk setiap permintaan menambahkan overhead yang tidak perlu.
Langkah selanjutnya
Jelajahi daftar lengkap operasi API yang tersedia: Referensi API ApsaraDB for ClickHouse
Gunakan SDK untuk bahasa lain: SDK ApsaraDB for ClickHouse