「Cobbler」002-部署

折月煮酒 提交于 2019-11-28 20:14:12

部署

1. 安装相关软件

yum -y install cobbler cobbler-web dhcp \
  tftp-server pykickstart httpd xinetd

2. 启动与自启动

systemctl enable httpd
systemctl start httpd

systemctl start cobblerd.service 
systemctl enable cobblerd.service

3. 核对当前设置

cobbler check

4. 解决相关问题

4.1 备份文件

cp /etc/cobbler/settings{,.bak}

4.2 设置变量

ifconfig eth0|awk 'NR==2{print $2}'

IP=$(ifconfig eth0|awk 'NR==2{print $2}')

4.3 修改配置

sed -i "s/server: 127.0.0.1/server: $IP/" /etc/cobbler/settings
grep "$IP" /etc/cobbler/settings

sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings
grep "manage_dhcp: 1" /etc/cobbler/settings

sed -i 's/pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings
grep "pxe_just_once: 1" /etc/cobbler/settings

openssl passwd -1 -salt 'mine' '123456'
SSL=$(openssl passwd -1 -salt 'mine' '123456')

sed -i "s/default_password_crypted.*/default_password_crypted: "$SSL"/" /etc/cobbler/settings
grep "$SSL" /etc/cobbler/settings

cp /etc/xinetd.d/tftp{,.bak}
sed -i '/disable/s#yes#no#' /etc/xinetd.d/tftp
grep disable /etc/xinetd.d/tftp

4.4 下载文件

cobbler get-loaders

ls /var/lib/cobbler/loaders/

4.5 添加服务

systemctl enable rsyncd

systemctl start rsyncd

5. 再次核对设置

systemctl restart cobblerd.service

cobbler check

​ 以上两个问题暂时可以忽略

6. 配置相关模板

​ 修改cobbler的dhcp模版,不要直接修改dhcp本身的配置文件,因为cobbler会覆盖。

6.1 备份与查看

cp /etc/cobbler/dhcp.template{,.bak}

sed -n '21,25p' /etc/cobbler/dhcp.template

6.2 修改与确认

sed -i 's#192.168.1.0#10.0.0.0#' /etc/cobbler/dhcp.template
sed -i 's#192.168.1.5#10.0.0.254#' /etc/cobbler/dhcp.template
sed -i 's#192.168.1.100 192.168.1.254#10.0.0.150 10.0.0.190#' \
  /etc/cobbler/dhcp.template
sed -i 's#192.168.1.1#223.5.5.5#' /etc/cobbler/dhcp.template

sed -n '21,25p' /etc/cobbler/dhcp.template

6.3 重启与同步

​ 重启服务并同步配置,改完dhcp必须要sync同步配置

systemctl restart cobblerd.service

cobbler sync

6.4 检查与确认

netstat -lnup|grep dhcp

sed -n '19,23p' /etc/dhcp/dhcpd.conf

7. 导入相应镜像

​ 根据需求导入不同的镜像,这里用 CentOS 7.6 的镜像为演示

7.1 检查与确认

​ 检查和确认光盘是否已经装入DVD中

7.2挂载与导入

​ 时间会比较久,请耐心等待

mount /dev/cdrom /mnt

cobbler import --path=/mnt --name=Centos-7.6 --arch=x86_64

# --path 镜像路径
# --name 为安装源定义一个名字
# --arch 指定安装源是32位、64位、ia64, 目前支持的选项有: x86│x86_64│ia64
# 安装源的唯一标示就是根据name参数来定义,本例导入成功后,安装源的唯一标示就是:CentOS-7.6-x86_64,如果重复,系统会提示导入失败。

7.3 查看与确认

cobbler distro list

cobbler list

8. 查看相关信息

​ 镜像存放目录,cobbler会将镜像中的所有安装文件拷贝到本地一份,放在/var/www/cobbler/ks_mirror下的CentOS-7.1-x86_64目录下。因此/var/www/cobbler目录必须具有足够容纳安装文件的空间。

8.1 查看镜像存放的目录

ls /var/www/cobbler/ks_mirror

ls /var/www/cobbler/ks_mirror/Centos-7.6-x86_64

du -smh /var/www/cobbler/ks_mirror/Centos-7.6-x86_64/

8.2 查看所有的profile设置

cobbler profile report

8.3 查看指定的profile设置

cobbler profile report --name=CentOS-7.6-x86_64

8.4 查看安装镜像文件信息

cobbler distro report --name=CentOS-7.6-x86_64

9. 编写相关配置

​ kickstarts 配置文件自带很多,不过一般都是根据需求定制的

9.1 kickstarts 配置文件

ls /var/lib/cobbler/kickstarts/

9.2 这里就简单演示一下

cat >/var/lib/cobbler/kickstarts/CentOS-7.6-x86_64.cfg <<'EOF'
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
rootpw --iscrypted $1$m1pE0DG6$vALBphGGynqvUzfJaWZ6U1
# Use network installation
url --url="$tree"
# System language
lang en_US
# Firewall configuration
firewall --disabled
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# SELinux configuration
selinux --disabled

# Network information
network  --bootproto=dhcp --device=eth0
network  --bootproto=dhcp --device=eth1
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --asprimary --fstype="ext4" --size=200
part swap --fstype="swap" --size=1024
part / --fstype="ext4" --grow --size=1
%packages
@base
@core
@compat-libraries
@debugging
@development
@gnome-desktop
@X Window System
%end
EOF

cat /var/lib/cobbler/kickstarts/CentOS-7.6-x86_64.cfg

9.3 指定相关文件及调整参数

​ 修改安装系统的内核参数,在CentOS7系统有一个地方变了,就是网卡名变成eno xxx这种形式,但是为了运维标准化,我们需要将它变成我们常用的 eth0,因此使用下面的参数。但要注意是CentOS7才需要下面的步骤,CentOS6 不需要。

cobbler profile edit --name=CentOS-7.6-x86_64 \
  --kickstart=/var/lib/cobbler/kickstarts/CentOS-7.6-x86_64.cfg

cobbler profile edit --name=CentOS-7.6-x86_64 \
  --kopts='net.ifnames=0 biosdevname=0'

cobbler profile report|sed -n '9,11p'

9.4 测试有无语法错误

cobbler validateks

9.5 进行 cobbler 同步

cobbler sync

9.6 重启服务端相关服务

systemctl restart xinetd.service

systemctl restart cobblerd.service

systemctl restart httpd.service
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!