最初に
OCI SDK(以下SDK)ではデフォルトで以下のリージョン識別子を認識しています:
リージョン識別子の一覧
しかし、上記リージョンに含まれない識別子も存在します。
そのため、例えば以下のドキュメントを参考に、コンピュート・インスタンスのディスク使用率(ここではdisk_usage.py
として作成)を監視するスクリプトをホームディレクトリ(~
)配下に作成し、実行すると、次のようなエラーが発生する場合があります:
OCI カスタム・メトリックを使用したディスク使用率の監視
oci._vendor.requests.exceptions.ConnectionError:
OCIConnectionPool(host='auth.ap-dcc-tokyo-1.oraclecloud.com', port=443):
Max retries exceeded with url: /v1/x509 (Caused by
NewConnectionError('<oci.base_client.OCIConnection object at
0x7fb76f2f5588>: Failed to establish a new connection: [Errno -2] Name or
service not known',))
このエラーは、SDKが使用しているリージョン構成に必要な情報が不足している場合に発生します。
ここでは、リージョン構成ファイルを作成してSDKに新しいリージョンを追加する方法を説明します。
手順
1.ociディレクトリに移動
まず、ホームディレクトリ(~
)配下に.oci
ディレクトリを作成し、そのディレクトリに移動します。
以下のコマンドを実行してください:
mkdir .oci
cd .oci
2.リージョン構成ファイルの作成
次に、.oci
ディレクトリ内にリージョン構成ファイル(ここではregions-config.json
)を作成し、以下の内容を記述します:
[
{
"realmKey" : "OC1",
"realmDomainComponent" : "oraclecloud.com",
"regionKey" : "SYD",
"regionIdentifier" : "ap-sydney-1"
}
]
注意:realmKey
の値は、OCIDに含まれる情報を参考に設定します。
以下の図を確認してください:
3.スクリプトの再実行
リージョン構成ファイルを作成した後、ホームディレクトリ(~
)に戻り、再度ディスク使用率監視スクリプトを実行します:
python disk_usage.py
スクリプトが正常に動作すると、以下のような結果が表示されます:
34.6
{
"failed_metrics": [],
"failed_metrics_count": 0
}
これにより、SDKが新たに追加されたリージョンを認識し、メタデータを正常に取得できるようになります。
補足
作成したリージョン構成ファイルは、複数のカスタムリージョンを追加する場合にも対応可能です。
エラーが引き続き発生する場合は、ファイルパスや記述内容を再確認してください。