批量装机环境 配置PXE引导 kickstart自动应答
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量装机环境 配置PXE引导 kickstart自动应答相关的知识,希望对你有一定的参考价值。
虚拟机A
1. 将防火墙状态设置为trusted
2.SELinux当前修改为permissive
3.SELinux永久状态修改为permissive
4.清空Yum缓存,检查Yum是否可用
虚拟机B
1. 将防火墙状态设置为trusted
2.SELinux当前修改为permissive
3.SELinux永久状态修改为permissive
4.清空Yum缓存,检查Yum是否可用
/etc/selinux/config (永久状态配置文件)
########################################################
完成虚拟机访问外网
1.在真机实现,桥设备的创建(br0)
[[email protected] /]# systemctl status NetworkManager(图形的)
[[email protected] /]# systemctl status network (命令行)
[[email protected] /]# systemctl stop NetworkManager(图形的)
[[email protected] /]# systemctl status network (命令行)
vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0 #设备名
TYPE=Bridge #设备类型
BOOTPROTO=none #手工配置IP地址
ONBOOT=yes #开机自起动
IPADDR=172.40.50.114
NETMASK=255.255.255.0
GATEWAY=172.40.50.1
2.让真机的enp2s0真实网卡,连接br0,追加写入
vim /etc/sysconfig/network-scripts/ifcfg-enp2s0
BRIDGE=br0
3.重起network
4.虚拟机有一张网卡,选择br0桥设备
######################################################
部署DHCP服务器
? Dynamic Host Configuration Protocol
– 动态主机配置协议,由 IETF(Internet 网络工程师任
务小组)组织制定,用来简化主机地址分配管理
? 主要分配以下入网参数
–IP地址/子网掩码/广播地址
– 默认网关地址、DNS服务器地址
? DHCP地址分配的四次会话
– DISCOVERY --> OFFER --> REQUEST -->ACK
前提,虚拟机不要桥接真实网络
虚拟机A:
1.装软件包 dhcp
2.配置文件 /etc/dhcp/dhcpd.conf
[[email protected] /]# vim /etc/dhcp/dhcpd.conf
:r /usr/share/doc/dhcp*/dhcpd.conf.example #读入其他文件
subnet 192.168.4.0 netmask 255.255.255.0 { #分配的网段
range 192.168.4.100 192.168.4.200; #分配的IP地址范围
option domain-name-servers 8.8.8.8; #分配DNS
option routers 192.168.4.254; #分配网关
default-lease-time 600; #IP地址默认租用时间
max-lease-time 7200; #IP地址租用最大时间
}
3.起服务 dhcpd
[[email protected] /]# systemctl restart dhcpd
[[email protected] /]# systemctl enable dhcpd
#####################################################
虚拟机A上:
杀死KVM虚拟化中的dnsmasq,dnsmasq会提供DHCP服务,会有冲突
[[email protected] /]# netstat -anptu | grep :67
udp 0 0 0.0.0.0:67 0.0.0.0:* 8051/dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 2392/dnsmasq
[[email protected] /]# killall dnsmasq
[[email protected] /]# netstat -anptu | grep :67
########################################################
? PXE,Pre-boot eXecution Environment
– 预启动执行环境,在操作系统之前运行
– 可用于远程安装
? 工作模式
– PXE client 集成在网卡的启动芯片中
– 当计算机引导时,从网卡芯片中把PXE client调入内存
执行,获取PXE server配置、显示菜单,根据用户选
择将远程引导程序下载到本机运行
#######################################################
PXE网络装机服务器
一、构建DHCP服务
1.指定下一个服务器IP的地址
[[email protected] /]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 {
range 192.168.4.100 192.168.4.200;
option domain-name-servers 8.8.8.8;
option routers 192.168.4.254;
default-lease-time 600;
max-lease-time 7200;
next-server 192.168.4.7; #指定下一个服务器IP地址
filename "pxelinux.0"; #指定网卡引导文件,文件名称
}
2.重起dhcpd服务
pxelinux.0(网卡引导文件):安装说明书,二进制文件
安装一个软件,就可以生成pxelinux.0
#####################################################
二、搭建TFTP服务
TFTP:简单的文件传输协议 端口:69
服务端程序:tftp-server
服务名:tftp
默认共享路径: /var/lib/tftpboot
1.安装tftp-server
2.启动tftp服务,并设置为开机自起
3.部署pxelinux.0文件
# yum provides */pxelinux.0 #查询仓库中哪一个包产生该文件
# yum -y install syslinux
# rpm -ql syslinux #查询软件包,安装清单
# rpm -ql syslinux | grep pxelinux.0
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
# ls /var/lib/tftpboot/
########################################################
pxelinux.0-------》/var/lib/tftpboot/pxelinux.cfg/default
4.部署default默认的菜单文件
# mkdir /var/lib/tftpboot/pxelinux.cfg
# mount /dev/cdrom /mnt/
# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
# ls -l /var/lib/tftpboot/pxelinux.cfg/default
# chmod 644 /var/lib/tftpboot/pxelinux.cfg/default
# ls -l /var/lib/tftpboot/pxelinux.cfg/default
5.部署 图形的模块 vesamenu.c32
# ls /mnt/isolinux/
# cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot/
# ls /var/lib/tftpboot/
6.修改菜单文件/var/lib/tftpboot/pxelinux.cfg/default
# vim /var/lib/tftpboot/pxelinux.cfg/default
......
11 menu title NSD1709 PXE Server !
......
61 label linux
62 menu label Install RHEL7
63 kernel vmlinuz
64 append initrd=initrd.img
7.部署启动内核与驱动程序
#cp /mnt/isolinux/initrd.img /mnt/isolinux/vmlinuz /var/lib/tftpboot/
# ls /var/lib/tftpboot/
initrd.img pxelinux.cfg vmlinuz
pxelinux.0 vesamenu.c32
########################################################
pxelinux.0-------》/var/lib/tftpboot/pxelinux.cfg/default
default------》vesamenu.c32-----》vmlinuz、initrd.img
########################################################
三、FTP服务,传输RPM包
1.搭建vsftpd服务,共享光盘所有内容
2.安装vsftpd软件
3.设置vsftpd服务启动,设置为开机自起动
4.共享光盘所有内容
[[email protected] /]# mkdir /var/ftp/rhel7
[[email protected] /]# mount /dev/cdrom /var/ftp/rhel7
[[email protected] /]# ls /var/ftp/rhel7
[[email protected] /]# firefox ftp://192.168.4.7/rhel7
##################################################
四、无人值守安装,生成应答文件
1.图形生成应答文件程序:system-config-kickstart
2.运行图形程序:system-config-kickstart
读取本地Yum仓库信息,要求Yum仓库客户端配置文件,仓库标识为
[development]
3.运行图形程序:system-config-kickstart
[[email protected] /]# ls /root/ks.cfg
[[email protected] /]# vim /root/ks.cfg
4.搭建vsftpd服务,共享应答文件
[[email protected] /]# cp /root/ks.cfg /var/ftp/
[[email protected] /]# ls /var/ftp/
####################################################
五、通过菜单指定ks.cfg应答文件
[[email protected] /]# vim /var/lib/tftpboot/pxelinux.cfg/default
61 label linux
62 menu label Install RHEL7
63 kernel vmlinuz
64 append initrd=initrd.img ks=ftp://192.168.4.7/ks.cfg
#######################################################
总结:
DHCP------>IP地址、next-server、filename
tftp------>pxelinux.0、default
default---->vesamenu.c32、vmlinuz、initrd.img、ks.cfg
ks.cfg----> url="ftp://192.168.4.7/rhel7"
########################################################
以上是关于批量装机环境 配置PXE引导 kickstart自动应答的主要内容,如果未能解决你的问题,请参考以下文章