自动化运维工具Cobbler定制安装

前面文章学习了如何安装和配置Cobbler工具,通过网络启动进入Cobbler安装系统界面还需要人工干预才能进行下一步安装。系统安装完成之后还需要手动设置服务器主机名、IP地址、DNS等,显的很不智能。

通过Cobbler ks文件定制系统所需要安装的软件包、LVM磁盘分区、系统安装完成之后设置(开机启动服务器、关闭不需要的服务、内核参数优化)。

公司服务器到货之后,根据采购单验货。验货通过之后,上架,接网线和插电源。服务器上架之前收集所有服务器的MAC地址,通过Cobbler system命令指定服务器的主机名、IP地址、DNS等。从而实现通过Cobbler工具定制安装OS系统。

1.自定义Cobbler ks文件,下面以Centos 7.1为例。配置文件里面的参数做了详细的解释。

[root@linux-node1 ~]# cat /var/lib/cobbler/kickstarts/Centos-7.1-x86_64.ks 
#platform=x86,AMD64,or Intel EM64T
#System language
lang en_US
#System keyboard
keyboard us
#System timezone
timezone Asia/Shanghai
#Root password
rootpw --iscrypted $default_password_crypted
#Use text mode install
text
#Install OS instead of upgrade
install
# Use network installation
url --url=$tree
#System bootloader configuration
bootloader --location=mbr
#Clear the Master Boot Record
zerombr
#Partition clearing information
clearpart --all
#Disk partitioning information
part /boot --fstype="ext3" --ondisk=sda --size=200
part pv.0001 --size=82087
volgroup vggroup --pesize=8192 pv.0001
logvol /  --fstype="ext3" --size=20480 --name=lv_root --vgname=vggroup
logvol /var  --fstype="ext3" --size=10240 --name=lv_var --vgname=vggroup
logvol /usr  --fstype="ext3" --size=10240 --name=lv_usr --vgname=vggroup
logvol swap  --fstype="ext3" --size=2048 --name=lv_swap --vgname=vggroup
#System authorization infomation
auth --useshadow --enableemd5
#Network information
$SNIPPET('network_config')
#Rboot after installation
reboot
#Firewall configuration
firewall --disabled
#Selinux configuration
selinux -- disabled
#Do not configure xwindows
skipx

%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
#Enable installation monitoring
$SNIPPET('pre_anamon')
%end

#Package install information
%packages
@base
@core
@development
net-snmp
net-snmp-devel
sysstat
iptraf
ntp
lrzsz
ncurses-devel
openssl-devel
zlib-devel
nmap
screen
%end

#Settings after installation
%post
systemctl enable snmpd
%end

2.查看Cobbler默认的ks文件。Cobbler默认的ks文件是/var/lib/cobbler/kickstarts/sample_end.ks,可以通过cobbler profile report命令查看。

[root@linux-node1 ~]# cobbler profile report
Name                           : Centos_7.1-x86_64
TFTP Boot Files                : {}
Comment                        : 
DHCP Tag                       : default
Distribution                   : Centos_7.1-x86_64
Enable gPXE?                   : 0
Enable PXE Menu?               : 1
Fetchable Files                : {}
Kernel Options                 : {}
Kernel Options (Post Install)  : {}
Kickstart                      : /var/lib/cobbler/kickstarts/sample_end.ks
Kickstart Metadata             : {}
Management Classes             : []
Management Parameters          : <<inherit>>
Name Servers                   : []
Name Servers Search Path       : []
Owners                         : ['admin']
Parent Profile                 : 
Internal proxy                 : 
Red Hat Management Key         : <<inherit>>
Red Hat Management Server      : <<inherit>>
Repos                          : []
Server Override                : <<inherit>>
Template Files                 : {}
Virt Auto Boot                 : 1
Virt Bridge                    : xenbr0
Virt CPUs                      : 1
Virt Disk Driver Type          : raw
Virt File Size(GB)             : 5
Virt Path                      : 
Virt RAM (MB)                  : 512
Virt Type                      : kvm

3.自定KS文件为自定义的Centos-7.1-x86_64.ks文件。可以通过cobbler profile report命令查看设置是否生效。

[root@linux-node1 ~]#cobbler profile edit --name=Centos_7.1-x86_64 --kickstart=/var/lib/cobbler/kickstarts/Centos-7.1-x86_64.ks

4.为了运维的标准化,修改Cobbler Kernel Options,让网卡名由类似ens33这种命变为eth0。可以通过cobbler profile report命令查看设置是否生效。

[root@linux-node1 ~]# cobbler profile edit --name=Centos_7.1-x86_64 --kopts='net.ifnames=0 biosdevname=0' 

5.Cobbler通过安装服务器的MAC地址,可以为服务器指定主机名、IP地址、掩码、网关、DNS服务器、装机配置profile文件等。
通过指定profile文件之后在安装界面就不需要人工介入选择所需要安装的系统,而是服务器加电之后自动安装系统。

[root@linux-node1 ~]# cobbler system add --name=zmzdb01 --mac=00:0C:29:58:99:A1 --profile=Centos_7.1-x86_64  --ip-address=192.168.100.10 --subnet=255.255.255.0 --gateway=192.168.100.2 --interface=eth0 --static=1 --hostname=zmzdb01.zmzblog.com --name-servers="192.168.100.2"

6.通过下面的命令查看system的配置。

[root@linux-node1 ~]# cobbler system list
   zmzdb01

7.执行cobbler sync命令,然后重启系统,服务器就会自动进行安装系统。
cobbler
8.Cobbler web界面安装和配置。Cobbler web默认的用户名和密码都是cobbler,登录地址:http://192.168.100.101/cobbler_web。

通过Cobbler web界面也可以实现Cobbler命令行上面的所有操作。通过Kickstart Templates选项可以添加、删除和修改ks文件。

通过systems选项可以指定安装系统的Profile文件,指定安装服务器的主机名、IP地址和DNS等。

通过Sync选项可以使Cobbler所有的配置生效等。

cobbler-web
9.修改Cobbler用户默认的登录密码。Cobbler用户名和密码的配置文件在/etc/cobbler/users.digest。

[root@linux-node1 ~]# htdigest /etc/cobbler/users.digest "Cobbler" cobbler
Changing password for user cobbler in realm Cobbler
New password: 
Re-type new password: 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

昵称 *