准备环境
系统:centos7.4.1708
ip地址:eth0:192.168.10.31;eth1:172.16.1.31(可以使用单网卡)
防火墙:关闭
selinux:关闭
工具需求:dhcp;tftp;syslinux;apache;pykickstart
第一步:安装DHCP服务
安装服务:
[root@kickstart ~]# yum -y install dhcp查看服务是否存在:
[root@kickstart ~]# rpm -qa dhcp dhcp-4.2.5-68.el7.centos.1.x86_64配置dhcp配置文件:
[root@kickstart ~]# cat >>/etc/dhcp/dhcpd.conf <<EOF > subnet 192.168.10.0 netmask 255.255.255.0 { > range 192.168.10.50 192.168.10.100; > option subnet-mask 255.255.255.0; > default-lease-time 21600; > max-lease-time 43200; > next-server 192.168.10.31; > filename “/pxelinux.0”; > } > EOF启动dhcp服务:
[root@kickstart ~]# systemctl start dhcpd.service查看状态:
[root@kickstart ~]# ss -utpln | grep dhcpd udp UNCONN 0 0 *:67 *:* users:((“dhcpd”,pid=1643,fd=7))第二步:安装tftp服务
安装服务:
[root@kickstart ~]# yum -y install tftp-server启动tftp服务:
[root@kickstart ~]# systemctl start tftp.socket安装syslinux:不安装则找不到启动文件pxelinux.0
[root@kickstart ~]# yum -y install syslinux查找pxelinux.0文件的位置:
[root@kickstart ~]# rpm -ql syslinux | grep pxelinux.0 /usr/share/syslinux/gpxelinux.0 /usr/share/syslinux/pxelinux.0复制pxelinux.0文件到tftp根目录
[root@kickstart ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/创建光盘挂载目录并挂载光盘:
[root@kickstart ~]# mkdir -p /var/www/html/centos7 [root@kickstart ~]# mount /dev/cdrom /var/www/html/centos7/ mount: /dev/sr0 is write-protected, mounting read-only将光盘中isolinux下所有内容复制到tftp下:
[root@kickstart ~]# cp /var/www/html/centos7/isolinux/* /var/lib/tftpboot/创建pxe配置文件存放目录:
[root@kickstart ~]# mkdir -p /var/lib/tftpboot/pxelinux.cfg并将光盘中的pxe配置文件复制到新创建的目录中:
[root@kickstart ~]# cp /var/www/html/centos7/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default进入到目录中,将默认的配置文件进行备份:
[root@kickstart ~]# mkdir -p /var/www/html/centos7 [root@kickstart ~]# mount /dev/cdrom /var/www/html/centos7/ mount: /dev/sr0 is write-protected, mounting read-only修改default文件:
[root@kickstart pxelinux.cfg]# vim default(个人喜好,清空配置文件,编写简略版配置。清空光标后内容快捷键:dG)
配置文件如下:[root@kickstart pxelinux.cfg]# cat default #yyang centos7 ks install default yyang-ks timeout 5 prompt 0 label yyang-ks kernel vmlinuz append initrd=initrd.img inst.ks=http://192.168.10.31/ks_config/ks.cfg ksdevice=eth0 net.ifnames=0 biosdevname=0(注:net.ifnames=0 biosdevname=0是把7版本的网卡换成eth名称)
第三步:安装Apache网站服务
安装服务:
[root@kickstart ~]# yum -y install httpd启动服务;
[root@kickstart ~]# systemctl start httpd.service查看状态:
[root@kickstart ~]# ss -utpln | grep httpd tcp LISTEN 0 128 :::80 :::* users:((“httpd”,pid=2396,fd=4),(“httpd”,pid=2395,fd=4),(“httpd”,pid=2394,fd=4),(“httpd”,pid=2393,fd=4),(“httpd”,pid=2392,fd=4),(“httpd”,pid=2391,fd=4))登录测试:http://192.168.10.31/centos7
看到以上内容说明网站服务配置成功
第四步:编写ks文件
(ks文件内容可参考anaconda-ks.cfg文件)
创建ks文件存放目录: [root@kickstart ~]# mkdir -p /var/www/html/ks_config进入目录,编写ks文件:
[root@kickstart ~]# cd /var/www/html/ks_config/ [root@kickstart ks_config]# vim ks.cfg文件内容如下:(文件为参考anaconda-ks.cfg文件的简略编写版)
[root@kickstart ks_config]# cat ks.cfg #kickstart config for centos7 by yyang lang en_US keyboard us timezone Asia/Shanghai rootpw 123123 text install auth –enableshadow –passalgo=sha512 url –url=”http://192.168.10.31/centos7″ bootloader –location=mbr zerombr clearpart –all –initlabel part /boot –fstype xfs –size 1024 –ondisk sda part swap –size 2048 –ondisk sda part / –fstype xfs –size 1 –grow –ondisk sda auth –useshadow –enablemd5 network –bootproto=dhcp –device=eth0 –onboot=on –ip=192.168.10.50 –netmask=255.255.255.0 –gateway=192.168.10.254 –nameserver=192.168.10.254 –hostname=yyang network –bootproto=static –device=eth1 –onboot=on –ip=172.16.1.50 –netmask=255.255.255.0 reboot firewall –disabled selinux –disabled skipx %packages @compat-libraries @debugging @development vim wget tree nmap lrzsz dos2unix telnet bash-completion %end安装ks文件检查工具:
[root@kickstart ks_config]# yum -y install pykickstart检查ks文件是否正确:
[root@kickstart ks_config]# ksvalidator ks.cfg(不显示任何内容代表正确)
第五步:创建客户机,测试安装
(注:新建虚拟机内存不低于2G)
(注:本人使用双网卡,且内网网卡使用的LAN区段,实验可只用一块网卡即可)(出现这个页面,基本安装就不会出现什么问题了)
出现登录界面,安装成功
以上就是PXE kickstart自动化部署系统安装的详细内容,更多关于PXE kickstart自动化部署的资料请关注其它相关文章!
暂无评论内容