Cobbler无人值守安装系统安装与使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Cobbler无人值守安装系统安装与使用相关的知识,希望对你有一定的参考价值。

Cobbler介绍

什么是Cobbler

Cobbler是一个Linux系统安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP。DNS等

Cobbler的管理方式

Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,也可以方便二次开发使用(因为cobbler还不算太完美,有很多不足之处,希望有py的大佬们可以继续完善,致敬大佬。)

历史

Cobbler是较早钱的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理。

官网

http://cobbler.github.io/

安装cobbler

使用昨日利用Kickstart安装的系统来继续实验。

更新Base源

curl -o /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo

更新epel源

curl -o /etc/yum.repos.d/epel.repohttp://mirrors.aliyun.com/repo/epel-7.repo

注释:这两条命令可以添加进Xshell的快速命令中,避免更新还要重新输入的麻烦

技术分享图片技术分享图片

  

清除yum缓存:

yum clean all

为了以后方便安装软件可以做个yum安装保存本地的配置

grep keepcache /etc/yum.conf
keepcache=1

安装软件

yum -y install cobbler cobbler-web dhcptftp-server pykickstart httpdpython-django

启动服务

systemctl start cobblerd.service
systemctl start httpd.service


优化

cobbler check                                    ##按照提示一个个修正

备份文件

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

解压文件

tar xfP cobbler_load_for_CentOS7.tar.gz
ls /var/lib/cobbler/loaders

启动推送rsync

systemctl enable rsyncd
systemctl start rsyncd

编写密码文件

openssl passwd -1 -salt ‘oldboy’ ’123456’

进行文件比对

diff /etc/cobbler/settings{,.ori}
101c101
< default_password_crypted: "$1$oldboy$Npg9Pt9k98Mlg0ZeqHAuN1"
---
> default_password_crypted: "$1$mF86/UHC$WvcIcX2t6crBz2onWxyac."
242c242
< manage_dhcp: 1
---
> manage_dhcp: 0
272c272
< next_server: 172.16.1.202
---
> next_server: 127.0.0.1
292c292
< pxe_just_once: 1
---
> pxe_just_once: 0
384c384
< server: 172.16.1.202
---
> server: 127.0.0.1

快速执行命令

sed -i 's/server: 127.0.0.1/server: 172.16.1.202/' /etc/cobbler/settings
sed -i 's/next_server: 127.0.0.1/next_server: 172.16.1.202/' /etc/cobbler/settings
sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings
sed -i 's/pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings
sed -ri "/default_password_crypted/s#(.*: ).*#\1\"`openssl passwd -1 -salt 'oldboy' '123456'`\"#" /etc/cobbler/settings

配置DHCP配置文件

备份:

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

vim替换

%s/192.168/172.16/g

                ---后面提供了一个sed替换,为了防止出错执行vim替换命令

防止误重装

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

 

配置Cobbler统一管理DHCP

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

配置DHCP Cobbler模版 *

sed -i.ori's#192.168.1#172.16.1#g;22d;23d' /etc/cobbler/dhcp.template

启动服务&同步配置

systemctl start rsyncd 
systemctl enable rsyncd 
systemctl enable tftp.socket 
systemctl start tftp.socket 
systemctl restart cobblerd.service

执行同步

cobbler sync

WEB操作Cobbler

https://10.0.0.202/cobbler_web                 ##注意一定要加https

默认帐号密码均为cobbler

Web界面操作

将镜像同步到本机

           技术分享图片

 执行挂载命令:

mount /dev/cdrom /mnt/

          技术分享图片

          技术分享图片

配置default文件

cat /vat/lib/tftpboot/pxelinux.cfg/default
cat /etc/cobbler/pxe/pxedefault.template
              [object Object]

注释:将local替换为CentOS7.4-x86_64是指定安装这个系统

Ks文件配置

# Cobbler for Kickstart Configurator for CentOS 7 by MsyLinux
install
url --url=$tree
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
#Network information
$SNIPPET('network_config')
#network --bootproto=dhcp --device=eth0 --onboot=yes --noipv6 --hostname=CentOS7
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw  --iscrypted $default_password_crypted
clearpart --all --initlabel
part /boot --fstype xfs --size 1024
part swap --size 1024
part / --fstype xfs --size 1 --grow
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end

网页添加安装要求

            技术分享图片

内核优化命令

net.ifnames=0 biosdevname=0

            技术分享图片

            技术分享图片

            技术分享图片

           技术分享图片

注意:save是保存!!

 进行同步

              技术分享图片

CentOS6.9的Ks文件

# Cobbler for Kickstart Configurator for CentOS 6.9 by MsyLinux
install
url --url=$tree  
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
# Network information
$SNIPPET('network_config')
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw  --iscrypted $default_password_crypted
clearpart --all --initlabel
part /boot --fstype=ext4 --asprimary --size=200
part swap --size=1024
part / --fstype=ext4 --grow --asprimary --size=200
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end
%packages
@base
@compat-libraries
@debugging
@development
tree
nmap
sysstat
lrzsz
dos2unix
telnet
%end
%post
chkconfig postfix off
%end

如果有需要装Centos6系统的可以参照上文的Ks文件配置,也可以参照老男孩老师的博客进行安装配置;

老男孩老师-Centos6环境cobbler配置与使用

以上是关于Cobbler无人值守安装系统安装与使用的主要内容,如果未能解决你的问题,请参考以下文章

cobbler无人值守自动安装

Cobbler无人值守安装

kvm cobbler无人值守批量安装操作系统

CentOS7.x安装cobbler无人值守安装系统

cobbler无人值守批量安装Linux系统

Cobbler无人值守安装系统史上最细实践文档