自动化部署系统

一、安装DHCP

//安装dhcp
# yum install dhcp -y

//编辑配置文件,添加以下内容
# vim  /etc/dhcp/dhcp.conf
ddns-update-style none;
ignore client-updates;
subnet 192.168.146.0   netmask 255.255.255.0{
       range 192.168.146.135 192.168.146.200;
       option subnet-mask 255.255.255.0;
       default-lease-time 21600;
       max-lease-time 43200;
       next-server 192.168.146.130;
       filename "/pxelinux.0";
}
:wq
#注释配置文件
ddns-update-style none;      //设置与DHCP服务相关联的DNS数据动态更新模式,实际的DHCP应用中很少用到该参数,将值设置为NONE即可;
ignore client-updates;      //不允许客户机更新DNS记录
subnet 192.168.146.0   netmask 255.255.255.0{
       range 192.168.146.135 192.168.146.200;    //可分配的其实ip和结束ip
       option subnet-mask 255.255.255.0;   //设置网关
       default-lease-time 21600;    //设置默认ip租用期限,6小时
       max-lease-time 43200;     //设置最大的ip租用期限,12小时
       next-server 192.168.146.130;     //告知客户端TFTP服务器IP
       filename "/pxelinux.0";    //告知客户端从TFTP跟目录下载pxelinux.0文件
}
View Code

 

//指定监听块网卡。添加网卡名称,eth0、eth1.....
# vim /etc/sysconfig/dhcpd

DHCPDARGS=eth0
View Code

 

//启动dhcp
# /etc/init.d/dhcpd start

//查看是否启动成功。端口为67
# ss -lntup|grep dhcp

//设置开机自启动
# chkconfig dhcpd on

 

二、安装TFTP

//安装tftp
# yum install tftp-server -y  

//编辑tftp配置文件,将disable改为no  
# vim  /etc/xinetd.d/tftp 
disable = no
View Code

 

//启动tftp服务
# /etc/init.d/xinetd start

//查看是否启动成功。端口为69
# ss -lntup|grep 69

//设置开机自启动
# chkconfig xinetd on

 

三、安装httpd

# yum install httpd -y

# sed -i "277i ServerName 127.0.0.1:80" /etc/httpd/conf/httpd.conf

# /etc/init.d/httpd start

# chkconfig httpd on

# mkdir /var/www/html/centos66

然后挂载centos镜像文件

//将光盘镜像挂载到centos66目录
# mount /dev/cdrom /var/www/html/centos66/ 

//添加以下内容  
# vim /etc/rc.local 
mount /dev/cdrom /var/www/html/centos66/
View Code

 

然后打开IE输入192.168.146.30/centos6,查看是否有centos光盘文件

 

四、配置PXE启动程序

//安装引导程序
# yum install syslinux -y  

//复制启动菜单程序文件
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot  
 
# cp -a /var/www/html/centos66/isolinux/"*" /var/lib/tftpboot

# mkdir -p  /var/lib/tftpboot/pxelinux.cfg

# cp /var/www/html/centos66/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

使用vm新建一台虚拟机。网络模式、内存1g以上都要统一一致

 

五、default文件修改

//将原内容改为以下内容
# vim /var/lib/tftpboot/pxelinux.cfg/default 
default ks
prompt 0

label ks
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.146.130/ks.cfg ksdevice=eth0
View Code

注:最后一行告诉安装程序ks.cfg文件在哪里,ksdevice=eth0代表当客户端有多块网卡时候,要实现自动化需要设置从eth0安装。不指定的话,安装时候系统会让你选择。

 

六、配置自动化部署(anaconda-ks.cfg)

//生成一个密码备用,然后系统会提示然给你输入密码,此密码为新系统的root密码,会生成一个很长的字符串。保存好,稍后会用到
# grub-crypt  

//创建ks文件。添加以下内容 
# vim /var/www/html/ks.cfg 
install
url --url="http://192.168.146.130/centos66"
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
network --onboot=yes --device=eth0 --bootproto=dhcp --noipv6 --hostname=CentOS6
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw  --iscrypted $6$3QYCxcfJitzNkor/$8qxOUl0G2hInM7uPBv9bg.Nk3ko.CuABiP2NnnMERaH8hgbVeTvYVdo4uxj2EEpFsyOlvPlAi5Aai3vtmJZip1
clearpart --all --initlabel
part /boot --fstype=ext4 --asprimary --size=500
part swap --size=1500
part / --fstype=ext4 --grow --asprimary --size=200
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot

%packages
@base
@compat-libraries
@debugging
@development
tree
nmap
sysstat
lrzsz
dos2unix
telnet

%post
wget -O /tmp/optimization.sh http://192.168.146.130/config/optimization.sh
/bin/sh /tmp/optimization.sh
%end
View Code

 

 

七、开机测试

使用vm新建一台虚拟机。网络模式、内存1g以上都要统一一致

posted @ 2017-05-15 10:30  51redhet  阅读(432)  评论(0编辑  收藏  举报