VMware Linux VDI 批量部署

  在博客VMware Linux VDI安装步骤中我们介绍了VMware Linux VDI的安装步骤。在本篇博客中,我们来详细介绍如何批量部署VMwareLinux VDI,并讲解在碰到一些常规问题时如何解决。

VMware Linux VDI支持四种Linux系统,RHEL,CentOS,Ubuntu,中标麒麟,这里所有的步骤都以中标麒麟为例。


前提条件:

1. 请参考VMware Linux VDI安装步骤中列出的前提条件。

2. 准备Linux虚拟机,安装中标麒麟操作系统。这里我们称该机器为模板机。

3. 在模板机上重新安装VMware Tools, 请参考VMware Linux VDI安装步骤中步骤一。

4. 在模板机上配置防火墙,请参考VMware Linux VDI安装步骤中步骤三。

5. 下载并安装vSphere PowerCLI 5.5 Release 2到你的工作机上,下载链接:https://my.vmware.com/web/vmware/details?productId=353&downloadGroup=PCLI550R2

6. 下载VMware Linux View Agent到你的工作机上。


步骤:

. 在模板机安装JRE包

二.配置用户权限并打快照

. 创建自定义规范管理器

四.使用脚本批量创建VM并安装View Agent


一、在模板机安装JRE包

在中标麒麟操作系统上,View Agent需要Oracle jre-7u75 (1.7.0_75), 下载链接:http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html

尽管View Agent在安装过程中会自动检测JRE的版本并且下载更新,但是这个过程可能会花比较长的时间而导致后面的脚本失败。所以好的办法是预先在模板机上装好对应的JRE

安装JRE的命令如下:

sudorpm -i jre-7u75-linux-i586.rpm 

或者

sudorpm -i jre-7u75-linux-x64.rpm

 

二、配置用户权限并打快照


配置用户权限

由于在克隆虚机之后需要使用脚本安装ViewAgent,所以需要一个在运行sudo命令时不需要输入密码的用户。

给模板机配置用户权限分两步,第一步就是你要有个用户。正常你在安装中标麒麟操作系统的时候就会创建一个,用那个用户即可。

第二步就是修改文件/etc/sudoers将“YourUsernameALL=(ALL) NOPASSWD: ALL”加入其中,然后注释掉Defaultsrequiretty

注意

·        请将YourUsername替换成实际的用户名

·        强烈推荐使用命令visudo来修改文件/etc/sudoers

·        如果在将“YourUsernameALL=(ALL) NOPASSWD: ALL”加入到文件/etc/sudoers之后,用户在运行sudo命令时仍然被要求输入密码。请将“YourUsername ALL=(ALL) NOPASSWD:ALL”放到/etc/sudoers的末尾,也就是“#includedir /etc/sudoers.d”之后


打快照

将模板机关机,然后执行快照。


三、创建自定义规范管理器

1. 使用vSphere 客户端连接到vCenter服务器上。或者用浏览器连接到vCenter服务器也可以。这里以vSphere客户端为例。在主页上点击自定义规范管理器

技术分享

2. vSphere客户端跳转到自定义规范管理器界面。单击新建

在打开的对话框里,选择Linux作为目标虚拟机操作系统,并输入自定义规范名称

点击下一步

技术分享

3. 在计算机名称页面里,选择使用虚拟机名称,并输入域名。点击下一步

技术分享

4. 在时区页面里选择时区。点击下一步

5. 在网络页面里选择典型配置。点击下一步

技术分享

6. 在DNS和域设置页面里配置DNS和域。点击下一步

请将相应的值换成实际环境中的值。点击下一步

技术分享

7. 点击完成。


四、使用脚本批量创建VM并安装View Agent

如果你参加了我们的Early Access Program(链接:http://www.surveymethods.com/EndUser.aspx?DFFB978FDE988B88D4),你可以在下载安装文件的同时下载到说明文档horizon-6-for-linux-v1.0.pdf。该文档介绍了相关的PowerCLI脚本。这里我们用到两个脚本和一个CSV文件。下面详细介绍。

或者你可以去这里(https://communities.vmware.com/thread/506874)下载包DeployLinuAgent.zip.

完成以下三个步骤来准备脚本和CSV文件:

1.Sample PowerCLI Script to Clone Linux Desktop Machines:克隆机器的脚本。保存为CloneVMs.ps1

2.Sample PowerCLI Script to Install View Agent on LinuxDesktops:在虚机上批量安装View Agent的脚本。保存为InstallAgent.ps1

3. 上述两个脚本都需要一个CSV文件,其中列出了需要克隆的机器的相关信息。如果你没有修改脚本,那么这个CSV文件的文件名必须是CloneVMs.csv下面是一个例子:

技术分享

各列涵义如下:

·        VMName:新建虚机的名字。

·        Parentvm:模板机的名字。

·        CustomSpec:前面创建的自定义规范管理器

·        Datastore:模板机所在的ESXi所挂的存储器。新建的虚机会被存放到这个存储器上。

·        Host:模板机所在ESXiIP地址

·        FromSnaphot:模板机的快照

·        DeletedPresent:如果当前要创建的虚机已存在,是否要删除。

到此为止,一切就绪!下面开始克隆虚机并安装View Agent


克隆虚机

在你的工作机上,打开VMware vSphere PowerCLI,运行脚本CloneVMs.ps1。根据提示输入参数。

>.\CloneVMs.ps1

Your vCenter address: 10.111.x.x

Your vCenter admin user name: root

Your vCenter admin user password: ******

Clone Type (“linked” or “full”): full

请将上面四个参数换成实际值。vCenter指管理模板机所在的ESXivCenter

关于克隆速度。在我的环境中,模板机的大小为10G,在全克隆的模式下,大概3分钟内可以克隆完成。

另外该脚本是串行进行克隆虚机的。你可以手动多起几个命令行来达到并行的目的。方式就是多存几份脚本CloneVMs.ps1CloneVMs.csv并修改CloneVMs.ps1将其指向对应的CSV文件。要注意各个CSV文件的虚机名应该不相同。

在我的环境里,我同时起了5个克隆虚机的脚本。速度大概提高50%

想要提高速度的另外一个方法就是可以采用链接克隆。

克隆完成,等到虚机的VMwareTools跑起来之后就可以开始使用脚本安装View Agent了。

技术分享


安装View Agent

打开VMware vSphere PowerCLI,运行脚本InstallAgent.ps1。根据提示输入参数。要注意该脚本所指向的CSV文件应该与前面克隆虚机时所使用的CSV文件相同。

>.\InstallAgent.ps1

YourvCenter address: 10.111.x.x

YourvCenter admin user name: root

YourvCenter admin user password: *******

--------------------------------------------------

YourESXi host admin user name, such as root: root

YourESXi host admin user password: *******

--------------------------------------------------

YourVM guest OS user name: euc

YourVM guest OS user password: *******

--------------------------------------------------

Typethe View Agent tar ball path. Please take care of the installer arch:.\VMware-viewagentlinux-x86_64-1.0-1234567.tar

--------------------------------------------------

Typethe View Connection Server address: 10.117.x.x

Typethe View Connection Server Admin user name: viewadmin

Pleasetype the View Connection Server Admin user password. Please note that specialcharacter in password may not work with the script

Yourbroker admin password: *******

Typethe View Connection Server Admin user domain name: ad-euc


请将上面所有参数换成实际值。

vCenter指管理模板机所在的ESXivCenter

ESXi指模板机所在ESXi

VM guest OS username指在第二步中配置了权限用户

View Agent tarball path指存放在运行该脚本的机器上的Linux View Agent安装文件。

 

命令行运行结束之后,所有的Linux虚机就都注册到连接服务器上了。可以紧接着创建Linux桌面池了。

 

这次我们就写到这里,以后我们会继续更新的!


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。