一种无人值守安装Vmware操作系统的方法与流程

文档序号:11199039阅读:957来源:国知局
一种无人值守安装Vmware操作系统的方法与流程

本发明涉及服务器硬件和软件技术领域,尤其涉及一种无人值守安装vmware操作系统的方法。



背景技术:

从事服务器的操作系统部署时,我们会发现不同操作人员部署的操作系统,安装完毕后可能存在一定的差异,如磁盘分区可能有大有小,安装的软件包也多少不一,很多必要的软件包都没有安装。这就对后期的草祖宗系统使用人员带来了困扰,可能导致他们在使用操作系统的部分服务时,无法启动该服务,或者无法正常加载某些驱动模块,或者第三方的软件无法正常运行。这些都有可能是前期操作系统分区过小,或者有依赖关系的部分软件包没有安装。

排除人为单台部署的差异,及时操作人员都能保证每台vmware虚拟主机部署的一致,但是逐台操作,也会对操作人员带来极大的心理压力。如果操作人员只需要测试一台机器的部署是否功能,进而将成功的结果自动部署到其它待部署的机器上市,这样不仅大大降低了操作人员的工作负担,而且极大的保证了部署一致性。



技术实现要素:

针对以上问题,本发明提出了一种无人值守安装vmware操作系统的方法。基于linux系统创建pxe服务器,并通过对vmware虚拟化操作系统iso的配置,实现虚拟化系统的自动安装。

本发明主要针对服务器大规模部署vmware操作系统时由于各种手动操作,带来的部署相率低,部署一致性差,部署差错率高的问题,将部署方式改为统一的设置部署,提高服务实施效率,提醒产品操作系统一次部署成功率。

本发明的技术方案是:

一种无人值守安装vmware操作系统的方法,主要包括如下步骤:

1)、配置tftp;

2)、配置支持pxe的启动程序;

3)、配置dhcp;

4)、配置ks;

5)、esxi启动测试。

其中,1)配置tftp包括:

1.1)安装tftp-server;

1.2)开启tftp服务器;在centos7下,tftp是被xinetd管控的,tftp的配置是/etc/xinetd.d/tftp,将里面的disable改为no,就可以在启动xinetd的时候开启tftp;

2)配置支持pxe的启动程序;包括

2.1安装syslinux3.86

装syslinux3.86;使用另外一台可以上网的centos,安装syslinux3.86,默认的情况下centos7仓库里是没有syslinux3.86这个版本的,需要另外配置yum仓库;

2.11)更新yum仓库;

2.12)查找一下该rpm包;

2.13)安装syslinux3.86:yuminstallsysliux-3.86;

2.14)将pxelinux.0文件传给另外的主机;

2.2)配置esxi的iso镜像

2.21)首先要挂载esxi的iso的文件;

2.22)在tftp的根目录下新建一个pxelinux.cfg目录;

2.23)将iso镜像中的isolinux.cfg文件复制到pxelinux.cfg目录下,同时更改文件名为default。

3)配置dhcp;包括

3.1)安装dhcp服务器;dhcp的作用是给客户端分配ip地址,并指定tftpserver的配置文件;

3.2)配置dhcp服务器。

4)配置ks;

4.1安装apache服务;

4.2配置ks文件。

5)、esxi启动测试

5.1)重启所有服务;

5.2)新建esxi主机虚拟机;

5.3)测试是否安装在第一块盘。

大规模部署vmware操作系统时,保证了产品的部署一次成功率和一致性。

本发明的有益效果是:

1、降低人为参与,降低服务实施人员的工作量;

2、保障产品部署一次成功率和部署一致性,提升客户使用感受;

3、该技术在常规的windows和linux系统上已经广泛使用,可直接推广到vmwawre上使用,技术成熟性好。

附图说明

图1是pxe工作原理示意图;

图2是系统实现方式流程图。

具体实施方式

下面对本发明的内容进行更加详细的阐述:

1、配置tftp

1.1安装tftp-server

yuminstalltftp-server

1.2开启tftp服务器

在centos7下,tftp是被xinetd管控的,tftp的配置是/etc/xinetd.d/tftp

将里面的disable改为no,就可以在启动xinetd的时候开启tftp了。

~systemctlstartxinetd.service

tftp的根目录是/var/lib/tftpboot/目录,系统启动的很多相关文件都是放置在这个目录下的。

2、配置支持pxe的启动程序

2.1安装syslinux3.86

pxe的启动程序实际上就是客户端加载系统镜像的时候,第一个加载到内存当中的程序,这个程序可以由功能非常强大的syslinux来提供,只要将syslinux里的pxelinu.0这个文件提出来即可。经过测试,必须要使用3.86这个版本的syslinux才可以启动esxi,否则会报错。

由于该centos是不能上网的,所以可以使用另外一台可以上网的centos,安装syslinux3.86,默认的情况下centos7仓库里是没有syslinux3.86这个版本的,需要另外配置yum仓库。

1)更新yum仓库

rpm-uvhhttp://apt.sw.be/redhat/el7/en/x86_64/rpmforge/rpms/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

2)查找一下该rpm包

yum--showduplicatessearchsyslinux

3)安装syslinux3.86:yuminstallsysliux-3.86

4)将pxelinux.0文件传给另外的主机。注意传输的目录

scp/usr/share/syslinux/pxelinux.0192.168.12.2:/var/lib/tftpboot/

2.2配置esxi的iso镜像。

1)首先要挂载esxi的iso的文件

在虚拟机配置里面将cd/dvd指定esxi的iso

挂载iso:mount/dev/cdrom/mnt

将iso文件复制到tftp根目录:cp-rv/mnt/*/var/lib/tftpboot/

2)在tftp的根目录下新建一个pxelinux.cfg目录:

mkdir/var/lib/tftpboot/pxelinux.cfg

3)将iso镜像中的isolinux.cfg文件复制到pxelinux.cfg目录下,同时更改文件名为default

cp/var/lib/tftpboot/isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default

该文件保持默认即可,不用配置。

cat/var/lib/tftpboot/pxelinux.cfg/default

3、配置dhcp服务器

3.1安装dhcp服务器

dhcp的作用是给客户端分配ip地址,并指定tftpserver的配置文件。

1)yuminstalldhcpd–y

3.2配置dhcp服务器

1)dhcp的主配置文件是/etc/dhcp/dhcpd.conf,使用vim编辑改文件:

vim/etc/dhcp/dhcpd.conf确认如下配置

allowbooting;

allowbootp;

class"pxeclients"{

matchifsubstring(optionvendor-class-identifier,0,9)="pxeclient";

next-server192.168.12.2;

filename="pxelinux.0";

}

subnet192.168.12.0netmask255.255.255.0{

range192.168.12.20192.168.12.250;

}

参数说明:

allowbooting允许booting请求

allowbootp支持bootp的协议

class“pxeclients”定义了一个pxeclient的类,类的主机时匹配了pxeclient的客户端,

next-server指定了tftp服务器的地址

filename指定了客户端首先加载到内存的程序

subnet指定了dhcp分配的ip的网段

range指定了分配的ip地址的起始ip和结束ip

2)启动dhcp服务器

systemctlstartdhcpd

4、配置ks文件

4.1安装apache服务

ks文件是esxi主机无人值守安装的关键,该文件可以指定系统安装是所需要的参数。基于pxe的引导方式,ks文件可以位于http、ftp、或者nfs任一种上面。这里使用http来存放ks文件

yuminstallhttpd

4.2配置ks文件

esxi的ks文件位于esxi主机的/etc/vmware/weasel目录下,内容如下

#samplescriptedinstallationfile

#acceptthevmwareenduserlicenseagreement

vmaccepteula

#settherootpasswordforthedcuiandtechsupportmode

rootpwp@ssw0rd

#theinstallmediaisinthecd-romdrive

install--firstdisk--overwritevmfs

#setthenetworktodhcponthefirstnetworkadapter

network--bootproto=dhcp--device=vmnic0

#asamplepost-installscript

%post--interpreter=python--ignorefailure=true

importtime

stampfile=open('/finished.stamp',mode='w')

stampfile.write(time.asctime())

参数说明:

rootpwp@ssw0rd指定默认的密码

install--firstdisk–overwritevmfs系统安装在主机第一块盘,覆盖第一块盘的数据

network--bootproto=dhcp--device=vmnic0使用dhcp的网络协议,第一块网卡

如果没有ks的文件,可以直接复制黏贴成ks.cfg文件即可。

1)在/var/www/html/下创建ks.cfg文件

vim/var/www/html/ks.cfg并将以上配置黏贴过去。

2)启动httpd服务:systemctlstarthttpd

3)在boot.cfg上指定ks文件位置

根据vmware的官方手册说明,配置好了ks文件之后,还需要指定其位置

给boot.cfg添加写的权限chmod+w/var/lib/tftpboot/boot.cfg

编辑boot.cfg文件vim/var/lib/tftpboot/boot.cfg

确认kernelopt这行为:kernelopt=ks=http://192.168.12.2/ks.cfg

5、esxi启动测试

5.1重启所有服务

配置完成了之后,为了确认所有服务都正常启动的,可以重启以上的所有服务

[root@localhost~]#systemctlrestartxinetd.service

[root@localhost~]#systemctlrestartdhcpd.service

[root@localhost~]#systemctlrestarthttpd

[root@localhost~]#

5.2新建esxi主机虚拟机

新建一台esxi主机,并指定vlan20

点击开机之后,跳到了引导画面

多了一个preliminarycheck检查

安装完成,提示重启主机。

5.3测试是否安装在第一块盘

esxi主机的配置了三块盘,分别是40gb、50gb、60gb,40gb的是第一块盘。

安装成功后,登陆该esxi主机,datastore1容量为32gb(安装esxi主机用了8gb),另外还有50gb和60gb的硬盘还没添加。

大规模部署vmware系统,减少客服、运维人员为客户部署操作系统的时间,减少人为操作,提升部署一致性,提高一次部署成功率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1