千家信息网

Cobbler自动化无人值守安装(实战!)

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,Cobbler介绍Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。Cobbler可以使用命令行方式
千家信息网最后更新 2025年01月24日Cobbler自动化无人值守安装(实战!)

Cobbler介绍

  • Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。
  • Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。
  • Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理。
  • Cobbler内置了一个轻量级配置管理系统,但它也支持和其它配置管理系统集成,如Puppet,暂时不支持SaltStack。

1,安装cobbler和必要的组件

[root@localhost ~]# yum install epel-release -y    ##安装epel源[root@localhost ~]# yum install  -y \> cobbler \      ##安装cobbler\> cobbler-web \    ##网页形式管理> dhcp \                ##地址分配服务 > tftp-server \       ##放压缩和引导文件> pykickstart \      ##Python开发的kickstart> httpd \               ##网络服务> rsync \              ##远程同步管理> xinetd               ##管理平台

2,修改cobbler的配置文件

[root@localhost ~]# cd /etc/cobbler/[root@localhost cobbler]# vim settings  ##修改配置文件next_server: 192.168.13.140     ##修改服务地址为本地server: 192.168.13.140manage_dhcp: 1    ##dhcp开启[root@localhost cobbler]# systemctl start httpd.service      ##开启http服务[root@localhost cobbler]# systemctl start cobblerd.service ##开启cobbler服务[root@localhost cobbler]# systemctl stop firewalld.service  ##关闭防火墙[root@localhost cobbler]# setenforce 0     ##关闭增强功能

3,优化cobbler

[root@localhost cobbler]# cobbler check   ##cobbler检测需要优化项##下面会列出需要优化的东西,根据优化项进项优化即可[root@localhost cobbler]# vim /etc/xinetd.d/tftp  ##进行tftp优化service tftp{                socket_type             = dgram                protocol                = udp                wait                    = yes                user                    = root                server                  = /usr/sbin/in.tftpd                server_args             = -s /var/lib/tftpboot                disable                 = no     ##此处yes改为no                per_source              = 11                cps                     = 100 2                flags                   = IPv4}[root@localhost cobbler]# systemctl enable rsyncd.service  ##优化开启远程同步管理服务[root@localhost cobbler]# openssl passwd -1 -salt 'abc123' 'abc123'  ##优化设置管理员密码$1$abc123$9v8z2./E/PZihXrVcy3II0   ##复制此段是盐值加密过后的密文[root@localhost cobbler]# vim /etc/cobbler/settings  ##修改配置文件##查找default然后将加密的密文复制到此处default_password_crypted: "$1$abc123$9v8z2./E/PZihXrVcy3II0"[root@localhost cobbler]# systemctl start rsyncd.service   ##启动服务[root@localhost cobbler]# systemctl restart xinetd.service 

4,配置dhcp服务

[root@localhost cobbler]# vim /etc/cobbler/dhcp.template  ##修改配置文件subnet 192.168.13.0 netmask 255.255.255.0 {     ##修改网段         option routers             192.168.13.1;                 ##网关         option domain-name-servers 192.168.13.2;     ##dns地址         option subnet-mask         255.255.255.0;         range dynamic-bootp        192.168.13.100 192.168.13.200;  ##地址池[root@localhost cobbler]# cobbler sync  ##同步生成DHCP配置文件(/etc/dhcp/dhcpd.conf)[root@localhost cobbler]# systemctl restart dhcpd.service   ##启动dhcp服务[root@localhost cobbler]# systemctl start cobblerd.service  ##启动cobbler服务[root@localhost cobbler]# systemctl start xinetd.service      ##启动管理平台服务

5,导入ISO镜像文件

先连接镜像文件,并挂载到/mnt目录下

[root@localhost cobbler]# mount /dev/cdrom /mnt   ##将镜像挂载到/mnt目录下mount: /dev/sr0 写保护,将以只读方式挂载[root@localhost cobbler]# cd /mnt/   [root@localhost mnt]# ls    ##查看镜像文件CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7EULA             isolinux  repodata  TRANS.TBL

导入镜像文件

[root@localhost mnt]# cobbler import --path=/mnt/ --name=Centos-7-x86_64 --arch=x86_64##导入镜像文件指明路径,生成名字[root@localhost mnt]# cd /var/www/cobbler/ks_mirror/   ##切换到cobbler目录下[root@localhost ks_mirror]# lsCentos-7-x86_64  config[root@localhost ks_mirror]# cobbler list    ##查看文件信息distros:     Centos-7-x86_64profiles:     Centos-7-x86_64systems:repos:images:mgmtclasses:packages:files:

查看压缩内核和引导文件

[root@localhost ks_mirror]# yum install tree -y   ##安装tree工具[root@localhost ks_mirror]# tree /var/lib/tftpboot/images    ##查看压缩内核和引导文件/var/lib/tftpboot/images└── Centos-7-x86_64        ├── initrd.img    ##引导文件        └── vmlinuz      ##压缩内核

全部重启服务

[root@localhost ks_mirror]# systemctl restart cobblerd.service [root@localhost ks_mirror]# systemctl restart dhcpd.service [root@localhost ks_mirror]# systemctl restart xinetd.service [root@localhost ks_mirror]# systemctl restart httpd.service 

6,创建一台没有系统的虚拟机,开启自动安装系统(字符界面)


安装图形界面

代码:[root@localhost ~]#yum groupinstall "GNOME Desktop"代码:[root@localhost ~]# yum groupinstall 'KDE Plasma Workspaces" -y代码:[root@localhost ~]# yum groupinstall "X Window System" 或者"Graphical Administration Tools"

7,利用cobbler的web管理

[root@localhost ks_mirror]# vim /etc/cobbler/modules.conf ##配置模块配置文件module = authn_configfile  ##默认开启[root@localhost ks_mirror]# htdigest -c /etc/cobbler/users.digest Cobbler adadmin ##创建用户密码Adding password for adadmin in realm Cobbler.New password:     ##输入密码Re-type new password: [root@localhost ks_mirror]# systemctl restart cobblerd.service   ##重启cobbler服务[root@localhost ks_mirror]# systemctl restart httpd.service         ##重启httpd服务

8,网页访问cobbler的web管理


9,启用pam认证,身份登录

[root@localhost ks_mirror]# vim /etc/cobbler/modules.conf   ##修改模块配置文件[authentication]   module = authn_pam    ##修改成pam认证模块[authorization]module = authz_ownership ##指定访问权限[root@localhost ks_mirror]# useradd webuser  ##创建系统用户[root@localhost ks_mirror]# passwd webuser   ##设置密码更改用户 webuser 的密码 。新的 密码:无效的密码: 密码少于 8 个字符重新输入新的 密码:passwd:所有的身份验证令牌已经成功更新。[root@localhost ks_mirror]# vim /etc/cobbler/users.conf   ##修改cobbler下的users.conf文件[admins]admin = ""cobbler = ""webuser = ""    ##添加用户[root@localhost ks_mirror]# systemctl restart httpd.service   ##重启服务[root@localhost ks_mirror]# systemctl restart cobblerd.service 

10,登录web管理网页


谢谢阅读!

0