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

[经验分享] Centos6.5 PXE自动化安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-7-31 09:28:59 | 显示全部楼层 |阅读模式
                                     Centos6.5 PXE自动化安装 wKiom1PY65-AbsUtAAD1i6V8ZS0623.jpg

首先我们将根据此图说明PXE自动安装的过程:
    主机1开机以网卡方式启动,发现自己没有IP地址, 那么网卡rom中的dhcp客户端会发起discovery的广播请求,dhcp服务器发现请求后会给网卡分配一个ip地址告诉客户端TFTP服务器的地址及pxelinux.0所在的路径(相对路径)。于是客户端启动网络卡rom中的tftp客户端到TFTP服务器下载pxelinux.0及其配置文件pxelinux.cfg/default 和相关文件【此配置文件会告诉pxelinux.0如何及以何种方式引导界面】然后在内存中展开运行。显示如下图引导界面:
wKiom1PY7D_z3COaAAN75a03qxE786.jpg



然后开始加载kernel(vmlinuz)和ramdisk(initrd.img),其中initrd.img在default中添加附加选项例如:ks配置文件的位置是否使用dhcp获取地址等。在内存展开后会运行会运行/init 。init会调用/bin/loader根据附加选项中提供的ks地址去下载ks配置文件 根据ks配置文件提供的信息去下载服务器主机提供的安装树上image/install.image 这个文件中包含anaconda应用程序 然后启动anaconda 。anaconda根据ks配置文件至此安装过程启动
下面将详细介绍整个过程的配置
实验网络拓扑图
wKioL1PY7aGQHH85AADIxFP_QHw318.jpg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
配置dhcp服务器:
Vim /etc/dhcp/dhcpd.conf
内容如下:
# dhcpd.conf
#
# Sample configuration file for ISC dhcpd
#
  
# option definitions common to all supported networks...
option domain-name "hefeng.com";
option domain-name-servers 172.16.34.1;
  
default-lease-time 86400;
max-lease-time 100000;
  
log-facility local7;
  
subnet 172.16.0.0  netmask 255.255.0.0 {
  range 172.16.34.2 172.16.34.100;
  option routers 172.16.34.1;
  next-server 172.16.34.1;  ------>tftp服务器地址
  filename "pxelinux.0";   ------->引导文件相对位置
}
  
启用dhcp服务




wKioL1PY7e6QwXddAAB_IXz7OaU438.jpg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
安装httpd服务器 yum install httpd -y
挂载光盘镜像至/var/www/html/
Mount /dev/cdrom /var/www/html/centos
cp ~/anaconda-ks.cfg /var/www/html/ks.cfg
Ks内容如下:
# Kickstart file automatically generated by anaconda.
  
#version=DEVEL
install
url --url=http://172.16.34.1/centos/
lang en_US.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --noipv6
rootpw  --iscrypted           $6$NpvdMIOj$9IIqXQ05uucKanibRIrjXP/Dn2dr3yX3xleCtp8HFj91ilMalqijSWHJnqnp9Ew07M.Lf2hMzrGi9bwXqEMhM0# Reboot after installation
reboot
firewall --disabled
authconfig --useshadow  --passalgo=sha512
selinux --disabled
timezone Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto crashkernel=auto rhgb rhgb quiet quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
zerombr yes
clearpart --all
  
part /boot --fstype=ext4 --size=200
part pv.008002 --size=61440
  
volgroup vg0 --pesize=8192 pv.008002
logvol / --fstype=ext4 --name=root --vgname=vg0 --size=20480
logvol swap --name=swap --vgname=vg0 --size=2048
logvol /usr --fstype=ext4 --name=usr --vgname=vg0 --size=10240   注意:分区大小自行调整
logvol /var --fstype=ext4 --name=var --vgname=vg0 --size=20480
  
repo --name="CentOS"  --baseurl=http://172.16.34.1/centos/
  
%packages
@Base
@Core
@base
@basic-desktop
@chinese-support
@client-mgmt-tools
@core
@desktop-platform
@fonts
@general-desktop
@graphical-admin-tools
@legacy-x
@network-file-system-client
@perl-runtime
@remote-desktop-clients
@x11
  
%end
编辑配置文件vim /etc/httpd/conf.d/welcome.conf
  
#
# This configuration file enables the default "Welcome"
# page if there is no default index page present for
# the root URL.  To disable the Welcome page, comment
# out all the lines below.
#
<LocationMatch "^/+$">
    Options -Indexes  ----->将‘-’删除
    ErrorDocument 403 /error/noindex.html
</LocationMatch>
启用httpd服务







wKiom1PY7Q3gp5mtAAD9wvs7sFM787.jpg
打开浏览器测试是否正常访问
wKioL1PY7kqQp-MlAADImPQse4w966.jpg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
配置tftp服务器
依赖与xinetd
# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot  ---->dhcp中指定的相对路径的上半部分
        disable                 = no    ----->将yes改为no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
  
  
  
  
启用及查看服务是否启动
  
  
安装syslinux软件包 yum install syslinux -y
cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/
Cp /var/www/html/centos/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot
Cp /var/www/html/centos/isolinux/{boot.msg,splash.jpg,vesamenu.c32}/var/lib/tftpboot
Mkdir -p /var/lib/tftpboot/pxelinux.cfg
Cp /var/www/html/centos/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
编辑default
内容如下:
  
#prompt 1
timeout 600
  
display boot.msg
  
menu background splash.jpg
menu title Welcome to CentOS 6.5!
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 initrd=initrd.img ks=http://172.16.34.1/ks.cfg text
label vesa
  menu label Install system with ^basic video driver
   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 -
配置过程完成。。



安装系统默认密码:12345

运维网声明 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-22986-1-1.html 上篇帖子: RHEL6.5服务器本地yum源配置 下篇帖子: LINUX自动化安装操作系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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