Azure Python SDK-带有 cloud-init 的 Spinup VM
Azure Python SDK- Spinup VM with cloud-init
我正在尝试使用 Azure SDK 通过 cloud-init 启动 VM。
脚本基于此示例:https://github.com/Azure-Samples/virtual-machines-python-manage/blob/master/example.py 我添加了以下内容:
with open(cloudinit, "r") as cl:
clcont=cl.read()
# CUSTOM_DATA=base64.b64encode(clcont.encode('utf-8')).decode('ascii')
CUSTOM_DATA=clcont
接下来在函数create_vm_parameters
中添加:
'custom-data': CUSTOM_DATA
我尝试了以下示例:
- 已通过 base64、base64 ascii 解码以及纯脚本上下文。
- 在
os_profile
中提供custom-data
以及分隔块。
尝试使用 az cli
启动 vm 时,cloud-init 脚本工作正常。
你有什么想法如何让它与 python sdk 一起工作吗?也许我在创建 vm 参数时将它添加到不正确的部分?
因为没人回答,我同事解决了。
将 cloudinit 保存为 yaml 文件,并且:
clcont== '\n'.join([
'', yaml.dump(cloudinit), ])
CUSTOM_DATA = base64.b64encode(clcont.encode('utf-8')).decode('latin-1')
并放入os_profile
:'custom_data': CUSTOM_DATA,
我正在尝试使用 Azure SDK 通过 cloud-init 启动 VM。 脚本基于此示例:https://github.com/Azure-Samples/virtual-machines-python-manage/blob/master/example.py 我添加了以下内容:
with open(cloudinit, "r") as cl:
clcont=cl.read()
# CUSTOM_DATA=base64.b64encode(clcont.encode('utf-8')).decode('ascii')
CUSTOM_DATA=clcont
接下来在函数create_vm_parameters
中添加:
'custom-data': CUSTOM_DATA
我尝试了以下示例:
- 已通过 base64、base64 ascii 解码以及纯脚本上下文。
- 在
os_profile
中提供custom-data
以及分隔块。
尝试使用 az cli
启动 vm 时,cloud-init 脚本工作正常。
你有什么想法如何让它与 python sdk 一起工作吗?也许我在创建 vm 参数时将它添加到不正确的部分?
因为没人回答,我同事解决了。
将 cloudinit 保存为 yaml 文件,并且:
clcont== '\n'.join([
'', yaml.dump(cloudinit), ])
CUSTOM_DATA = base64.b64encode(clcont.encode('utf-8')).decode('latin-1')
并放入os_profile
:'custom_data': CUSTOM_DATA,