[英]Specify post-installation script when creating an instance in OpenStack [python-novaclient]
我有一個工作的python程序,由於python-novaclient庫,它能夠在OpenStack上創建實例。
現在我想在創建時給出一個安裝后腳本。 我查看了Servers
.create()
方法的文檔,但似乎沒有實現。
有人遇到過這個問題嗎?
編輯
在Horizon中,當我們創建實例時,textarea旁邊有用於安裝后腳本的信息:
“自定義腳本”字段類似於其他系統中的“用戶數據”。
這是否意味着userdata
是我需要的參數?
userdata - 要傳遞給元數據服務器的用戶數據,也可以是文件類型對象或字符串。
userdata
這是我為解決問題而編寫的Python代碼:
## Return the new created instance
# @param name Name of the instance to create in a String format
# @param image OpenStack image to deploy on the virtual machine
# @param flavor OpenStack flavor to use for the virtual machine
# @param keypair Name of the keypair to copy on the instance
# @param sec_groups List of security groups to link to the instance
def create_instance(self,name,image,flavor,keypair=None,sec_groups=None):
instance = self.client.servers.create(
name=name,
image=image,
flavor=flavor,
key_name=keypair,
security_groups=sec_groups,
userdata="#!/bin/bash \n echo 'AMAZING TEST' > /root/test"
)
return instance
嘗試啟用配置驅動器。 用戶數據可以通過配置驅動器發送到VM。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.