虚拟机自动安装的原理:
之前,我们已经讲过手动安装虚拟机的过程,但是在一个服务器中,会存在很多台主机,一个个的手动安装太费时间和经历,今天介绍一个自动安装虚拟机的方法。
首先,我们先介绍一个工具,kickstart。
kickstart是redhat公司一个开源项目的名称。我们将手动安装的所有的详细步骤记录到一个文件中,然后kickstart通过读取这个文件就可以实现自动化安装系统。
服务器端:
1.安装dhcp ---->server
并配置dhcp服务,前面已说明
vim /etc/dhcp/dhcpd.conf
2.yum install -y system-config-kickstart.noarch ##安装 kickstart
3.yum install httpd -y ##安装httpd服务,可以让客户端通过http看到编写好的kickstart
systemctl start httpd ##开启httpd服务
systemctl enable httpd ##开机开启httpd服务
4.配置kickstart
system-config-kickstart
1)Basic Configuration ##基本配置
2)Installation Method ##安装方法
3)Boot loader options ##启动项选择
4)Partition Information 分区
添加启动项分区
添加交互分区:用来给内存提供缓存,一般大小为内存的两倍,例如:内存为4G,那么这个分区为8G。如果内存更大,需要更高的倍数,2.5 4倍。用来提高服务器的抗压能力。
其余剩下的全部为根分区:
5)Network Configuration ##网络设置
6)这几项默认
7)Post-Istallation Script ##提前安装脚本,这里安装个yum源
5.把ks.cfg放到httpd
查看ks.cfg
可以继续编辑,下面这些指令为安装lftp
6.vim createvm.sh ##编写创建脚本
vim /mnt/createvm.sh
#!/bin/bash
virt-install\ ##转移字符\表示连接下一行,本行的意思为虚拟机的安装
--name $1\ ##名字 用变量
--ram 1024\ ##内存
--cpus 1\ ##cpu数量
disk /var/lib/libvirt/images/$1.qcow2,bus=virtio,size=10\ ##硬盘为只,大小10G
--network bridge=bro0,model=virtio\ ##网络
--location http://172.25.254.85/yumpak/ ##安装包位置
--extra-args ks=http://172.25.254.185/ks.cfg & ##其余的设置,在ks.cfg &为后台运行
完成后修改权限
chmod +x createvm.sh
./createvm.sh westos2