2017-12-18 133 views
0

我使用pyVmomi從vSphere上的模板部署虛擬機, 這樣做沒關係,新虛擬機獲取我作爲參數發送的名稱,但我希望DNS名稱\ hostname將與VM相同。
有沒有辦法在做實際的克隆時設置主機名?
如果不是我在創建新虛擬機後該怎麼做?從模板部署虛擬機並設置虛擬機和DNS名稱

這裏是我使用的代碼的一部分:

# RelocateSpec 
relospec = vim.vm.RelocateSpec() 
relospec.datastore = datastore 
relospec.pool = resource_pool 

# ConfigSpec 
configSpec = vim.vm.ConfigSpec() 
configSpec.annotation = "This is the annotation for this VM" 

# CloneSpec 
clonespec = vim.vm.CloneSpec() 
clonespec.location = relospec 
clonespec.powerOn = power_on 
clonespec.config = configSpec 

print ("cloning VM...") 
task = template.Clone(folder=destfolder, name=vm_name, spec=clonespec) 
wait_for_task(task) 

回答

1

我想你需要一個clonespec.customizationvim.vm.customization.Specification)。您應該能夠以某種方式或其他方式指定主機名。

哦,據我所知,VMware Tools必須安裝用於來賓操作系統定製。

希望有所幫助。

+0

以下是自定義規範的一個示例,用於執行您想要的操作,從第190行開始:https://gist.github.com/snobear/8788977 –