开发者社区> 云物互联> 正文

Openstack_通用模块_Oslo_vmware 创建 vCenter 虚拟机快照

简介: 目录 目录 前文列表 创建虚拟机快照 最后 前文列表 Python Module_oslo.vmware_连接 vCenter Openstack_通用模块_Oslo_vmware 创建/删除 vCenter 虚拟机 创建虚拟机快照 vSphere Create Snapshot 文档 Snapshot 是虚拟机磁盘文件(VMDK)在某个点及时的复本。
+关注继续查看

目录

前文列表

Python Module_oslo.vmware_连接 vCenter
Openstack_通用模块_Oslo_vmware 创建/删除 vCenter 虚拟机

创建虚拟机快照

vSphere Create Snapshot 文档

Snapshot 是虚拟机磁盘文件(VMDK)在某个点及时的复本。包含了虚拟机所有虚拟磁盘上的数据状态和这个虚拟机的电源状态(on/off/suspended)。你可以在虚拟机起电, 关电, 挂起的状态下创建一个 Snapshot。

当你创建了一个 Snapshot, 系统会为其在 Datastore 上创建了一个 delta 磁盘文件并且写入所有变化到这个 delta 磁盘文件中。

vSphere 的 MO 对象 VirtualMachine 提供了创建快照, 恢复到 snapshot_tree 上任何快照点和移除快照的方法。

VirtualMachine.CreateSnapshot_Task 方法可以创建一个虚拟机的新快照, 并且附带的, 当前快照会变成这个新快照的父级快照。该方法允许设置快照名, 同时也需要设置 memory 和 quiesce 属性。

  • memory: 若为 true, 则虚拟机内存状态 dump(memory dump) 被包含在快照里。内存快照会消耗时间和资源, 需要较长的时间来创建。若为 false, 则快照电源状态被设置成关闭, 无需处理内存快照。

  • quiesce: 若为 true 且创建快照时虚拟机处于开机状态, VMware Tools 通常会用于静默虚拟机中的文件系统, 确保磁盘快照和 GuestOS 文件系统状态是一致。假如
    虚拟机的电源状态为关闭状态或 VMware Tools 不可用, 那么 quiesce 会被忽略。

from oslo_vmware import api
from oslo_vmware import vim_util

# Create the vmware session
session = api.VMwareAPISession(
            '<vCenter_server_ip>',
            '<vCenter_server_username>',
            '<vCenter_server_password>',
             1,  
             0.1)

# Get the instances list with vmware SDK
instances  = session.invoke_api(
                            vim_util,        
                            'get_objects',              
                            session.vim,                 
                            'VirtualMachine',                
                            100) 

# Select a instance if you want to create snapshot
instance = instances.objects[2].obj

# Start to create the snapshot
session.invoke_api(session.vim, 
                   "CreateSnapshot_Task",
                   instance,
                   name="JMILKFAN",
                   description='Just Create',
                   memory=False,
                   quiesce=False)

NOTE: 方法 session.invoke_api() 的第一个参数为提供函数调用的模块, 第二个参数为要从中调用的函数, 其余的参数会作为实参传入第二个参数(函数)中. 至于这些被传入的实参是怎么来确定的呢? 我们可以通过查看 vSphere SDK 文档来确定.
EXAMPLE:
这里写图片描述
从上图可以看出 CreateSnapshot_Task() 函数需要传入 _this/name/description/memory/quiesce 等 5 个参数. 其含义分别为:

  • _this: 需要创建快照的虚拟机
  • name: 指定快照的名称
  • description: 指定快照的描述
  • memory/quiesce: 在上文中已经提到了

最后

  • 恢复一个快照

    • VirtualMachine.RevertToSnapshot_Task
      恢复快照的方法需要指定一个目标 Host 和指定虚拟机是否开机, 当恢复一个快照的电源状态为 True 的虚拟机时, 就必须指定一个目标的 Host 或者将 SupressPowerOn 指定为 True.
  • 删除一个快照

    • VirtualMachine.RemoveAllSnapshots
      删除一个虚拟机的所有快照.
    • VirtualMachineSnapshot.RemoveSnapshot_Task
      删除一个虚拟机指定的快照, 其中 VirtualMachineSnapshot 是创建快照函数 CreateSnapshot_Task 返回的对象.

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
如何在VMware中进行创建CentOS虚拟机
如何在VMware中进行创建CentOS虚拟机
1624 0
Contoso 大学 - 使用 EF Code First 创建 MVC 应用
原文 Contoso 大学 - 使用 EF Code First 创建 MVC 应用 Contoso 大学 Web 示例应用演示了如何使用 EF 技术创建 ASP.NET MVC 应用。示例中的 Contoso 大学是虚构的。
1139 0
用后台代码创建Storyboard
            string storyboardName = "MyStoryBoard";             string myXamlElement = "MyXamlElement";             int newLeftPosition = 120;             Storyboard sb = XamlReader.
639 0
PS网页设计教程XX——在Photoshop中创建一个七彩糖果店网站布局
作为编码者,美工基础是偏弱的。我们可以参考一些成熟的网页PS教程,提高自身的设计能力。套用一句话,“熟读唐诗三百首,不会作诗也会吟”。 本系列的教程来源于网上的PS教程,都是国外的,全英文的。本人尝试翻译这些优秀的教程。
815 0
openStack cinder 在往虚拟机上挂载云磁盘时总是提示挂在错误 最后找到原因原来是指定挂载云磁盘的虚拟机被锁定
openStack 虚拟机的锁定功能是一个为了保护虚拟机 被误删除的一项创新共! 在VMs锁定状态下,一大部分针对此锁定的虚拟机都是无法执行的!! 需要进行相应的操作前,请注意解锁指定虚拟机,操作完成后再进行 锁定保护;
948 0
Spring AOP 源码分析——创建代理对象
1.简介 与筛选合适的通知器相比,创建代理对象的过程则要简单不少,本文所分析的源码不过100行,相对比较简单。在接下里的章节中,我将会首先向大家介绍一些背景知识,然后再去分析源码。
1057 0
Contoso 大学 - 1 - 为 ASP.NET MVC 应用程序创建 EF 数据模型
原文 Contoso 大学 - 1 - 为 ASP.NET MVC 应用程序创建 EF 数据模型 原文地址:Creating an Entity Framework Data Model for an ASP.NET MVC Application (1 of 10)   Contoso 大学 Web 示例应用演示了如何使用 EF 技术创建 ASP.NET MVC 应用。
1143 0
+关注
云物互联
OpenStack Developer, Opensource Lover :- )
264
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载