簡體   English   中英

在OpenStack中創建實例時指定安裝后腳本[python-novaclient]

[英]Specify post-installation script when creating an instance in OpenStack [python-novaclient]

我有一個工作的python程序,由於python-novaclient庫,它能夠在OpenStack上創建實例。

現在我想在創建時給出一個安裝后腳本。 我查看了Servers .create()方法的文檔,但似乎沒有實現。

有人遇到過這個問題嗎?


編輯

在Horizo​​n中,當我們創建實例時,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.

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