linux – 优化RHEL / CentOS kickstart工作流程的技巧

前端之家收集整理的这篇文章主要介绍了linux – 优化RHEL / CentOS kickstart工作流程的技巧前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在一个由位于多个数据中心和办公地点的CentOS系统组成的环境中工作.我一直在使用一个合理的kickstart和一个可靠的安装后脚本,但是想要简化和扩展这个过程.我们有自己的yum repo,我可以控制使用的硬件范围(通常是 HP ProLiant hardware或VMWare)假设我每周都会构建或重新部署一台服务器.在 steps needed for hardware preparation之后,我开始操作系统设置.我现在遇到的问题是:

1).将系统引导到网络安装程序的好方法.我一直在使用CentOS发行版中提供的10mb boot.iso / netinstall.iso.我通过VMWare vCenter(适用于VM)或HP ILO(通常通过SSH,指向ISO的URL)安装它以启动安装.在大多数情况下,我无法使用PXE,因为数据中心位置没有可用的DHCP.例如,有一种干净的方法可以将boot.iso放到USB密钥上吗?

2).有时我需要为kickstart设置静态IP.除了在安装程序提示符下的boot:命令行输入信息之外,还有更好的方法来输入该信息吗?

3).自定义kickstart的好方法.现在,我拥有我需要的大部分内容,但有时需要更改分区方案以考虑不同的RAID设置(例如两个SmartArray控制器).现在,我基本上是为每个系统(或系统组)设置创建一个单独的kickstart文件.我最终得到一个充满旧* .cfg文件的目录.我知道这样做有一种更优雅的方式. PHP也许?

4).帮助安装方法.从现在开始,从完成到完成的完整构建需要5-10分钟.我注意到安装方法很重要,具体取决于位置. HTTP在yum服务器本地运行良好,但与我们与其他站点的高带宽低延迟连接相比较差. NFS在这些情况下效果更好.我很感激在kickstart进程之前用于预加载设置或系统参数的任何漂亮技巧.

5).安装后的脚本运行良好.它提取额外的包,设置一些初始设置,修剪服务列表并填充一些用户/密码/ SSH密钥.我想通过适当的配置管理来运行这个环境(我已经习惯了CFEngine,但是现在认为PuppetBcfg2可能是更好的选择).我是否会减少安装后的脚本并将这些功能移到CFEngine中?不过,这可能是一个不同的问题.

这是我一直使用的kickstart文件的示例:

install
text
url --url http://yum.abc.com/5.6/os/x86_64/
#nfs --server=yum.abc.com --dir=/yum/5/os/x86_64
lang en_US.UTF-8
langsupport --default=en_US.UTF-8 en_US.UTF-8
keyboard us
network --device eth0 --bootproto dhcp
rootpw --iscrypted $encryptedpassword
firewall --disabled
selinux --disabled
authconfig --enableshadow --enablemd5
timezone --utc America/Chicago
bootloader --location=mbr
clearpart --all --initlabel
part /boot --fstype ext3 --size=200
part /usr --fstype ext3 --size=8192 --asprimary
part / --fstype ext3 --size=12288 --asprimary
part /var --fstype ext3 --size=4096
part swap --size=8192
part /tmp --fstype ext3 --size=2048
#part /opt --fstype ext3 --size=100 --grow
#part /scratch --fstype ext3 --size=61440

%packages
@ admin-tools
@ editors
@ system-tools
@ network-server
@ mail-server
@ server-cfg
@ development-tools
yum-fastestmirror
rpm-devel
e2fsprogs
grub
kernel-devel
net-snmp-utils
-subversion
-xdelta

%post
exec < /dev/tty3 > /dev/tty3
chvt 3
echo
echo "################################"
echo "# Running Post Configuration   #"
echo "################################"
(
/usr/bin/wget http://ks.abc.com/post/post-install-abc.sh -O /root/post-install-abc.sh
/bin/chmod 755 /root/post-install-abc.sh
/root/post-install-abc.sh
) 2>&1 | /usr/bin/tee /var/log/post-install.log
chvt 1

解决方法

看看Cobbler – https://fedorahosted.org/cobbler/ – 我在PXE环境中使用它,但它应该适合你.

猜你在找的Linux相关文章