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_ ...
随机推荐
- 洛谷 - P1346 - 电车 - Dijkstra/01BFS
https://www.luogu.org/problem/P1346 使用最短路之前居然忘记清空了. #include<bits/stdc++.h> using namespace st ...
- stdcall 函数调用过程(以delphi为例),还有负数的补码
以delphi下调用stdcall 函数为例,从右往左压栈:procedure TForm1.Button2Click(Sender: TObject);var i:integer;begin i:= ...
- eclipse调试openstack的nova代码
前段时间一直在研究openstack的nova部分的代码.特别想知道,怎样用eclipse来调试代码.也在论坛上问了别人.无果.最后还是自己摸索出了出路. 以下写出自己探索之路.我是用devstack ...
- Composer学习
Composer简介 Composer是PHP的一个依赖管理工具,不是包管理器:在项目中声明所依赖的外部工具库(libraries),Composer会自动安装止血工具库及依赖的库文件. 安装方式 C ...
- 【问题解决方案】Xshell连接服务器并实现上传和下载文件
参考链接: Xshell连接服务器并实现上传和下载文件 第一步:xshell登录完成 略 第二步: 在服务器安装lrzsz 如果服务器的操作系统是 CentOS,则输入命令[yum install l ...
- js函数调用的几种方法
js的函数调用会免费奉送两个而外的参数就是 this 和 arguments .arguments是参数组,他并不是一个真实的数组,但是可以使用.length方法获得长度. 书上有说4中调用方式: 方 ...
- Educational Codeforces Round 32 Maximum Subsequence CodeForces - 888E (meet-in-the-middle,二分,枚举)
You are given an array a consisting of n integers, and additionally an integer m. You have to choose ...
- flask框架上下文
上下文 上下文:相当于一个容器,保存了 Flask 程序运行过程中的一些信息. Flask中有两种上下文,请求上下文和应用上下文 请求上下文(request context) 在 flask 中,可以 ...
- ubuntu 安装nvidia driver
错误的命令:sudo apt-get install nvidiar-430好多教程都是这样 sudo apt-get install nvidia-driver-430 很奇怪这个命令变成这样 h ...
- Python核心技术与实战——十一|程序的模块化
我们现在已经总结了Python的基本招式和套路,现在可以写一些不那么简单的系统性工程或代码量较大的应用程序.这时候,一个简单的.py文件就会显得过于臃肿,无法承担一个重量级软件开发的重任.这就需要这一 ...