PXE批量自动部署linux系统环境

1、基础网络建设与搭建DHCP服务

1)配置静态IP地址并重起网卡

cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=10.0.0.4
NETMASK=255.255.255.0
GATEWAY=10.0.0.2

/etc/init.d/network restart
ifconfig eth0

2)安装配置DHCP服务

yum -y install dhcp
vim /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
option domain-name-servers 202.106.0.20;   #DNS地址可配置2个用逗号分隔
ignore client-updates;

subnet 10.0.0.0 netmask 255.255.255.0 {
  range 10.0.0.100 10.0.0.150;              #宣告获取地址段
  option subnet-mask 255.255.255.0;         #子网
  option routers 10.0.0.2;                  #获取网关地址
  next-server 10.0.0.4;                     #重点配置PEX地址
  filename "pxelinux.0";                    #内核文件名

#配置开机自启动
chkconfig --add dhcpd
chkconfig dhcpd on
chkconfig --list dhcpd
#查看DHCP监听端口好UDP 67
netstat -lntup|grep 67

2、搭建TFTP服务

yum -y install tftp-server tftp

vim /etc/xinetd.d/tftp
#配置TFTP配置文件:
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /tftpboot          #修改TFTP服务目录
        disable                 = no                    #修改为no,启动TFTP
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

#配置自启动
chkconfig tftp on
chkconfig --list tftp
chkconfig --list xinetd
#重启动xinetd服务,TFTP是由xinetd服务运行的
/etc/init.d/xinetd restart
netstat -lntup|grep 69 ;netstat -a|grep tftp
udp 0 0 0.0.0.0:69 0.0.0.0:* 1877/xinetd
udp 0 0 *:tftp
#TFTP端口号为UDP的69
#测试下载
mkdir /tftpboot
cd /tftpboot/
touch test.txt
ls
test.txt
cd ..
tftp 10.0.0.4 -c get test.txt
ls #下载成功!
test.txt

3、搭建HTTP服务

yum -y install httpd
#配置自启动
chkconfig --add httpd
chkconfig httpd on
chkconfig --list httpd
#启动http服务
/etc/init.d/httpd start
netstat -lntup|grep 80

#使用浏览器测试
http://10.0.0.4

4、组建PXE服务环境

1)安装syslinux包
yum -y install syslinux
#如不安装syslinux包就没有pxelinux.0文件
find / -type f -name "pxelinux.0"
/usr/share/syslinux/pxelinux.0
#将pxelinux.0拷贝到tftp服务目录
cp /usr/share/syslinux/pxelinux.0 /tftpboot/
#在tftp服务目录下创建pxelinux.cfg目录
mkdir /tftpboot/pxelinux.cfg -p
2)挂载linux系统盘,拷贝linux内核,初始化镜像文件
mkdir -p /media/cdrom
mount -t iso9660 -o loop /dev/sr0 /media/cdrom
cd /media/cdrom/images/pxeboot
cp vmlinuz initrd.img /tftpboot/
cd /tftpboot/
ls
initrd.img pxelinux.0 pxelinux.cfg vmlinuz
#配置启动菜单文件,将系统自带的启动文件拷贝到TFTP目录下改名为
cp /media/cdrom/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
#修改启动菜单文件

cat default 

default auto   #指定默认启动项
prompt 0       #为0时不选择自动按默认安装,为1时可选择选项安装

label auto     #配置选项auto
  kernel vmlinuz   #指定内核
  append initrd=initrd.img ks=http://10.0.0.4/ks.cfg devfs=nomount ramdisk_size=8192   #指定自动安装文件ks.cfg
label linux text
  kernel vmlinuz
  append initrd=initrd.img devfs=nomount ramdisk_size=8192
label rescue
  kernel vmlinuz
  append initrd=initrd.img rescue
#重启动TFTP服务加载配置
/etc/init.d/xinetd restart

5、创建kickstart文件

1)安装system-config-kickstart
yum -y install system-config-kickstart
#注意安装桌面服务才能启动KICKSTART,创建启动文件
/usr/bin/system-config-kickstart

cat ks.cfg
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration关闭防火墙
firewall --disabled
# Install OS instead of upgrade 安装系统
install
# Use network installation  使用网络安装,这里配置http获取安装包
url --url="http://192.168.146.128/"
key --skip
# Root password  配置ROOT密码
rootpw --iscrypted $1$jIsDXG2F$EGT.VAhEBlZ/ww9GNOTo7.
# System authorization information 系统授权信息
auth  --useshadow  --passalgo=md5
# Use graphical install 图形安装
graphical
# System keyboard 配置键盘
keyboard us
# System language 配置系统语言
lang en_US
# SELinux configuration 关闭selinux
selinux --disabled
# Do not configure the X Window System 不安装图形界面
skipx
# Installation logging level 安装系统日志记录级别
logging --level=info
# Reboot after installation 安装完重新引导
reboot
# System timezone  #配置时区
timezone  Asia/Shanghai
# Network information 配置网络为自动获取
network  --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration 系统引导程序配置
bootloader --location=mbr
# Clear the Master Boot Record 清除主引导记录
zerombr
# Partition clearing information 分区信息
clearpart --all
# Disk partitioning information  指定分区大小
part swap --fstype="swap" --size=2048
part /boot --fstype="ext4" --size=200
part / --fstype="ext4" --grow --size=1

%packages
@base
@compat-libraries
@debugging
@development

%end

#将应答脚本拷贝到http目录,并赋予权限
cp ks.cfg /var/www/html/
chown apache.apache /var/www/html/ks.cfg

6、启动客户机安装

注意:客户机要和服务器在同一个局域网内
如果使用vmware做实验,需要关闭VMware自带的DHCP功能

排除思路:
1)客户机是否获取IP地址,可查看网络和DHCP服务
2)查看链接TFTP是否正常
如链接正常在获取IP地址后会显示:
TFTP prefix:
trying to load: pxelinux.cfg/default ok
然后加载内核:
loading vmlinuz........
loading initrd.img.........
3)加载完内核后会链接下载安装系统文件,如tfp,http获取等

时间: 2024-08-03 16:57:04

PXE批量自动部署linux系统环境的相关文章

Cobbler全自动批量安装部署Linux系统

前言:这篇文章是系统运维www.osyunwei.com的作品,我只是根据实践了一下,出于对原作者的尊重附原文链接如下: 原文链接:http://www.osyunwei.com/archives/7606.html 根据文章的说明是可以完成所属功能的,不过原文章有点小问题,在本文中我已经修改过了,仅供大家参考,有问题大家交流,E-mail:[email protected] 安装之前的一点说明 Cobbler服务器系统:CentOS5.10 64位 IP地址:192.168.21.128 需要

Kickstart+HTTP+DHCP+TFTP全自动批量安装部署Linux系统

说明: Kickstart服务器系统:CentOS 6.5 64位 IP地址:192.168.0.250 需要安装部署的Linux系统:CentOS 6.5 64位 eth0(第一块网卡,用于外网)IP地址段:60.28.x.x eth1(第二块网卡,用于内网)IP地址段:192.168.0.128 子网掩码:255.255.255.128 网关:192.168.0.250 DNS:114.114.115.115 8.8.4.4 所有服务器均支持PXE网络启动 实现目的:通过配置Kickstar

PXE 批量自动装机过程

实验目的:实现批量自动装机实验环境:linux系统 win7系统实验要求:linux作为服务端且与win7系统能够互联互通说明:PXE自动装机有三个服务作为基础,分别是:DHCP TFTP FTP且在此之前,yum仓库要创建好 1.首先测试两台机是否能互联互通,如若不通,检查原因,使之能达到要求 2.安装tftp服务 3.执行命令:vim /etc/xinetd.d/tftp 进入tftp配置文件,开启功能 4.然后安装dhcp服务 5 . 执行命令: cp /usr/share/doc/dhc

Cobbler实现自动化无人值守网络批量安装部署Linux系统

一.Cobbler(直译为补鞋匠) 使用 Cobbler,您无需进行人工干预即可安装机器.Cobbler 设置一个 PXE 引导环境(它还可使用 yaboot 支持 PowerPC),并控制与安装相关的所有方面,比如网络引导服务(DHCP 和 TFTP)与存储库镜像.当希望安装一台新机器时,Cobbler 可以: 1.使用一个以前定义的模板来配置 DHCP 服务(如果启用了管理 DHCP) 2.将一个存储库(yum 或 rsync)建立镜像或解压缩一个媒介,以注册一个新操作系统 3.在 DHCP

cobbler 批量自动化部署 Linux 系统

实验介绍:Cobbler自动化部署linux系统,比PXE部署方式效率更高,因此在大多环境中,以cobbler 方式部署系统,更为方便:具体步骤如下所示: 若描述有误欢迎拍砖交流QQ:45223208 1.安装cobbler 和 DHCP服务: yum install cobbler -y yum install dhcp -y 2. 启动服务 systemctl start cobbler tftp httpd systemctl enable cobbler tftp httpd 3. 根据

PXE批量自动装机Centos 7

设置静态IP关闭防火墙 systemctl stop firewalld iptables -F setenforce 0PXE部署一部署FTP服务,安装包vsftpd 1建立共享文件夹 (可以拷贝光碟文件到centos7下,也可直接挂载) mkdir /var/ftp/centos7 2启动FTP服务,设置开机自启 vsftpd二部署TFTP服务,安装包tftp-server 1开启TFTP服务,要修改配置文件 vim /etc/xinetd.d/tftp wait = no disabled

无人值守批量自动安装Linux操作系统

项目描述: 这是一个模拟企业无人值守批量安装服务器的项目,在服务器上搭建DHCP.TFTP.NFS等服务,利用kickstart文件的配置自动安装脚本,实现自动配置DNS,分配主机名等相关信息. 客户端从DHCP服务器上获得IP,从而从服务器下载引导程序pxelinux.0及配vmlinuz内核,镜像及从kickstart配置声明下载相关的软件包完成安装. 该项目可以提高效率,高质量同时安装大批量Linux系统,为企业节省大量人力物力 责任描述: 通过理解无人值守的工作流程,确保方案的正确性及可

cobbler全自动批量安装部署linux

1.安装cobbler cobbler可以手动编译安装,也可以基于yum源的安装,如果使用yum源安装,则需要配置epel源epel源可以通过下载官网的epel源的目录来实现.由于cobbler是由python而写,所以还要安装python环境. https://fedoraproject.org/wiki/EPEL # yum -y install cobbler cobbler-web pykickstart debmirror httpd python 2.检查配置文件,需要在启动cobb

Zabbix agent批量自动部署

感谢李大神的帮助~ 废话:系统大批量上线时,我们一个个去装agent,有点枯燥,这里分享个expect结合上一篇<zabbix自动发现>,可以省不少工时. 准备工作: 1.下载客户端去吧https://www.zabbix.com/download_agents 2.跑脚本的主机192.168.2.100 1)下载的客户端放在了/opt下面 2)需要安装agent的(ip)和(passwd)信息,放在了ip_list.sh文件中 # vim /opt/ip_list.sh 192.168.2.