検索

2.9. 例:Python を使用した NFS データストレージの作成

download PDF
Red Hat Virtualization 環境が最初に作成される場合は、少なくともデータストレージドメインと ISO ストレージドメインを定義する必要があります。データストレージドメインは仮想ディスクイメージの保存に使用されますが、ISO ストレージドメインはゲストオペレーティングシステムのインストールメディアを保存するために使用されます。
API クラスは、storagedomains という名前のストレージドメインコレクションへのアクセスを提供します。このコレクションには、環境内のすべてのストレージドメインが含まれます。storagedomains コレクションは、ストレージドメインの追加および削除にも使用できます。
注記
この例で提供されるコードは、リモート NFS 共有が Red Hat Virtualization で使用するために事前設定されていることを前提としています。使用するための NFS 共有の準備の詳細については、Red Hat Virtualization 『Administration Guide』 を参照してください。

例2.8 Python を使用した NFS データストレージの作成

この Python の例では、NFS データドメインを storagedomains コレクションに追加します。Python に NFS ストレージドメインを追加すると、いくつかの手順に分類できます。
  1. Datacenter コレクションの get メソッドを使用して、ストレージをアタッチする必要のあるデータセンターを特定します。
    dc = api.datacenters.get(name="Default")
  2. ホストコレクションの get メソッドを使用して、ストレージの割り当てに使用する ホスト を特定します。
    h = api.hosts.get(name="Atlantic")
  3. NFS ストレージドメインの Storage パラメーターを定義します。この例では、NFS の場所 192.0.43.10/storage/data が使用されています。
    s = params.Storage(address="192.0.43.10", path="/storage/data", type_="nfs")
  4. storagedomains コレクションの add メソッドを使用して、ストレージドメインの作成を要求します。Storage パラメーターに加えて、以下を渡す必要があります。
    • ストレージドメインの名前。
    • datacenters コレクションから取得したデータセンターオブジェクト。
    • host コレクションから取得したホストオブジェクト。
    • 追加されるストレージドメインのタイプ (dataiso、または export)。
    • 使用するストレージ形式 (v1v2、または v3)。
これらのステップが組み合わされると、完成したスクリプトは以下のようになります。
from ovirtsdk.api import API
from ovirtsdk.xml import params

try:
    api = API (url="https://HOST",
               username="USER@DOMAIN",
               password="PASS",
               ca_file="ca.crt")

    dc = api.datacenters.get(name="Default")
    h = api.hosts.get(name="Atlantic")

    s = params.Storage(address="192.0.43.10", path="/storage/data", type_="nfs")
    sd_params = params.StorageDomain(name="data1", data_center=dc, host=h, type_="data", storage_format="v3", storage=s)

    try:
        sd = api.storagedomains.add(sd_params)
        print "Storage Domain '%s' added (%s)." % (sd.get_name())
    except Exception as ex:
        print "Adding storage domain failed: %s" % ex

    api.disconnect()

except Exception as ex:
    print "Unexpected error: %s" % ex
add メソッド呼び出しに成功すると、スクリプトが出力されます。
Storage Domain 'data1' added (bd954c03-d180-4d16-878c-2aedbdede566).
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.