VMware 虚拟化编程(4) — VDDK 安装
目录
前文列表
VMware 虚拟化编程(1) — VMDK/VDDK/VixDiskLib/VADP 概念简析
VMware 虚拟化编程(2) — 虚拟磁盘文件类型详解
VMware 虚拟化编程(3) —VMware vSphere Web Service API 解析
VDDK
摘自官方文档:The Virtual Disk Development Kit (VDDK) is a collection of C/C++ libraries, code samples, utilities, and documentation to help you create and access VMware virtual disk storage. The VDDK is useful in conjunction with the vSphere API for writing backup and recovery software, or similar applications.
虚拟磁盘开发包(VDDK) 实际上是一系列的 C/C++ Lib 库以及相关的 Docs 和 Sample,开发者能够通过调用这些库函数来实现连接和管理 VMware 虚拟磁盘文件(VMDK File)。
VDDK 提供了以下功能:
- 读取虚拟磁盘文件的数据。
- 写入数据到虚拟磁盘文件。
- 备份虚拟机的单个指定卷或所有卷。
- 将备份代理连接到 vSphere,备份存储集群上的所有虚拟机。
- 管理虚拟磁盘文件的整合、扩展、转换、重命名、压缩文件系统镜像。
- 运行离线的虚拟机病毒扫描、统一补丁与数据分析。
- 对中毒和被破坏的离线虚拟机进行数据恢复或病毒清除。
NOTE:其中对虚拟磁盘文件的数据读写操作,除了可以通过直接访问 VMDK File 来获取虚拟机的全量数据之外。还能够应用 CBT 功能通过访问快照数据文件来获取指定时间间隔的虚拟机增量数据。
获得 VDDK:从官方 download 下载 VDDK 软件包 VMware-vix-disklib-6.0.3-4888596.x86_64.tar.gz。
VDDK 的组成:解压软件包后即可得的 vmware-vix-disklib-distrib 目录,内含了 bin64、doc、include、lib32、lib64 等子目录。
lib:包含 vixDiskLib.lib(Windows) 或者 libvixDiskLib.so(Linux) 等动态链接库(共享对象)文件,其中最重要莫过于 libvixDiskLib.so 库文件,该文件也相当于 VixDiskLib 虚拟磁盘库,VDDK 中绝大多数的虚拟磁盘操作函数都是由它提供。
include:包含一系列 C/C++ Lib 库所需的头文件,其中 vixDiskLib.h 头文件,其作为 VixDiskLib 虚拟磁盘库的声明,是引用 VixDiskLib 库函数的关键。
doc 目录:提供了 HTML 文档,以及 doc/samples/diskLib 目录下使用 C++ 实现的示例程序。
安装 VDDK
- Step 1:将 VDDK 解压目录放置到操作系统 Lib 库路径下
mv vmware-vix-disklib-distrib/ /usr/lib/vmware-vix-disklib/
- Step 2:根据操作系统环境的不同,部分 VDDK 提供的 .so 文件可能会与操作系统自身的 .so 文件造成冲突。所以需要将与操作系统原先已经存在的同名 .so 文件移动到 removed 目录,防止安装 VDDK 后会影响到操作系统的正常运行。注意,需要移动的 .so 文件清单根据个人环境而定。
cd /usr/lib/vmware-vix-disklib/lib64
mkdir removed
mv libcrypto.so.* libcurl.so.* libglib-* libgobject-* libgthread-* libssl.so.* removed/
- Step 3:将 VDDK Lib 库文件的路径写入系统环境路径并刷新
echo "/usr/lib/vmware-vix-disklib/lib64" > /etc/ld.so.conf.d/vmware-vix-disklib.conf
ldconfig
VMware 虚拟化编程(4) — VDDK 安装的更多相关文章
- VMware 虚拟化编程(14) — VDDK 的高级传输模式详解
目录 目录 前文列表 虚拟磁盘数据的传输方式 Transport Methods Local File Access NBD and NBDSSL Transport SAN Transport Ho ...
- VMware 虚拟化编程(15) — VMware 虚拟机的恢复方案设计
目录 目录 前文列表 将已存在的虚拟机恢复到指定时间点 恢复为新建虚拟机 灾难恢复 恢复细节 恢复增量备份数据 以 RDM 的方式创建虚拟磁盘 创建虚拟机 Sample of VirtualMachi ...
- VMware 虚拟化编程(13) — VMware 虚拟机的备份方案设计
目录 目录 前文列表 备份思路 备份算法 备份细节 连接到 vCenter 还是 ESXi 如何选择快照类型 是否开启 CBT 如何获取备份数据 如何提高备份数据的传输率 备份厚置备磁盘和精简置备磁盘 ...
- VMware 虚拟化编程(12) — VixDiskLib Sample 程序使用
目录 目录 前文列表 vixDiskLibSample 安装 Sample 程序 Sample 程序使用方法 前文列表 VMware 虚拟化编程(1) - VMDK/VDDK/VixDiskLib/V ...
- VMware 虚拟化编程(11) — VMware 虚拟机的全量备份与增量备份方案
目录 目录 前文列表 全量备份数据的获取方式 增量备份数据的获取过程 前文列表 VMware 虚拟化编程(1) - VMDK/VDDK/VixDiskLib/VADP 概念简析 VMware 虚拟化编 ...
- VMware 虚拟化编程(10) — VMware 数据块修改跟踪技术 CBT
目录 目录 前文列表 数据块修改跟踪技术 CBT 为虚拟机开启 CBT CBT 修改数据块偏移量获取函数 QueryChangedDiskAreas changeId 一个 QueryChangedD ...
- VMware 虚拟化编程(9) — VMware 虚拟机的快照
目录 目录 前文列表 VMware 虚拟机的快照 快照的执行过程 删除快照 快照类型 Quiseced Snapshot 前文列表 VMware 虚拟化编程(1) - VMDK/VDDK/VixDis ...
- VMware 虚拟化编程(8) — 多线程中的 VixDiskLib
目录 目录 前文列表 多线程注意事项 多线程中的 VixDiskLib 前文列表 VMware 虚拟化编程(1) - VMDK/VDDK/VixDiskLib/VADP 概念简析 VMware 虚拟化 ...
- VMware 虚拟化编程(7) — VixDiskLib 虚拟磁盘库详解之三
目录 目录 前文列表 VixDiskLib 虚拟磁盘库 VixDiskLib_GetMetadataKeys VixDiskLib_ReadMetadata 获取虚拟磁盘元数据 VixDiskLib_ ...
随机推荐
- js中的Math对象
绝对值Math.abs() console.log(Math.abs(-25)); console.log(Math.abs('-25'));//存在隐式转换可以求绝对值 co ...
- XMPP实现原理
XMPP协议简介 XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议)是目前主流的四种IM(IM:instant messagi ...
- Nginx服务项的基本配置
由于Nginx配置项较多,把他们按照用户使用时的预期功能分为以下4类: 1.调试,定位问题的配置项 2.正常运行必备配置项 3.优化性能配置项 4.事件类配置项 1. 用于调试进程,定位问题的配置项 ...
- verilog版插值
开发环境:IDE:LIBERO 9.0(ACTEL公司的)芯片:AFS600 (BGA256),是混合系列的FPGA仿真软件:modelsim atcel 6.5d综合软件:synplify pr ...
- Linux服务器安装系统之1-LSI阵列卡Raid10配置方法
- CIC许可更新
打开IA软件,点击软件中的[License],可以查看当前许可是否可用或者过期,如果过期,点击下方的[Load License],选择最新的I3许可文件加载,重启电脑.
- qthread线程
一般调用quit()函数之后可以紧接着调用wait()函数确保线程退出.sleep()等让线程休眠的函数不需要调用,因为Qt中线程是事件驱动机制.但是如果是继承的QTHread类,在run()函数中使 ...
- Django【第12篇】:Django之中间件
自定义验证规则以及中间件简单介绍 1.python2和python3中的区别 对于python2内置的字符串类型有str和unicode 比如:"abc"是字符串,u"你 ...
- lambda匿名函数sorted排序函数filter过滤函数map映射函数
lambda函数:表示匿名函数,不需要def来声明,一句话就能搞定. 语法:函数名=lamda 参数:返回值 求10的10次方 f=lambda n:n**n print(f(10)) 注意: 函数名 ...
- OI比赛常数优化
这是一篇玄学文章 一.编译优化 #pragma GCC optimize("O3") #pragma G++ optimize("O3") 预处理开O3优化 比 ...