3.2. バージョン 4 の Red Hat Virtualization への接続
Red Hat Virtualization Manager に接続するには、スクリプトの開始時にクラスをインポートして、ovirtsdk4.sdk モジュールから Connection クラスのインスタンスを作成する必要があります。
import ovirtsdk4 as sdk
Connection クラスのコンストラクターは、いくつかの引数を取ります。サポートされている引数は次のとおりです。
url-
https://server.example.com/ovirt-engine/apiなどの Manager のベース URL を含む文字列。 username-
admin@internalなど、接続するユーザー名を指定します。このパラメーターは必須です。 password-
usernameパラメーターで指定されたユーザー名のパスワードを指定します。このパラメーターは必須です。 token-
ユーザー名とパスワードの代わりに使用する、API にアクセスするためのオプションのトークン。
tokenパラメーターが指定されていない場合、SDK は自動的に 1 つ作成します。 insecure- サーバーの TLS 証明書とホスト名をチェックする必要があるかどうかを示すブール値フラグ。
ca_file-
信頼できる CA 証明書を含む PEM ファイル。サーバーによって提示された証明書は、これらの CA 証明書を使用して検証されます。
ca_fileパラメーターが設定されていない場合、システム全体の CA 証明書ストアが使用されます。 debugデバッグ出力を生成する必要があるかどうかを示すブール値フラグ。値が
Trueで、logパラメーターがNoneでない場合、サーバーとの間で送受信されるデータはログに書き込まれます。注記ユーザー名とパスワードはデバッグログに書き込まれるため、取り扱いには注意してください。
デバッグモードでは圧縮が無効になっています。つまり、デバッグメッセージはプレインテキストとして送信されます。
log- ログメッセージが書き込まれるロガー。
Kerberos- デフォルトの基本認証の代わりに Kerberos 認証を使用する必要があるかどうかを示すブール値フラグ。
timeout-
レスポンスを待機する最大合計時間 (秒単位)。値が
0(デフォルト) の場合、永久に待機することを意味します。レスポンスを受信する前にタイムアウトが期限切れになると、例外が発生します。 compress-
SDK がサーバーに圧縮されたレスポンスを送信するようにリクエストするかどうかを示すブール値フラグ。デフォルトは
Trueです。これはサーバーへのヒントであり、このパラメーターがTrueに設定されている場合でも非圧縮データを返す可能性があります。デバッグモードでは圧縮が無効になっています。つまり、デバッグメッセージはプレインテキストとして送信されます。 sso_url-
サーバーのベース SSO URL を含む文字列。
sso_urlが指定されていない場合、デフォルトの SSO URL はurlから計算されます。 sso_revoke_url-
SSO 取り消しサービスのベース URL を含む文字列。これは、外部認証サービスを使用する場合にのみ指定する必要があります。デフォルトでは、この URL は
urlパラメーターの値から自動的に計算されるため、SSO トークンの取り消しは、Manager の一部である SSO サービスを使用して実行されます。 sso_token_name-
SSO サーバーから返された JSONSSO レスポンスのトークン名。デフォルト値は
access_tokenです。 headers- ヘッダー付きのディクショナリー。リクエストごとに送信する必要があります。
connections-
ホストに対して開く接続の最大数。値が
0(デフォルト) の場合、接続数は無制限です。 pipeline-
レスポンスを待たずに HTTP パイプラインに入れるリクエストの最大数。値が
0(デフォルト) の場合、パイプライン処理は無効になります。
import ovirtsdk4 as sdk
# Create a connection to the server:
connection = sdk.Connection(
url='https://engine.example.com/ovirt-engine/api',
username='admin@internal',
password='password',
ca_file='ca.pem',
)
connection.test()
print("Connected successfully!")
connection.close()
サポートされているメソッドの完全なリストについては、Manager マシンで ovirtsdk.api モジュールのドキュメントを生成できます。
$ pydoc ovirtsdk.api