设为首页 收藏本站
查看: 901|回复: 0

[经验分享] pxe结合kickstart文件实现全自动化安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-11-8 08:44:47 | 显示全部楼层 |阅读模式
PXE是什么?
PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用tftp(trivial file transfer protocol)或mtftpmulticast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户?)基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统。如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux等。

什么情形使用PXE系统安装?
在实际工作中,我们经常会遇到这样的情况:想要安装Linux但是计算机没有光驱,或者是有大批量的计算机需要同时安装Linux,如果通过光驱的方式一个个安装,不仅效率低,也不利于维护。这是时候你就需要PXE的强大功能了。

硬件支持:
网卡必须可通过网络引导启动, 具体实现的是可获取到来自dhcp服务器上分配的ip地址, 并且可充当tftp服务端的客户端,去加载内核等文件。 早期网卡可能默认不支持这种功能, 但是现在几乎所有的网卡都支持这个功能。

需要搭建服务:
1>. dhcp服务器
2>. tftp-server 服务器
3>. ftp或则httpd服务 (用来提供yum仓库、kickstart文件)

下面通过pxe结合kickstart文件实现真正的全自动化安装centos7操作系统
实验拓扑图:
wKioL1ggQafzDLGqAACRmV6hVgg680.jpg
注意: dhcp、tftp、ftp(httpd)服务器可以放在不同服务器之上,这里简化。

流程图:
wKiom1ggQ5TSd0XfAAHJh-UoQ5k421.jpg
实验步骤:
搭建dhcp服务器:

1>. 修改配置文件/etc/dhcp/dhcpd.conf
wKioL1ggQePio2fLAAAdFQgcsJY708.jpg

2>. 启动dhcp服务器
1
systemctl start dhcpd





搭建tftp-server服务器。
1>. 安装程序包:
1
yum install -y tftp-server




2>. tftp-server生成的配置文件。
1
2
3
4
5
6
7
8
9
10
11
/etc/xinetd.d/tftp
/usr/lib/systemd/system/tftp.service
/usr/lib/systemd/system/tftp.socket
/usr/sbin/in.tftpd
/usr/share/doc/tftp-server-5.2
/usr/share/doc/tftp-server-5.2/CHANGES
/usr/share/doc/tftp-server-5.2/README
/usr/share/doc/tftp-server-5.2/README.security
/usr/share/man/man8/in.tftpd.8.gz
/usr/share/man/man8/tftpd.8.gz
/var/lib/tftpboot




3>. 提供特定的内核、initrd.img、bootloader等文件。
提供bootloader文件: pxelinux.0  chain.c32  mboot.c32  memdisk  menu.c32
以上这些文件由syslinux程序包提供。
yum install -y syslinux , 则可生成以上文件。

vmlinuz (内核文件) 、initrd.img则由光盘目录下的images/pxeboot/目录下的文件提供。

1
2
[iyunv@node1 tftpboot]# ls /var/lib/tftpboot/
chain.c32  initrd.img  mboot.c32  memdisk  menu.c32  pxelinux.0  pxelinux.cfg  vmlinuz




4>. 在/var/lib/tftpboot/目录下, 创建pxelinux.cfg目录
1
2
mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default



wKiom1ggQhCBfSs7AAA932qoXpg490.jpg

5>. 启动tfpd.server服务
1
]# systemctl start tftp.socket




搭建ftp服务器, 提供安装源(类似于光盘)、kickstart文件。
1>. 搭建ftp-server服务器。
1
]# yum install -y vsftpd




2>. 将光盘文件挂载至/var/ftp/pub/Centos7目录下。
1
mount /dev/cdrom /var/ftp/pub/Centos7/




3>. 将kickstart文件复制到/var/ftp/pub/目录下。
1
cp centos7.cfg /var/ftp/pub/



4>. 启动ftp服务器。
]# systemctl start vsftpd

kickstart文件如何生成?
在图形化界面下安装system-config-kickstart工具包, 执行system-config-kickstart命令打开图形化配置界面。
如下:
wKioL1ggQkmRlWghAADzUSna-2s729.jpg


客户端测试;(node2节点)
1>. 选择网络引导.
wKioL1ggQqGB9D9tAAAK8WKqduQ630.jpg

2>.
wKioL1ggRzrCmT6PAAAfCk0QGwc626.jpg

3>. 后面测试结果正确,可实现自动化安装。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-297170-1-1.html 上篇帖子: CentOS 6.5 inotify+rsync 部署 下篇帖子: linux命令:resize2fs、lvm逻辑卷lv扩展及缩减
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表