cobbler批量安装OS

本文详细介绍在CentOS 7.6环境下安装和配置Cobbler的步骤,Cobbler是一个Linux安装服务器,用于快速搭建网络安装环境,支持多系统如CentOS、Ubuntu和SUSE。文中包括安装依赖包、配置服务、同步设置、导入镜像等关键环节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先放出官方网址:  https://cobbler.github.io/,官方介绍如下:

Cobbler is a Linux installation server that allows for rapid setup of network installation environments. It glues together and automates many associated Linux tasks so you do not have to hop between many various commands and applications when deploying new systems, and, in some cases, changing existing ones. Cobbler can help with provisioning, managing DNS and DHCP, package updates, power management, configuration management orchestration, and much more.

简单说就是以前的 kickstart的升级版,可以通过web(https)的方式来方便查看,更改应答文件.支持多系统(centos,ubuntu,suse)

 

下面介绍如何在centos7.6 环境下安装Cobbler

1,安装epel-release 源

yum install epel-release

2.安装其他依赖包

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

3.关闭 selinux,放行69/udp,80/tcp,443/tcp端口

setenforce 0 #临时关闭 selinux
firewall-cmd --zone=public --permanent --add-port=69/udp #放行tftp69端口
firewall-cmd --zone=public --permanent --add-port=80/tcp #放行80(http)端口
firewall-cmd --zone=public --permanent --add-port=443/tcp #放行443(https)端口
firewall-cmd --reload #重载防火墙

4.增加一个web用户名"admin",密码设为"123456".

htdigest /etc/cobbler/users.digest Cobbler admin  #Cobbler 首字母"C"需要大写

5.修改配置文件

# vim /etc/cobbler/settings
server: 192.168.1.9 #默认是本机,需要用服务器ip代替
next_server: 192.168.1.9 #默认是本机,需要用服务器ip代替
manage_dhcp: 1  #启用管理dhcp功能
pxe_just_once: 1 #默认同一台机器只安装一次

# 设置新装系统的默认root密码123456。下面的命令来源于提示。
# openssl passwd -1 -salt 'test' '123456'
# $1$forfun$q8gjm/wakmbRmWf4Ci5QU1  #生成的加密密码
# vim /etc/cobbler/settings 
default_password_crypted: "$1$forfun$q8gjm/wakmbRmWf4Ci5QU1" 

6.启动cobbler,httpd服务

systemctl start cobblerd.service #开启cobbler服务
systemctl enable cobblerd.service #设为开机启动

systemctl start httpd.service #开启httpd服务
systemctl enable httpd.service #设为开机启动

7.下载引导文件

cobbler get-loaders #下载引导文件

8.change 'disable' to 'no' in /etc/xinetd.d/tftp

# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no #修改此处
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

9.配置dhcp,只显示需要修改的部分.

vim /etc/cobbler/dhcp.template 

subnet 192.168.1.0 netmask 255.255.255.0 {
     option routers             192.168.1.9;  #服务器ip
     option domain-name-servers 192.168.1.9;  #服务器ip
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.1.100 192.168.1.254;  #dhcp起始至结束范围
}

10.同步设置

cobbler sync

11.启动相关服务

systemctl start dhcpd.service
systemctl enable dhcpd.service

systemctl start xinetd.service
systemctl enable xinetd.service

systemctl start rsyncd.service
systemctl enable rsyncd.service

12.挂载镜像(以Centos7.6举例)

mount -r Downloads/CentOS-7-x86_64-DVD-1810.iso /mnt/

13.导入镜像

cobbler import --path=/mnt/ --name=CentOS-7.6-x86_64 --arch=x86_64
# --path 镜像挂载的路径
# --name 为安装源定义一个名字
# --arch 指定安装源的架构

cobbler list                                    #查看导入结果

14.查看对应的kickstart文件路径

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

15.以上导入镜像的操作也通过cobbler-web 来完成

在浏览器中输入 https://192.168.1.9/cobbler_web #其中192.168.1.9为服务器的ip地址

点击左侧的Import DVD,Perfix(镜像名词),Arch(架构),Breed(分支),Path(镜像挂载路径),点击Run后即会执行导入镜像的操作(需要等待一定时间),可以通过左侧的Events查看当前的进度.

还可以点击左侧的Profiles查看存在的配置,以及通过点击View Kickstart查看对应的kickstart文件

点击Edit执行编辑操作

 

16.其他主机选择从网卡启动即可看到网络引导的选项了

有一点需要注意,默认的kickstart文件(sample_end.ks),会清空分区表,然后重新建分区,所以主机上有数据的同学要手动分区才可以保留以前的数据.对kickstart的语法感兴趣的同学自己百度吧.怕麻烦的也可以通过安装 system-config-kickstart 自己配置kickstart文件

yum install system-config-kickstart

使用命令: system-config-kickstart 启动kickstart配置工具,如下图

其实就是模拟安装操作系统的过程,然后依据自己的需要来完成操作。配置完成后,点击菜单栏中的 File-Preview 来预览生成的kickstart文件。如果确定无误就可以在cobbler_web添加刚才的配置文件如下图,依次点击左侧的 Kickstart Templates , Create New Kickstart File.然后将刚才的文件内容复制进去即可。

完结散花。

### 跨平台自动化Linux安装工具与方案 对于寻求一种能够跨多个环境实现Linux操作系统自动部署的方法,存在多种成熟的解决方案和技术栈可供选择。这些技术不仅支持不同硬件架构下的无人值守安装过程,还提供了灵活配置管理的能力。 #### Cobbler:集成化网络引导服务 Cobbler是一个强大的服务器安装和虚拟机创建工具,它简化了通过PXE(Preboot Execution Environment)方式来批量部署操作系统的流程[^1]。借助于其丰富的命令行接口以及Web界面,管理员可以轻松定义模板、管理系统映像并执行远程主机的初始化工作。更重要的是,Cobbler兼容广泛的发行版版本,并能与其他开源项目如Foreman紧密协作以增强功能特性。 #### Foreman:全面生命周期管理平台 作为一款基于Web的应用程序,Foreman专注于提供完整的基础设施即代码(IaC)体验,允许用户构建自定义的工作流来进行裸金属机器或是云实例上的OS预置活动。除了基本的任务调度外,该软件还能处理复杂的场景比如多阶段设置、包更新策略制定等。值得注意的是,Foreman同样具备良好的生态系统扩展性,可通过插件机制引入第三方组件从而满足特定业务需求[^2]。 #### Ansible Tower by Red Hat:企业级编排中心 Ansible本身是一套简单易用但仍不失强大之处的IT自动化框架;而当与其商业版本——Ansible Tower相结合时,则进一步提升了团队协作效率及安全性保障水平。利用内置的角色权限控制体系结构,组织内部成员可以根据各自职责范围安全地访问资源并对目标节点实施变更操作。此外,在面对大规模集群维护任务时,Tower所特有的图形化作业设计器无疑成为了提高生产力的一大助力[^3]。 ```bash # 使用Ansible Playbook进行Linux系统安装的一个例子 --- - hosts: all tasks: - name: Install required packages for kickstart file generation package: name: "@Development Tools" state: present - name: Copy custom Kickstart configuration template over SSH copy: src: /path/to/your/custom-kickstart.cfg.j2 dest: /root/kickstart.cfg - name: Trigger OS reinstallation via PXE boot method shell: | echo "default linux ks=http://{{ inventory_hostname }}/kickstart.cfg" >> /var/lib/tftpboot/pxelinux.cfg/default ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值