PXE高效批量网络装机及kickstart无人值守安装

目录

一.PXE基础知识

二.PXE使用服务

三.高效批量网络装机实操

四.kickstart 无人值守安装

五.cobbler的使用

5.1.cobbler的工作原理

5.2.模拟操作


一.PXE基础知识

PXE使用条件:客户机与PXE服务器必须在同一交换机上,服务器可以分配ip地址给客户机,客户机内存必须大于2G

做pxe需要4大文件:

vmlinuxz内核映像,initrd.img,精简的linux系统的文件系统驱动, isolinux.cfg启动菜单的配置文件,pxelinux.0 小型的grub程序

二.PXE使用服务

dhcp:必须有dhcp服务分配ip,裸机无ip地址。网卡功能,自动获取ip地址,配置dhcp时告诉tftp服务器地址给裸机客户端。

TFTP:UDP协议,通过此协议将需要的文件下载到网卡,网卡自带功能。网卡不支持ftp。

FTP:装软件包时数据过大,tftp不能保证传输。

SYSLINUX-EXTLINUX.X86_64:小型的grub引导程序。

SYSTEM-CONFIG-KICKSTART:KICKSTART无人值守安装

三.高效批量网络装机实操

①安装tftp-server,vsftp,syslinux,dhcp软件

yum install tftp-server   vsftpd   syslinux  dhcp   -y

②配置dhcp服务

 cat /etc/dhcp/dhcpd.conf       #查看dhcp服务真实配置文件位置
dhcpd.conf显示配置文件在/usr/share/doc/dhcp*/dhcpd.conf.example


cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
#将真实配置文件拷贝到/etc/dhcp/目录下并命名dhcpd.conf,询问是否覆盖输入yes覆盖


vim /etc/dhcp/dhcpd.conf                #编辑拷贝过来的dhcp配置文件

③修改tftp配置文件

rpm -ql tftp-server                   # 查找tftp服务相关的文件

vim /etc/xinetd.d/tftp                # 修改tftp配置文件

 

④将pxelinux.0文件拷贝到站点文件里

rpm -ql syslinux | grep "pxelinux.0"                  # 查找pxelinux.0文件

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/  # 拷贝pxelinus.0到站点文件

⑤在vsftpd文件的家目录新建文件夹,并将光驱挂载到新文件夹上


cd /var/ftp/              #切换到ftp的家目录

mkdir centos7             #建立新文件夹

mount /dev/sr0 centos7/   #将光驱挂载到新建文件夹上

⑥将四大文件中的两个文件从/var/ftp/centos7/image/pxeboot中拷贝到站点文件加中 

cd /var/ftp/centos7/images/pxeboot             #切换到目标目录下

cp initrd.img /var/lib/tftpboot/               #拷贝initrd.img至站点文件夹下

cp vmlinuz /var/lib/tftpboot/                  #拷贝vmlinuz至站点文件夹下

⑦ 手动创建第四大文件,在站点文件夹下

[root@zrsb pxeboot]#cd /var/lib/tftpboot/
[root@zrsb tftpboot]#mkdir pxelinux.cfg

[root@zrsb tftpboot]#cd pxelinux.cfg/
[root@zrsb pxelinux.cfg]#vim default

default  zrsb
timeout  600

lable  zrsb
       kernel  vmlinuz
       append initrd=initrd.img
       methond=ftp://192.168.47.100/centos7

lable  test
       kernel  vmlinuz
       append test initrd=initrd.img
       methond=ftp://192.168.47.100/centos7

lable  recuse
       kernel  vmlinuz
       append recuse initrd=initrd.img
       methond=ftp://192.168.47.100/centos7

 

⑧查看防火墙和selinux是否关闭,关闭之后再开启dhcpd服务、tfpt服务、vsftp服务 

[root@zrsb pxelinux.cfg]#systemctl status firewalld.service  #查看防火墙的状态

[root@zrsb pxelinux.cfg]#getenforce                          # 查看selinux的状态

[root@zrsb pxelinux.cfg]#systemctl start dhcpd               # 开启dhcpd服务

[root@zrsb pxelinux.cfg]#systemctl start tftp                # 开启tftp服务
   
[root@zrsb pxelinux.cfg]#systemctl start vsftpd              # 开启vsftp服务
 

⑨新建一个机器进行测试(使用虚拟机进行模拟)

 

 

四.kickstart 无人值守安装

①安装kickstart软件

yum install system-config-kickstart -y

②在虚拟机上使用图形化界面设置,初始化后的安装设置

(1)使用kickstar工具设置基本配置

 (2)安装方法

(3)引导文件

(4)分区,boot分区4G,swap分区4G,根(/)分区剩下所有空间

 

 

 

(5)网络配置 

(6)防火墙与selinux设置

(7)显示配置,安装字符界面

(8)安装后脚本

(9)保存操作,及保存位置/etc/ftp/ks.cfg

 

③设置好之后,修改配置文件/var/lib/tftpboot/pxelinux.cfg/default

[root@zrsb pxelinux.cfg]#vim default

ks=ftp://192.168.47.100/ks.cfg

④可选择较low的图形界面选择安装的系统,也可以不选择,直接安装

(1)将/usr/share/syslinux/下的menu.c32拷贝到/var/lib/tftpboot/站点文件夹下

[root@zrsb ~]# cp /usr/share/syslinux/menu.c32 . 

(2)然后修改default

⑤ 客户机测试

步骤四4可以不做,不做4,不会出现下面的界面,直接开机安装,需要等好久之后 

 

五.cobbler的使用

5.1.cobbler的工作原理

(1)client裸机配置了从网络启动后,开机后会广播包请求DHCP服务器(cobbler server)发送其分配好的一个IP

(2)DHCP服务器(cobbler server)收到请求后发送responese,包括其ip地址

(3)client裸机拿到ip后再向cobbler server发送请求OS引导文件的请求

(4)cobbler server告诉裸机OS引导文件的名字和TFTP server的ip和port

(5)client裸机通过上面告知的TFTP server地址通信,下载引导文件

(6)client裸机执行执行该引导文件,确定加载信息,选择要安装的os,期间会再向cobbler server请求kickstart文件和os image

(7)cobbler server发送请求的kickstart和os iamge

(8)client裸机加载kickstart文件

(9)client裸机接收os image,安装该os image

5.2.模拟操作

①安装相关包并启动服务

yum install epel-release.noarch -y             # 安装epel源

yum install -y cobbler dhcp httpd tftp -y      # 安装相关软件

systemctl start cobblerd httpd tftp            #启动软件,其中dhcp最后启动

②cobbler检查系统环境 

cobbler check

③生成root的新密码

openssl passwd -1 '123123'

④修改cobbler的配置文件 

vim /etc/cobbler/settings        # 修改配置文件

# 将生成的root密码的密文填入101行

101行   default_password_crypted: "$1$M/ZUUj1u$yZAWhaOD/Uw7ZSRmKo5gu/"

# 将242行的0改成1,表示通过cobbler生成dhcpd.conf的配置文件

242行   manage_dhcp: 1

# 将dhcp获取地址后的下一个服务(tftp服务)的IP填入278行

278行   next_server: 192.168.47.3

# 将298行的0改成1,表示防止重复安装操作系统

298行   pxe_just_once: 1

# 在390行,将IP地址改为cobbler服务器的IP地址

390行   server: 192.168.47.3

⑤重新启动cobbler服务

systemctl restart cobblerd.service

⑥修改通过cobbler服务生成dhcp.conf配置文件的dhcp的模板文件

vim /etc/cobbler/dhcp.template

subnet 192.168.47.0 netmask 255.255.255.0 {
     option routers             192.168.47.2;
     option domain-name-servers 8.8.8.8;
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.47.10 192.168.47.50;

⑦同步cobbler

cobbler sync

⑧导入CentOS系统的安装文件,生成相应的YUM源

mount  /dev/sr0   /mnt    #将光驱挂载到mnt下

cobbler import --name=centos-7-x86_64 --path=/mnt --arch=x86_64

# 从/mnt下,将名为centos-7-x86_64的系统导入cobbler服务器中

cobbler system add --name=default --profile=centos-7-x86_64

# 设置默认安装菜单, 这样未装系统的设备会自动从pxe引导启动你需要安装的系统, 
不需要再手动接显示器选了。此操作也可以不做

⑨新建一个虚拟机测试

直接启动虚拟机

等待一段时间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值