PXE装机和kickstart无人值守技术

 

PXE:通过网卡引导的技术
1.BIOS支持
2.网卡支持
3.需要在BIOS中开启(服务器在BMC界面打开)
4.部署一台服务器,安装DHCP和tftp(内存需要大于2G)
5.VM新加一块网卡选择仅主机模式,并且关闭dhcp

[[email protected] ~]# cd /etc/sysconfig/network-scripts/
[[email protected] network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[[email protected] network-scripts]# vim ifcfg-ens37
[[email protected] network-scripts]# systemctl restart netwoek

6.安装和配置dhcp

[[email protected] ~]# yum -y install dhcp 
[[email protected] ~]# cd /etc/dhcp/ 
[[email protected] dhcp]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[[email protected] dhcp]# vim dhcpd.conf 
subnet 192.168.6.0 netmask 255.255.255.0 {   #分配的网段与子网掩码
  range 192.168.6.11 192.168.6.253;          #分配的IP地址范围
  option domain-name-servers 192.168.6.1;   #DNS服务器的IP地址
# option domain-name "example.com";          #DNS服务器的域名
  option routers 192.168.6.1;               #网关地址
  next-server 192.168.6.10;                  #指向TFTP路径
  filename "pxelinux.0";                     #引导文件
# option broadcast-address 192.168.6.255;    #广播地址
# default-lease-time 600;
# max-lease-time 7200;
}

7.安装和配置syslinux和tftp

[[email protected] ~]# yum -y install syslinux tftp-server

[[email protected] ~]# rpm -ql syslinux|grep pxelinux.0
/usr/share/syslinux/pxelinux.0         #pxelinux.0引导文件位置
[[email protected] ~]# rpm -ql tftp-server
/etc/xinetd.d/tftp    #配置文件
/var/lib/tftpboot     #tftp站点       
[[email protected] ~]# vim /etc/xinetd.d/tftp 
        disable                 = no    #改成no

8.复制引导文件pxelinux.0到/var/lib/tftpboot

[[email protected] ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
[[email protected] ~]# cd /var/lib/tftpboot/
[[email protected] tftpboot]# ls
pxelinux.0

9.安装vsftp服务,并将内核和初始化文件复制到tftp站点中

[[email protected] tftpboot]# yum -y install vsftpd
[[email protected] tftpboot]# cd /var/ftp/
[[email protected] ftp]# mkdir centos7
[[email protected] ftp]# mount /dev/cdrom centos7/
[[email protected] ftp]# cd centos7/images/pxeboot/
[[email protected] pxeboot]# cp initrd.img vmlinuz /var/lib/tftpboot/
[[email protected] pxeboot]# ls /var/lib/tftpboot/
initrd.img  pxelinux.0  vmlinuz

10.编辑启动菜单default配置文件,关闭防火墙和SELinux,并开启三个服务

[[email protected] pxeboot]# cd /var/lib/tftpboot/
[[email protected] tftpboot]# mkdir pxelinux.cfg
[[email protected] tftpboot]# ls
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz
[[email protected] tftpboot]# cd pxelinux.cfg/
[[email protected] pxelinux.cfg]# vim default


default auto   #默认自动
prompt 0       #设置用户是否等待选择,1选择。0不选择

label auto
        kernel vmlinuz
        append initrd=initrd.img method=ftp://192.168.6.10/centos7

label linux text              #文本模式
        kernel vmlinuz
        append text initrd=initrd.img method=ftp://192.168.6.10/centos7
                              #急救模式
label linux rescue
        kernel vmlinuz
        append rescue text initrd=initrd.img method=ftp://192.168.6.10/centos7

[[email protected] ~]# systemctl stop firewalld
[[email protected] ~]# systemctl disable firewalld
[[email protected] ~]# setenforce 0
[[email protected] ~]# systemctl start tftp
[[email protected] ~]# systemctl start dhcpd
[[email protected] ~]# systemctl start vsftpd
[[email protected] ~]# systemctl enable tftp
[[email protected] ~]# systemctl enable dhcpd
[[email protected] ~]# systemctl enable vsftpd

kickstart无人值守技术

1.安装kickstart软件

[[email protected] ~]# yum -y install system-config-kickstart 

2.对kickstart进行设置(保存文件可以先保存在别处,在移动到/var/ftp目录下)

PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术

 

PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术

PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术PXE装机和kickstart无人值守技术

3.将安装软件包的模板复制到ks.cfg中,并在/var/lib/tftproot中引导加载模板,让其生效

[[email protected] ~]# ls /var/ftp/
centos7  ks.cfg  pub
[[email protected] ~]# cd /root/
[[email protected] ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg
[[email protected] ~]# cat anaconda-ks.cfg  #将anaconda-ks.cfg的安装软件包模板复制到/var/ftp下的ks.cfg中
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools

%end
[[email protected] ~]# vim /var/ftp/ks.cfg #将以上内容插入文件末尾

4.引导加载ks.cfg模板到/var/lib/tftproot/pxelinux.cfg/下的default文件中

[[email protected] ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 
default auto
prompt 0

label auto
        kernel vmlinuz
        append initrd=initrd.img method=ftp://192.168.6.10/centos7 ks=ftp://192.
168.6.10/ks.cfg

label linux text
        kernel vmlinuz
        append text initrd=initrd.img method=ftp://192.168.6.10/centos7

label linux rescue
        kernel vmlinuz
        append rescue text initrd=initrd.img method=ftp://192.168.6.10/centos7

5.新建虚拟机,然后选择仅主机模式进行安装