目录

前言

RHEV-H在RHEV中作为虚拟机的载体,一个RHEV-M可以最多管理500个RHEV-H。当企业需要部署大规模的虚拟化平台时,需要大量的安装RHEV-H,这时PXE自动安装无疑是一个非常好的选择。当然我们也顺带的做一个安装RHEL6的PXE任务。

软件环境

  • 系统

    • RHEL 6.4
  • 软件
    • RHEV 3.2

前提

安装一个RHEL6作为PXE Server,并且做如下两点基本准备:

1. 正常配置静态 IP 地址(192.168.0.4),并根据需要配置网关、DNS、Hostname。

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:1D:28:25"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="e33341c7-6726-4f3d-ba30-173b9ec38420"
IPADDR=192.168.0.4
GETWARY=192.168.0.4
NETMASK=255.255.255.0
  1. 关闭防火墙及SELinux
service iptables stop
chkconfig iptables off setenforce 0

部署 PXE 环境

使用 yum 安装所需软件

如果是 redhat 付费用户,可以直接使用 redhat 官方 yum 联网安装。非付费用户可以利用 DVD 安装光盘作为 yum 源。利用 DVD 关盘作为 yum 源,方法如下:

1). 将 DVD 光盘放入虚拟机。并卸除默认挂载,将其重新挂载到/media

umount /dev/cdrom
mount /dev/cdrom /media

2). 配置 yum 的配置文件。将 DVD 光盘作为 yum 源。

vim /etc/yum.repos.d/localhost.repo

[localhost]
name=localhost
baseurl=file:///media
enabled=1
gpgcheck=0

检测YUM源

yum list

3). 安装应用服务软件

yum install  -y  dhcp  syslinux  tftp-server  vsftpd 

配置 DHCP

DHCP用于分配 IP 地址,以及指定 TFTP 服务器和 PXE 引导文件。

1). 修改 DHCP 主配置文件

vim /etc/dhcp/dhcpd.conf

subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.200;
next-server 192.168.0.4;
filename "pxelinux.0";
}

2). 启动 DHCP 服务,并设置开机启动

service dhcpd start
chkconfig dhcpd on

配置 TFTP-Server

1). 修改 xinetd 中涉及 TFTP-Server 的文件

vim /etc/xinetd.d/tftp

将其中的disable = yes改为disable = no

service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}

2). 启动 TFTP-Server,并设置开机启动

service xinetd start
chkconfig xinetd on

3). 复制内核文件,初始化镜像文件及 PXE 引导文件到 TFTP-Server 的根目录

cp  /media/isolinux/*  /var/lib/tftpboot/
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

4). 在 TFTP-Server 的根目录中设置默认启动菜单文

mkdir  /var/lib/tftpboot/pxelinux.cfg
cd /var/lib/tftpboot/
cp isolinux.cfg pxelinux.cfg/default

配置 vsftpd 服务,用于提供安装系统所需软件包

1). 创建目录,用于存放 DVD 光盘

mkdir /var/ftp/dvd 

2). 将 DVD 光盘镜像的内容复制到/var/ftp/dvd 或将 DVD 直接挂载到/var/ftp/dvd

cp -a /media/*  /var/ftp/dvd/ 

或者

···

mount /dev/cdrom /var/ftp/dvd

···

3). 启动 vsftpd,并设置开机启动

service vsftpd start
chkconfig vsftpd on

安装 kickstart,并配置自动应答文件

1). 安装 system-config-kickstart

yum  install  -y  system-config-kickstart 

2). 运行 kickstart 创建 ks.cfg 文件

system-config-kickstart 

在图形化界面配置 ks.cfg 文件。下列截图作为参考

3). 将配置保存为 ks.cfg,并将 ks.cfg 文件复制到/var/ftp 目录中

修改 pxe 默认菜单启动文件

实现 pxe 无人值守安装

vim /var/lib/tftpboot/pxelinux.cfg/default

efault linux
prompt 0
#timeout 600 display boot.msg menu background splash.jpg
menu title Welcome to Red Hat Enterprise Linux 6.3!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000 label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append ks=ftp://192.168.0.4/ks.cfg initrd=initrd.img

测试使用 PXE 无人值守安装 RHEL6.4

制作RHEL6和RHEV-H的PXE无人值守文件

使用 RHEV3.2的ISO镜像设置 yum 源

1). 暂时卸载并从虚拟机中弹出原有的 rhel6.4DVD 光盘镜像

umount  /dev/cdrom 

2). 向虚拟机中插入 rhev3.2 光盘镜像,并将镜像内容复制到/rhev 目录中

mkdir /rhev
mount /dev/cdrom /mnt
cp -a /mnt/* /rhev

3). 设置 rhev 的 yum 源

vim /etc/yum.repos.d/rhev.repo

[rhev]
name=rhev
baseurl=file:///rhev
enabled=1
gpgcheck=0

4). 卸载 rhev3.2 的 iso 镜像,从虚拟机弹出并插入 rhel6.4DVD 镜像,挂载到/media

umount   /dev/cdrom 

mount  /dev/cdrom   /media
mount /dev/cdrom /var/ftp/dvd/

用 yum 安装 rhev-hypervisor 或从 redhat 官网下载 rhev-H 的 iso 镜像

yum  install  rhev-hypervisor6* 

从 rhev-H 的 ISO 镜像中获取 PXE 安装文件制作脚本,并生成 rhev-H 的 PXE 文件

1). 将 rhev-hypervisor 的 iso 镜像挂载到/mnt 目录

cd  /usr/share/rhev-hypervisor
mount -o loop rhevh-6.4-20130912.1.el6_4.iso /mnt

2). 复制出 PXE 安装文件制作脚本

cd /mnt/LiveOS
cp livecd-iso-to-pxeboot /root

3). 卸载 rhev-hypervisor 光盘镜像,并生成 PXE 安装文件

umount /mnt
umount /media
cd /root
./livecd-iso-to-pxeboot rhevh-6.4-20130912.1.el6_4.iso

Create the PXEfile Successfully:

#Output
Your pxeboot image is complete. Copy tftpboot/ subdirectory to /tftpboot or a subdirectory of /tftpboot.
Set up your DHCP, TFTP and PXE server to serve /tftpboot/.../pxeboot.0 Note: The initrd image contains the whole CD ISO and is consequently
very large. You will notice when pxebooting that initrd can take a
long time to download. This is normal behaviour.
mount /dev/cdrom /media 

NOTE1:在生成 PXE 安装文件之前要保证当前目录不存在 tftpboot 子目录,否则生成失败。

NOTE2:在生成 PXE 安装文件之前要保证/media 中没有挂载任何光盘,否则可能生成失败。

设置 rhevh 的 PXE 服务器

1). 将原有/var/lib/tftpboot 中所有内容暂时移动到/var/lib/tftpboot/backup目录

cd /var/lib/tftpboot
mkdir backup
mv * backup

2). 将/root/tftpboot 目录中所有内容复制到/var/lib/tftpboot 目录

cp -a /root/tftpboot/* /var/lib/tftpboot/ 

修改 PXE 默认启动目录文件(选)

将/var/lib/tftpboot/pxelinux.cfg/default 中的

    APPEND rootflags=loop initrd=initrd0.img root=live:/rhevh-6.4-20130912.1.el6_4.iso rootfstype=auto ro liveimg check rootflags=ro crashkernel=128M elevator=deadline install quiet rd_NO_LVM max_loop=256 rhgb rd_NO_LUKS rd_NO_MD rd_NO_DM ONERROR LOCALBOOT 0 

修改为:

    APPEND rootflags=loop initrd=initrd0.img root=live:/rhevh-6.4-20130912.1.el6_4.iso rootfstype=auto ro liveimg check rootflags=ro crashkernel=128M elevator=deadline install xdriver=vesa nomodeset  

测试使用 PXE 安装 rhevh

整合PXE目录文件

1). 将/var/lib/tftpboot/a 目录中的所有文件移动回/var/lib/tftpboot/目录

mv /var/lib/tftpboot/a/* /var/lib/tftpboot/ 

2). 修改 PXE 默认启动目录文件

vim /var/lib/tftpboot/pxelinux.cfg/default

default vesamenu.c32
#prompt 1
timeout 600 display boot.msg menu background splash.jpg
menu title Welcome to Red Hat Enterprise Linux 6.3!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000 label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append ks=ftp://192.168.0.4/ks.cfg initrd=initrd.img
label vesa
menu label Install system with ^basic video driver
kernel vmlinuz
append initrd=initrd.img xdriver=vesa nomodeset
label rescue
menu label ^Rescue installed system
kernel vmlinuz
append initrd=initrd.img rescue
label local
menu label Boot from ^local drive
localboot 0xffff
label memtest86
menu label ^Memory test
kernel memtest
append -
label rhevh
menu label ^rhev-hypervisor
KERNEL vmlinuz0
APPEND rootflags=loop initrd=initrd0.img root=live:/rhevh-6.4-20130912.1.el6_4.iso rootfstype=auto ro liveimg check rootflags=ro crashkernel=128M elevator=deadline xdriver=vesa nomodeset storage_init=/dev/sda storage vol=::::: local_boot BOOTIF=eth0 management_server=rhev-m-1.nice.com ip= netmask= gateway= dns= hostname= ntp= adminpw=$1$whFx6uaH$eH5DLoacPhnF41FPfsnhJ0

注释

storage_init=/dev/sda                   #将 rhevh 安装到哪个硬盘
BOOTIF=eth0 #启动网卡名称
management_server=rhev-m-1.nice.com #rhevm 的 FQDN 名 ip= #rhevh 的 ip 地址,无法分配的空
netmask= #rhevh 的子网掩码
gateway= #rhevh 的默认网关
dns=192.168.1.10 #rhevh 的 DNS 服务器
hostname= #rhevh 的 FQDN
ntp=192.168.1.10 #rhevh 的 NTP 服务器
adminpw=$1$Y03POPQr$/dzCyeKie/zZG0MucLRuV. #admin 用户的密码 注:adminpw 的密码由 openssl passwd -1 命令产生。

最后

在同一网段中使用PXE装机测试

可以看见rhev-hypervisor选项表示PXE服务器搭建成功。 :-)

红帽虚拟化RHEV-PXE批量安装RHEV-H的更多相关文章

  1. Dnsmasq 配置PXE批量安装系统

    以下测试都是基于centos 7下的环境 需要安装的软件为 nginx 用来下载ks.cfg和系统镜像文件用的,也可以用ftp服务器来代替 dnsmasq 提供dhcp服务和tftp服务,也可以单独去 ...

  2. pxe+kickstart实现无人值守批量安装linux

    pxe+kickstart实现无人值守批量安装linux 实验准备:主机myrhel2作为服务器端,新建一个没有安装操作系统的虚拟主机,而且其与服务器端在同一个网段 安装的条件: 服务器端:      ...

  3. pxe+kickstart自动化批量安装系统详解-技术流ken

    前言 pxe+kickstart是一款可以实现自动化批量安装系统的服务,比较经典,下面将详细介绍此服务的安装和使用. 系统环境准备 系统版本:CentOS release 6.7 (Final) 内网 ...

  4. PXE批量部署安装Linux系统

    PXE介绍 1)Preboot Excution Environment 预启动执行环境 2)Intel公司研发 3)基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映 ...

  5. PXE实现无人值守批量安装服务器

    今天我们使用PXE+Kickstart+TFTP+DHCP+FTP实现无人值守安装服务器. 一.无人值守所需服务介绍: 1)PXE PXE,远程引导技术 功能:使计算机通过网络启动 硬件要求:客户端的 ...

  6. pxe+kickstart无人值守批量安装linux

    一.原理和概念: 1.PXE:         PXE 并不是一种安装方式,而是一种引导的方式.进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 ...

  7. 红帽虚拟化RHEV-安装RHEV-M

    目录 目录 前言 软件环境 时间同步 更新系统 安装并配置RHEV-M 添加域并为用户授权远程登陆 安装rhevm报告 安装Spice协议 最后 前言 在红帽虚拟化RHEV-架构简介篇中介绍了RHEV ...

  8. 红帽虚拟化RHEV-架构简介

    目录 目录 软件环境 RHEV简介 RHEV与KVM的区别 RHEV的组成 RHEV-MManager RHEV-HHypervisor 虚拟机管理程序 存储 RHEV的架构 LDAPIPAAD We ...

  9. Cobbler批量安装Ubuntu/CentOS系统

    2013-07-25    一.安装和修改cobbler配置 1. Cobbler不在CentOS的基本源中,需要导入EPEL源升级软件包, 确保epel-release包的版本为最新,当前最新版本为 ...

随机推荐

  1. Hbase0.96源码之HMaster(三)Hmaster主要循环

    1.Master初始化 1.1 if (!this.stopped) { finishInitialization(startupStatus, false); loop(); } 1.2 finis ...

  2. PHPstorm快捷键介绍总结

    如下所示: Eclipse快捷键 Ctrl+1 快速修复 Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt+↑ 复制当前行到上一行(复制增加) Alt ...

  3. http协议是无状态协议,它的无状态指的是什么,如何解决这种情况

    http是无状态的协议,也是不安全的协议, 它的无状态是指对于事务处理没有记忆能力,缺少状态意味着后续的操作需要前面的信息. 解决办法:1,通过cookie解决,2,通过session会话保存.

  4. java 技术分享

    http://www.ccblog.cn/99.htm http://www.ccblog.cn/100.htm http://www.ccblog.cn/101.htm http://www.ccb ...

  5. django基础篇06-ModelForm操作及验证

    本文内容主要来自银角大王的博客 学习大纲: 一.ModelForm 二.Ajax - 原生(jQuery) - 伪Ajax操作 三.文件上传(预览) - Form提交 - Ajax文件上传 四. 图片 ...

  6. Spring基础13——Spring表达式语言:SpEL

    1.SpEL简介 Spring表达式语言(简称SpEL):是一个支持运行时查询和操作对象图的强大的表达式语言.语法上类似于EL:SpEL使用#{...}作为界定符,所有在大框号中的字符都将被认为是Sp ...

  7. IntelliJIdea初次接触

    1.下载 在官网下载专业版https://www.jetbrains.com/idea/ 2.修改配置 bin目录下文件如下: 修改idea64.exe.vmoptions(64位执行文件idea64 ...

  8. Beta冲刺-(3/3)

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/ 这个作业要求在哪里 https://edu.cnbl ...

  9. iOS各别版本new Date().getTime 获取时间戳为null问题

    正常逻辑 new Date('2019-9-8').getTime() 注意日期格式 yyyy--mm-dd 因为yyyy/mm/dd也有兼容性问题 但是各别iOS版本不支持 // IOS 获取时间戳 ...

  10. [洛谷P4823] TJOI2013 拯救小矮人

    问题描述 一群小矮人掉进了一个很深的陷阱里,由于太矮爬不上来,于是他们决定搭一个人梯.即:一个小矮人站在另一小矮人的 肩膀上,知道最顶端的小矮人伸直胳膊可以碰到陷阱口. 对于每一个小矮人,我们知道他从 ...