【亲测可用】Cobbler自动批量部署Linux系统

Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows。该工具使用python开发,小巧轻便,使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP、DNS、TFTP、RSYNC以及yum仓库、构造系统ISO镜像。

Cobbler支持命令行管理,web界面管理,还提供了API接口,可以方便二次开发使用。

Cobbler客户端Koan支持虚拟机安装和操作系统重新安装,使重装系统更便捷。

环境准备

  1. VMware 12 虚拟机
  2. Centos 7 操作系统(网卡模式:NAT模式;IP地址为:192.168.96.129)
  3. 软件包: epel-release-latest-7.noarch.rpm 密 码:fqw7

服务部署

  1. 安装 epel-release-latest-7.noarch.rpm 软件包(cobbler相关软件包是由EPEL源提供的)

    rpm -ivh /mnt/epel-release-latest-7.noarch.rpm
  2. 安装cobbler cobbler-web dhcp tftp-server pykickstart httpd rsync xinetd软件包
yum install cobbler cobbler-web dhcp tftp-server pykickstart httpd rsync xinetd -y
  1. 修改cobbler主配置文件:

    vim /etc/cobbler/settings

next-server:192.168.96.129 #tftp服务器的ip地址
server:192.168.96.129 #服务器的ip地址
manage_dhcp:1 #开启dhcp功能

  1. 使用cobbler check对cobbler做检查设置

    cobbler check 

---------------------提示内容:需要优化-----------------------------------
The following are potential configuration items that you may want to fix:

1 : SELinux is enabled. Please review the following wiki page for details on ensuring cobbler works correctly in your SELinux environment:
https:#github.com/cobbler/cobbler/wiki/Selinux

2 : change ‘disable‘ to ‘no‘ in /etc/xinetd.d/tftp

3 : Some network boot-loaders are missing from /var/lib/cobbler/loaders, you may run ‘cobbler get-loaders‘ to download them, or, if you only want to handle x86/x86_64 netbooting, you may ensure that you haveinstalled a recent version of the syslinux package installed and can ignore this message entirely. Files in this directory, should you want to support all architectures, should include pxelinux.0, menu.c32, elilo.efi, and yaboot. The ‘cobbler get-loaders‘ command is the easiest way to resolve these requirements.

4 : enable and start rsyncd.service with systemctl

5 : debmirror package is not installed, it will be required to manage debian deployments and repositories

6 : The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to ‘cobbler‘ and should be changed, try: "openssl passwd -1-salt ‘random-phrase-here‘ ‘your-password-here‘" to generate new one

7 : fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them
Restart cobblerd and then run ‘cobbler sync‘ to apply changes.

  1. 修改cobbler用户的初始密码,可以使用以下命令生成密码

    openssl passwd -1 -salt ‘abc123‘ ‘abc123‘    #盐值加密

$1$abc123$9v8z2./E/PZihXrVcy3II0 #加密后的密码

将此密码替换到settings文件中

default_password_crypted: "$1$abner$kDle2KnwbPHdm1UZEE79V." #替换密码,此为root用户密码
:wq! #保存退出

  1. 下载引导操作系统文件

    cobbler get-loaders 
  2. 启动rsyncd服务
    systemctl start rsyncd.service
  3. 开启tftp服务
    vim /etc/xinetd.d/tftp

    disable = no #将yes修改为no,启用tftp

重启xinetd服务

systemctl restart xinetd.service

  1. 编辑dhcp模板文件

    vim /etc/cobbler/dhcp.template       

    #cobbler控制的dhcp服务模板

subnet 192.168.96.0 netmask 255.255.255.0 {
option routers 192.168.96.1; #修改网关
option domain-name-servers 192.168.96.2; #修改DNS
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.96.100 192.168.96.200; #修改地址池
:wq! #保存退出

  1. 同步生成DHCP配置文件

    cobbler sync      
  2. 启动dhcpd服务
    systemctl restart dhcpd.service    
  3. 加载系统光盘镜像
    mount /dev/sr0 /mnt

    #导入iso镜像

    cobbler import --path=/mnt/ --name=CentOS-7-x86_64 --arch=x86_64 

    #默认导入存放位置

    /var/www/cobbler/ks_mirror/CentOS-7-x86_64        

#查看导入结果

cobbler list    

distros:
Centos-7-x86_64
profiles:
Centos-7-x86_64
systems:
repos:
images:
mgmtclasses:
packages:
files:

#查看发行版本

cobbler distro list   

#安装tree软件包

yum install tree -y

tree /var/lib/tftpboot/images #查看内核和初始化文件在tftp server 共享目录
└── Centos-7-x86_64
├── initrd.img
└── vmlinuz

cobbler profile report

Name : Centos-7-x86_64
TFTP Boot Files : {}
Comment :
DHCP Tag : default
Distribution : Centos-7-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

#ks默认文件存放位置

/var/lib/cobbler/kickstarts/sample_end.ks 

#cobbler日志文件所在位置

/var/log/cobbler/cobbler.log

关闭防火墙及安全功能

setenforce 0
systemctl stop firewalld.service

客户端安装完成后只具备字符界面
登录账户名:root 密码:abc123

Cobbler Web用户设置

vim /etc/cobbler/modules.conf     

authn_configfile #默认就是模块认证

htdigest -c /etc/cobbler/users.digest Cobbler maaiqiang
输入两次确认密码(123123)

#重新启动cobblerd、httpd服务

systemctl restart cobblerd.service
systemctl restart httpd.service


自动装机







以下为Cobbler web管理平台




原文地址:http://blog.51cto.com/10316297/2117219

时间: 2024-07-31 19:10:13

【亲测可用】Cobbler自动批量部署Linux系统的相关文章

详解使用Cobbler快速批量部署linux系统

前言:这几天闲着没事来系统组玩玩,学点东西总是好的嘛.系统组系统组当然还是从学会装系统开始.花了两个小时折腾了一下用cobbler批量部署linux系统.第一次做当然中间遇到很多问题,不过都顺利解决了.完了总结一下写个帖子和大家分享一下. 系统版本:Centos6.5 32位cobbler服务器IP:192.168.175.130 IP地址段:192.168.175.120-192.168.175.140子网掩码:255.255.255.0网关:192.168.175.2DNS:8.8.8.8

自动化批量部署Linux系统(Kickstart+DHCP+NFS(http)+TFTP+PXE)

自动化批量部署Linux系统 (Kickstart+DHCP+NFS(http)+TFTP+PXE) 楓城浪子原创(除原理流程图外),转载请标明出处! 更多技术博文请见个人博客:https://fengchenglangzi.000webhostapp.com 微信bh19890922 QQ445718526.490425557 序: 本文主要介绍自动化部署操作系统,主要借助的工具包含(Kickstart+DHCP+NFS(http)+TFTP+PXE),至于每种工具用途及作用请自行补脑,本文主

Cobbler自动安装的Linux系统ssh无法进入

Linux ssh登陆老提示“permission denied,please try again” ,但是iptables已经关掉了 修改/etc/ssh/sshd_config文件.找如下的一句 #PermitRootLogin yes 改为如下的 PermitRootLogin yes 注意,要把前面的#号去掉. 重启sshd服务器 # service sshd restart Cobbler自动安装的Linux系统ssh无法进入,布布扣,bubuko.com

PXE实现批量部署linux系统

pxe批量部署linux服务器 1.pxe介绍 PXE是有intel设计的协议,它可以使计算机通过网络启动,协议分为client和server两端,PXEclient在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存中执行,并显示出命令菜单,经用户选择PXE启动后,PXE client获取网络地址信息,然后将放置在远端的服务器上的操作系统文件通过网络下载到本地运行 既然是通过网络传输,就需要IP地址,也就是说在PXE启动过程中,PXE客户端会请求DHCP服务器分配IP地址,

Cobbler自动批量装机linux

cobbler是一个使用Python开发的开源项目,通过将部署系统所涉及的所有服务集中在一起,来提供一个全自动批量快速建立Linux系统的网络安装环境. Cobbler还提供了DHCP管理.YUM源管理.电源管理等功能,初次之外还支持命令行管理.WEB界面管理,并且提供了API接口,方便进行二次开发 cobbler和pxe高效批量网络装机都是自动化安装,但是cobbler是pxe的二次封装,在使用上更加方便,集成多个软件进行实现. 软件名 作用 cobbler 用来快速建立linux网络安装环境

cobbler自动批量部署centOS6和centOS7

cobbler简介 使用PXE批量部署时,有一个缺陷,即只能安装单一的操作系统(同一个版本,仅用一个kickstart文件).但是在实际环境中,不同功能的服务器需要部署不同的环境,而cobbler正好满足了这一需求.cobbler基于python开发,是对PXE的二次封装,且提供了CLI和Web的管理形式,使得操作和管理更加简便.cobbler的实现与PXE类似,也需要tftp,httpd,dhcp这些服务.使用yum即可完成cobbler的安装,在安装的同时也会自动安装tftp和httpd服务

PXE+kickstart实现批量部署linux系统

当企业有大量的新机需要安装系统,如果每台都接上系统光盘并人工选择配置安装,无疑工作量巨大.而 PXE+kickstart 的安装方式能够实现自动化批量部署,特别适用于这种场景. 一.批量部署方式 ①物理机:PXE 负载均衡 ②虚拟机:映像文件模板 分布式文件系统 无论是针对物理机还是虚拟机的批量部署,都会对文件服务器造成巨大的压力,可以分别使用负载均衡和分布式文件系统的方式缓解 二.PXE工作原理 客户机通过支持PXE的网卡请求DHCP服务器 --> DHCP服务器给客户端分配IP地址等,并告诉

无人职守自动批量安装linux系统超详细

无人职守自动安装Linux系统 先讲一下技术,pxe是由intel公司开发的基于客户端/服务器模式的一种技术,其核心功能是让客户端通过网络从远端服务器下载启动镜像,从而实现网络启动. ,kickstart安装是目前主要的一种无人职守自动部署安装操作系统方式,其核心是自动应答文件(kickstart文件),这个文件包括了我们手动安装系统时候设置的语言,密码,网络参数等,该文件可通过三种方式生成,我们用其中的一种,图形生成. 原理,客户端需要设置BIOS通过网络启动,客户端启动会发送广播包的形式来寻

利用pxe dhcp tfcp http kickstart实现批量部署linux系统

1.为什么要实现批量部署利用一台已经做好配置的主机去批量安装其他主机系统2.了解什么是Pxe1.预启动执行环境(Preboot eXecution Environment,PXE)也被称为预执行环境,提供了一种使用网络接口(Network Interface)启动计算机的机制.这种机制让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统 .2.由Intel和Systemsoft公司于1999年9月20日公布的技术3.C/S的工作模式4.PXE客户端会调用网际协议(IP).用户