CreateVMwareInstacne
2016-08-11 15:57:29 0 举报
CreateVMwareInstance是一个用于创建和管理虚拟机实例的工具。它允许用户轻松地从现有的VMware模板中创建新的虚拟机实例,并对这些实例进行配置和管理。通过使用CreateVMwareInstance,用户可以轻松地部署和运行各种应用程序和服务,无需担心硬件资源的分配和维护问题。此外,CreateVMwareInstance还提供了强大的监控和管理功能,使用户能够实时监控虚拟机的性能和资源使用情况,并根据需要进行优化和调整。总之,CreateVMwareInstance是一个功能强大、易于使用的虚拟机管理工具,适用于各种规模的企业和组织。
作者其他创作
大纲/内容
spawn()
_do_build_and_run_instance()
START
Return: task_info.resulttobuild_virtual_machine
compute_driver = vmwareapi.VMwareVCDriver
build_and_run_instance()
1. 通过 vir_infos = nova.virt.vmwareapi.vif:get_vif_dict() 来获取 Virtual Interface infos,EG. network_name/mac_address/network_ref/iface_id/cif_model 2. 通过 config_spec = nova.virt.vmwareapi.vm_util:get_vm_create_spec() 来获取虚拟机的配置规格信息,EG. profile/cpu/memory/neutron
1. 通过 vm_create_task = nova.virt.vmwareapi.driver.VMwareAPISession:_call_method() 生成一个创建虚拟机的 Task 2. 再通过 task_info = nova.virt.vmwareapi.driver.VMwareAPISession:_wait_for_task(vm_create_task) 来轮询这个 Task
create_vm()
1. 通过 image_info = nova.virt.vmwareapi.images.VMwareImage:from_image() 来获取创建虚拟机所需要的 vmware image object2. 通过 vi = nova.virt.vmwareapi.vmops:_get_vm_config_info() 来获取创建虚拟机所需要的参数信息。Return VirualMachineInstanceConfigInfo() 的实例对象
build_virtual_machine()
Return: vm_ref = task_info.resulttospawn()
_build_and_run_instance()
通过将 Return vm_ref 作为实参执行创建完虚拟机之后的后续操作 :EG. 调用 vm_util.power_on_instance() 来开启虚拟机
nova.virt.vmwareapi.vm_util:create_vm()
1. Get image name 并且向外部发送一个 Start to Create 的通知2. 启动 Claim 机制的 Resource Tracker,用于更新 Table:compute_node,保证 nova- scheduler 获取最新的 Host 资源数据3. 修改 Instance status,其中 Task States 是 Instance 过渡状态,会被发送到外部4. 通过 _build_resources() 获取 block_device_info/network_info,并将这些实参传递到 nova.virt.driver.ComputeDriver:spawn()
nova.virt.vmwareapi.driver.VMwareVCDriver(vCenter Host 连接对象)该类实现了对 vCenter 虚拟机的操作函数 EG. _delete_datastore()/_extend_virtual_disk()
nova.virt.vmwareapi.vm_util(Create VM on ESX Host)
END
0 条评论
下一页
为你推荐
查看更多