天高地厚

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【转载】批量部署系统之kickstart

Posted on 2013-10-11 21:13  天高地厚-GNU  阅读(234)  评论(0编辑  收藏  举报

一、安装各服务:

ftp服务提供软件软件源,tftp提供引导文件,dhcp提供PXE文件位置,syslinux提供PXE文件

[root@node1~]# yum -y installtftp-server tftp dhcp vsftpd syslinux

 

二、配置各服务

(1)、配置DHCP服务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@node1 ~]# # cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample ./dhcpd.conf
cp: overwrite `./dhcpd.conf'? y
[root@node1 ~]# vi /etc/dhcp/dhcpd.conf
# 设定搜索域,一般公司自用的域名,然后设定DNS服务器,根据实际情况设定,本实验中用不到DNS服务器
option domain-name "edo.com";
option domain-name-servers 172.16.0.1;
# 设定租约时长,默认的时间太短
default-lease-time 36000;
max-lease-time 72000;
subnet 192.168.10.0 netmask 255.255.255.0 {
        range 192.168.10.11 192.168.10.100;
        option routers 192.168.10.254;
        next-server 192.168.10.254;
        filename="pxelinux.0";
        }
[root@node1 dhcp]# ifconfig eth1 192.168.10.254/24 up
[root@node1 dhcp]# service dhcpd start
Starting dhcpd: [  OK  ]
#

(2)、配置tftp服务:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
# tftp不是独立运行的服务,需借助超级守护进程来管理
[root@node1 ~]# chkconfig tftp on
[root@node1 ~]# service xinetd restart
Stopping xinetd: [FAILED]
Starting xinetd: [  OK  ]
#
#启动ftp服务:
查看服务启动情况
[root@node1 ~]# netstat -unlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
udp        0      0 0.0.0.0:67                  0.0.0.0:*                               1928/dhcpd       
udp        0      0 0.0.0.0:69                  0.0.0.0:*                               1981/xinetd

 

三、准备引导文件

 

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
[root@node1 ~]# mkdir /var/ftp/pub/centos-6.4-x86_64
[root@node1 ~]# mount -r /dev/cdrom /var/ftp/pub/centos-6.4-x86_64
[root@node1 ~]# cp /var/ftp/pub/centos-6.4-x86_64/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
[root@node1 ~]# cp /var/ftp/pub/centos-6.4-x86_64/isolinux/{boot.msg,vesamenu.c32,splash.jpg} /var/lib/tftpboot/
[root@node1 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@node1 ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@node1 ~]# cp /var/ftp/pub/centos-6.4-x86_64/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root@node1 ~]# chmod +w /var/lib/tftpboot/pxelinux.cfg/default
[root@node1 ~]# vi /var/lib/tftpboot/pxelinux.cfg/default
label linux
    menu label ^Install or upgrade an existing system
  # 可以修改一些内容,以作区别
 # menu label ^Install or upgrade an existing system from Kickstart
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=ftp://192.168.10.254/pub/kickstart6.cfg
[root@node1 ~]# tree /var/lib/tftpboot/
/var/lib/tftpboot/
├── boot.msg
├── initrd.img
├── pxelinux.0
├── pxelinux.cfg
│   └── default
├── splash.jpg
├── vesamenu.c32
└── vmlinuz
1 directory, 7 files

 

四、借助system-config-kickstart创建kickstart文件:

[root@node1~]#yum -y install system-config-kickstart

 

 

1、选择时区,设置root密码;(建议不要安装完成后重启,如果开机启动项为PXE启动就不太好了)

163241552.png

 

2、设置安装源(软件包位置),选择协议

163313428.png

 

3、设置boot loader (全新安装,默认选项或自定义)

163347632.png

 

4、设置分区

163425567.png

 

5、网络配置:

163503874.png

 

6Authentication 为默认

7SELinux和防火墙设置:

163546290.png

 

8、安装图形环境(default):

163634984.png

 

9、选择安装软件:

163708652.png

 

10、安装系统完成后需要执行的自定义脚本

163738309.png

 

11、将文件保存到指定目录,名称跟前面/var/lib/tftpboot/pxelinux.cfg/default中ks=ftp://192.168.10.254/pub/kickstart6.cfg一致:

163833417.png

 

测试:

164015678.png

 

软件安装过程:

164058803.png

 

安装后脚本执行情况

164204949.png