簡體   English   中英

如何使用 python 中的連接從快照 openstack 創建卷?

[英]How to create a volume from snapshot openstack using connection in python?

我正在嘗試使用 python api 從 openstack 中的快照創建卷。使用 UI,這很容易通過在快照概述中按Create Volume操作來實現。

但是,在查看 python 文檔時,我找不到所需的方法。 我找到了創建快照的create_volume_snapshot ,但我找不到從快照創建卷的方法。 我還找到了可以在其中移交圖像以創建卷的參數,但沒有用於快照的參數。 我一定是瞎了。

這是文檔: https://docs.openstack.org/openstacksdk/latest/user/connection.html

僅使用連接是不可能從快照創建卷的。 但是,可以為此使用 cinderclient (python api)。 一個最小的例子是:

from keystoneauth1 import loading
from keystoneauth1 import session
from cinderclient import client
def create_cinder(self, version=3):
    loader = loading.get_plugin_loader('password')
    auth = loader.load_from_options(auth_url=os.environ["OS_AUTH_URL"],
                                    username=os.environ["OS_USERNAME"],
                                    password=os.environ["OS_PASSWORD"],
                                    project_id=os.environ["OS_PROJECT_ID"],
                                    user_domain_name=os.environ["OS_USER_DOMAIN_NAME"])
    sess = session.Session(auth=auth)
    return client.Client(version, session=sess)
cinder = create_cinder()
cinder.volumes.create(size="size", snapshot_id="id", name="name",
                                           description="description")

此示例僅在您為尺寸 ID 名稱和描述輸入可能的值並正確設置環境變量時才有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM