运维工具---PXE+KICKSTART

2 篇文章 0 订阅
1 篇文章 0 订阅

系统安装(物理机、虚拟机)-->程序安装、配置、服务启动-->批量操作-->程序发布

程序发布:不能降低用户体验、系统不能停机、不能导致系统故障或者系统完全不可用

灰度发布模型:

通过调度器将线上的一批服务器(maintanance)标记为down模式-->关闭相应服务-->部署新版本的应用程序至目标位置-->启动相关应用-->调度主机上线

一、运维工具

1、系统安装工具----pxe/cobbler;云上的一般可以用镜象工具

2、configuartion(配置工具)----puppet/saltstack

3、command and control(命令控制工具)----fabric/ansible

4、监控工具

二、PXE系统工具

1、pxe自启动安装过程

三、pxe+kickstart安装需求

  • ks文件
  • DHCP服务器
  • TFTP服务器
  • HTTP服务器/VSFTP服务器
  • 网上启动
  • YUM仓库安装源

1、操作步骤

[root@localhost ~]# mount /dev/sr0 /mnt/           #挂载安装包
[root@localhost ~]# yum install -y httpd createrepo    #安装httpd服务和createrepo工具
[root@localhost ~]# mkdir /var/www/html/CentOS-7-x86_64       #创建镜象目录
[root@localhost mnt]# cp -a /mnt/* /var/www/html/CentOS-7-x86_64/   #复制安装源
[root@localhost ~]# yum install -y tftp-server dhcp xinetd   #安装tftp服务、dhcp服务、xinetd服务
1、配置tftp
[root@localhost ~]# vi /etc/xinetd.d/tftp       #编辑tftp配置
disable                 = no                    #将此项设置为no

2、配置dhcp
[root@localhost ~]# cd /usr/share/doc/dhcp-4.2.5/
[root@localhost dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf
[root@localhost mnt]# vi /etc/dhcp/dhcpd.conf    #编辑dhcp的配置
subnet 192.168.1.0 netmask 255.255.255.0 {
  range dynamic-bootp 192.168.1.100 192.168.1.160;
  option subnet-mask 255.255.255.0;
  next-server 192.168.1.200;
  filename "pxelinux.0";
}                    #配置如上

3、创建YUM源
[root@localhost ~]# createrepo -pdo /var/www/html/CentOS-7-x86_64/ /var/www/html/CentOS-7-x86_64/
[root@localhost ~]# createrepo -g `ls /var/www/html/CentOS-7-x86_64/repodata/*-comps.xml` /var/www/html/CentOS-7-x86_64/ 

4、放置kickstart文件
[root@localhost ~]# cp anaconda-ks.cfg /var/www/html/CentOS-7-x86_64/CentOS-7-x86_64.cfg     #复制Kickstart文件
#修改kickstart文件
install
url --url=http://192.168.1.200/CentOS-7-x86_64
text
lang en_US.UTF-8
zerombr

keyboard --vckeymap=us --xlayouts='us'

bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder=sda

network  --bootproto=dhcp --device=ens33 --onboot=yes --ipv6=auto
network  --hostname=localhost.localdomain

timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
# Root password
rootpw --iscrypted $6$owQPyZivFxNiiZBP$D59x8aUycBnyxJYMyf9TdsWu9UDA5xu9msyTexIlyAJdMGbo6L/5dkN1TswpAaVMWJW6brZE08MbQuvQbbpbR.

clearpart --all --initlabel
# Disk partitioning information
part / --fstype="xfs" --ondisk=sda --size=17407
part /boot --fstype="xfs" --ondisk=sda --size=1024
part swap --fstype="swap" --ondisk=sda --size=2048

services --enabled="chronyd"
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot


%packages
@^minimal
@core
chrony
kexec-tools

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'

%end

%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
[root@localhost CentOS-7-x86_64]# chmod 766 CentOS-7-x86_64.cfg   #更改权限

5、准备tftp文件
[root@localhost ~]# yum install -y syslinux
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@localhost /]# cp /mnt/isolinux/* /var/lib/tftpboot/
[root@localhost /]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@localhost /]# cd /var/lib/tftpboot/pxelinux.cfg/
[root@localhost pxelinux.cfg]# cp /mnt/isolinux/isolinux.cfg default
[root@localhost pxelinux.cfg]# vi default  #编辑文件
label ks
  menu label ^AUTO Install CentOS 7
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.1.200/CentOS-7-x86_64/CentOS-7-x86_64.cfg    #添加如上内容

KICKSTRT基于UEFI GTP分区的KS文件

install
url --url=http://192.168.1.200/CentOS-7-x86_64
text
keyboard us
lang en_US.UTF-8
bootloader --location=mbr            
zerombr
clearpart --all --initlabel
part /boot/efi --fstype efi --size 200 --asprimary --ondisk sda
part /boot --fstype xfs --size 500 --ondisk sda
part swap --size 1024 --ondisk sda
part / --fstype xfs --size 8192 --ondisk sda
part /home --fstype xfs --size 1 --grow --ondisk sda
network  --bootproto=dhcp --device=enp0s3 --onboot=yes --noipv6 --hostname=CentOS7
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw --iscrypted $6$owQPyZivFxNiiZBP$D59x8aUycBnyxJYMyf9TdsWu9UDA5xu9msyTexIlyAJdMGbo6L/5dkN1TswpAaVMWJW6brZE08MbQuvQbbpbR.
logging --level=info

%pre
parted -s /dev/sda mklabel gpt
%end

%packages            
@^minimal
@core
chrony
kexec-tools
%end

reboot

UEFI GTP分区 ks 文件

2、启动服务

  • systemctl start dhcpd
  • systemctl start tftp
  • systemctl start xinetd
  • systemctl start httpd

3、测试成功后(经测试可用),加入开机息启动

  • systemctl enable dhcpd
  • systemctl enable tftp
  • systemctl enable xinetd
  • systemctl enable httpd
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值