一、Cobbler 与 PXE 的不同点

1、Cobbler 是什么?

Cobbler 是红帽公司研发的基于 PXE 技术的装机服务,可以选着性安装多个不同的操作系统

2、Cobbler 与 PXE 如何选择?

PXE:适合环境中只需要安装同一操作系统即可,并且开机后不需介入

Cobbler:适合环境中有多种操作系统的需求,开机后需人员选择安装的操作系统版本

二、Cobbler 无人值守安装部署

环境介绍

Cobbler: CentOS Linux release 7.5.1804 (Core) 双网卡(一块桥接用于上网,一块仅主机模式192.168.100.100/24)

Client:vmware 虚拟机环境,网卡为仅主机(关闭vmware自带dhcp)

1、安装cobbler

#配置epel源
[root@cobbler ~]# yum -y install epel-release#安装所需软件包
[root@cobbler ~]# yum install -y cobbler cobbler-web pykickstart debmirror#开启 Apache 服务,即是管理页面也是镜像分享服务
[root@cobbler ~]# systemctl enable httpd[root@cobbler ~]# systemctl start httpd.service#开启 Cobbler 服务
[root@cobbler ~]# systemctl enable cobblerd.service[root@cobbler ~]# systemctl start cobblerd.service[root@cobbler ~]# ss -utpln |grep 25151tcp    LISTEN     0      5      127.0.0.1:25151                 *:*                   users:(("cobblerd",pid=1552,fd=9))

2、配置Cobbler

#修改 Cobbler 主配置文件
[root@cobbler ~]# vim /etc/cobbler/settings272 next_server: 192.168.100.100384 server: 192.168.100.100#向代码主站发起获取必备数据
[root@cobbler ~]# cobbler get-loaderstask started: 2019-07-20_082816_get_loaders
task started (id=Download Bootloader Content, time=Sat Jul 20 08:28:16 2019)
downloading https://cobbler.github.io/loaders/README to /var/lib/cobbler/loaders/README
downloading https://cobbler.github.io/loaders/COPYING.elilo to /var/lib/cobbler/loaders/COPYING.elilo
downloading https://cobbler.github.io/loaders/COPYING.yaboot to /var/lib/cobbler/loaders/COPYING.yaboot
downloading https://cobbler.github.io/loaders/COPYING.syslinux to /var/lib/cobbler/loaders/COPYING.syslinux
downloading https://cobbler.github.io/loaders/elilo-3.8-ia64.efi to /var/lib/cobbler/loaders/elilo-ia64.efi
downloading https://cobbler.github.io/loaders/yaboot-1.3.17 to /var/lib/cobbler/loaders/yaboot
downloading https://cobbler.github.io/loaders/pxelinux.0-3.86 to /var/lib/cobbler/loaders/pxelinux.0
downloading https://cobbler.github.io/loaders/menu.c32-3.86 to /var/lib/cobbler/loaders/menu.c32
downloading https://cobbler.github.io/loaders/grub-0.97-x86.efi to /var/lib/cobbler/loaders/grub-x86.efi
downloading https://cobbler.github.io/loaders/grub-0.97-x86_64.efi to /var/lib/cobbler/loaders/grub-x86_64.efi
*** TASK COMPLETE ***#开启 rsync ,Cobbler 借助 rsync 进行目录之间的内容同步
[root@cobbler ~]# systemctl enable rsyncd#关闭非常规系统以及 32 位系统的安装
[root@cobbler ~]# vim /etc/debmirror.conf28 #@dists="sid";30 #@arches="i386";#创建与系统加密方案一致的密码,用于系统初始化密码
[root@cobbler ~]# openssl passwd -1 -salt $(openssl rand -hex 4)Password:
$1$b11bf153$A.RDrCKSv0fEigqQ03oYa.#设置默认密码
[root@cobbler ~]# vim /etc/cobbler/settings101 default_password_crypted: "$1$b11bf153$A.RDrCKSv0fEigqQ03oYa."#安装 Cobbler 隔离机制,防止重复安装,centos7 中没有 cman 报错正常
[root@cobbler ~]# yum -y install cman fence-agents#开启 tftp 服务器,centos7 中需要安装 xinetd 软件包
[root@cobbler ~]# yum -y install xinetd[root@cobbler ~]# vim /etc/xinetd.d/tftpdisable                 = no[root@cobbler ~]# systemctl restart cobblerd#进行自动同步文件
[root@cobbler ~]# cobbler sync#进行 Cobbler 自检
[root@cobbler ~]# cobbler checkNo configuration problems found.  All systems go.

3、安装配置dhcp服务

[root@cobbler ~]# yum -y install dhcp#配置并开启dhcp服务器
[root@cobbler ~]# vim /etc/dhcp/dhcpd.confoption domain-name "chinasoft.com";option domain-name-servers 114.114.114.114,8.8.8.8;default-lease-time 43200;max-lease-time 86400;log-facility local7;subnet 192.168.100.0 netmask 255.255.255.0 {range 192.168.100.100 192.168.100.200;option routers 192.168.100.100;}next-server 192.168.100.100;filename="pxelinux.0";[root@cobbler ~]# systemctl enable tftp[root@cobbler ~]# systemctl start tftp[root@cobbler ~]# systemctl enable dhcpd[root@cobbler ~]# systemctl start dhcpd[root@cobbler ~]# systemctl restart cobblerd

4、插入Centos6.5的光盘(在cd/dvd设备中连接)

[root@cobbler ~]# mount /dev/cdrom /media/#导入镜像文件至 Cobbler 服务中,可以通过访问:http://IP/cobbler/ 看到文件列表
[root@cobbler ~]# cobbler import --name="centos6.5-x86_64" --path=/media/task started: 2019-07-20_084414_import
task started (id=Media import, time=Sat Jul 20 08:44:14 2019)
Found a candidate signature: breed=redhat, version=rhel6
Found a matching signature: breed=redhat, version=rhel6
Adding distros from path /var/www/cobbler/ks_mirror/centos6.5-x86_64:
creating new distro: centos6.5-x86_64
trying symlink: /var/www/cobbler/ks_mirror/centos6.5-x86_64 -> /var/www/cobbler/links/centos6.5-x86_64
creating new profile: centos6.5-x86_64
associating repos
checking for rsync repo(s)
checking for rhn repo(s)
checking for yum repo(s)
starting descent into /var/www/cobbler/ks_mirror/centos6.5-x86_64 for centos6.5-x86_64
processing repo at : /var/www/cobbler/ks_mirror/centos6.5-x86_64
need to process repo/comps: /var/www/cobbler/ks_mirror/centos6.5-x86_64
looking for /var/www/cobbler/ks_mirror/centos6.5-x86_64/repodata/*comps*.xml
Keeping repodata as-is :/var/www/cobbler/ks_mirror/centos6.5-x86_64/repodata
*** TASK COMPLETE ***#查看已导入镜像
[root@cobbler ~]# cobbler distro listcentos6.5-x86_64#拷贝Centos6.5的 KS 文件至默认 KS 存放目录
[root@cobbler ~]# cp centos6.5-x86_64.cfg /var/lib/cobbler/kickstarts/#将已导入镜像文件与 KS 文件进行整合
[root@cobbler ~]# cobbler profile remove --name=centos6.5-x86_64[root@cobbler ~]# cobbler profile add --name=centos6.5-x86_64-basic --distro=centos6.5-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.5-x86_64.cfg[root@cobbler ~]# cobbler profile listcentos6.5-x86_64-basic[root@cobbler ~]# cobbler sync#删除对应的 KS 文件命令
cobbler profile remove --name=centos6.7-x86_64#删除对应的镜像文件
cobbler distro remove --name=centos6.7-x86_64

5、插入Centos7.4的光盘(先取消挂载,再在cd/dvd设备中连接)

[root@cobbler ~]# umount /media/[root@cobbler ~]# mount /dev/cdrom /media/#导入镜像文件至 Cobbler 服务中,可以通过访问:http://IP/cobbler/ 看到文件列表
[root@cobbler ~]# cobbler import --name="centos7.4-x86_64" --path=/media/task started: 2019-07-20_090054_import
task started (id=Media import, time=Sat Jul 20 09:00:54 2019)
Found a candidate signature: breed=redhat, version=rhel6
Found a candidate signature: breed=redhat, version=rhel7
Found a matching signature: breed=redhat, version=rhel7
Adding distros from path /var/www/cobbler/ks_mirror/centos7.4-x86_64:
creating new distro: centos7.4-x86_64
trying symlink: /var/www/cobbler/ks_mirror/centos7.4-x86_64 -> /var/www/cobbler/links/centos7.4-x86_64
creating new profile: centos7.4-x86_64
associating repos
checking for rsync repo(s)
checking for rhn repo(s)
checking for yum repo(s)
starting descent into /var/www/cobbler/ks_mirror/centos7.4-x86_64 for centos7.4-x86_64
processing repo at : /var/www/cobbler/ks_mirror/centos7.4-x86_64
need to process repo/comps: /var/www/cobbler/ks_mirror/centos7.4-x86_64
looking for /var/www/cobbler/ks_mirror/centos7.4-x86_64/repodata/*comps*.xml
Keeping repodata as-is :/var/www/cobbler/ks_mirror/centos7.4-x86_64/repodata
*** TASK COMPLETE ***#查看已导入镜像
[root@cobbler ~]# cobbler distro listcentos6.5-x86_64centos7.4-x86_64#拷贝Centos6.5的 KS 文件至默认 KS 存放目录
[root@cobbler ~]# cp centos7.4-x86_64.cfg /var/lib/cobbler/kickstarts/#将已导入镜像文件与 KS 文件进行整合
[root@cobbler ~]# cobbler profile remove --name=centos7.4-x86_64[root@cobbler ~]# cobbler profile add --name=centos7.4-x86_64-basic --distro=centos7.4-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.4-x86_64.cfg[root@cobbler ~]# cobbler profile listcentos6.5-x86_64-basiccentos7.4-x86_64-basic[root@cobbler ~]# cobbler sync

三、Centos6 KS 模板分享

ks文件可在不同系统中通过system-config-kickstart工具生成

# Kickstart file automatically generated by anaconda.#version=DEVEL
install
url --url="http://192.168.100.100/cobbler/ks_mirror/centos6.5-x86_64/"
lang zh_CN.UTF-8
keyboard us
network --onboot no --device eth0 --bootproto dhcp --noipv6
rootpw  --iscrypted $default_password_crypted
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --enforcing
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
clearpart --nonepart /boot --fstype=ext4 --size=500
part swap --size=4096
part / --fstype=ext4 --grow --size=200%packages
@base
@chinese-support
@core
@development
@server-platform-devel
@server-policy
@workstation-policy
sgpio
device-mapper-persistent-data
jpackage-utils
%end

四、Centos7 KS模板分享

#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
#Use NFS installation Media
url --url="http://192.168.100.100/cobbler/ks_mirror/centos7.4-x86_64/"
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=cn --xlayouts='cn'
# System language
lang zh_CN.UTF-8# Network information
network  --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate
network  --hostname=localhost.localdomain# Root password
rootpw --iscrypted $default_password_crypted
# System services
services --enabled="chronyd"
# System timezone
timezone Asia/Shanghai --isUtc
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
autopart --type=lvm
# Partition clearing information
clearpart --none --initlabel%packages
@^minimal
@core
@development
chrony
kexec-tools%end%addon com_redhat_kdump --enable --reserve-mb='auto'%end%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end

五、客户端测试

新建虚拟机进行测试安装,如在启动虚拟机过程出现下图报错

/sbin/dmsquash-live-root:line286:printf:write error:no space left on device

以上报错为内存不足导致,请调整内存大小为2GB以上

Cobbler无人值守安装相关推荐

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

    本文档来自老男孩教育VIP课程 内部学员总结笔记文档笔记内容,和大家分享! 老男孩教育2016年全干货博客,http://blog.oldboyedu.com Cobbler无人值守安装系统史上最细实 ...

  2. 搭建Cobbler无人值守安装服务器

    Cobbler 介绍 Cobbler是一个Linux服务器快速网络安装的服务,而且在经过调整也可以支持网络安装windows. 该工具使用python开发,小巧轻便(才15k行python代码),可以 ...

  3. COBBLER无人值守安装-----已用真实服务器测试

    已用真实服务器测试安装,只要按照步骤做就可以正常使用. 后面主要是KS文件的编写.centos7默认是xfs系统,默认的ks文件,安装包是292个,用ISO装系统,选最小化安装是297个,基本一致. ...

  4. Centos7.x实现Cobbler无人值守安装

    Cobbler 技术原理解析: Client向PXE Server上的DHCP发送IP地址请求消息,DHCP检测Client是否合法(主要是检测Client的网卡MAC地址),如果合法则返回Clien ...

  5. cobbler 无人值守-安装

    环境准备 准备两台主机,如centos6和centos7 centos7当作server服务器 关闭selinux 关闭防火墙 安装 cobbler包光盘里是没有的,要配置epel源,这里就说怎么配置 ...

  6. 搭建 Cobbler 无人值守安装服务器

    环境: CentOS 7 VMware Workstation Pro 14 介绍: Cobbler 的优点:自动管理各个服务器间的配置,更强大的管理功能.而且它还有 Web 管理界面,可以通过点一点 ...

  7. cobbler 无人值守安装

    所需服务 PXE服务支持DHCP服务管理DNS服务管理(可选bind,dnsmasq)电源管理Kickstart服务支持YUM仓库管理TFTP(PXE启动时需要)Apache(提供kickstart的 ...

  8. PXE+Kickstart无人值守安装系统

    文章目录 1 kickstart简介 1.1 什么是kickstart 1.2 什么是PXE 2 安装配置kickstart 2.1 配置DHCP服务 2.2 配置TFTP服务 2.3 web服务配置 ...

  9. Kickstart无人值守安装

    网上看到一篇好文章转载下来 ,下次用的时间不用再找文档 原连接http://www.zyops.com/autoinstall-kickstart#commentform 导言 作为中小公司的运维,经 ...

最新文章

  1. ioS开发之c语言基础-一维数组,字符数组
  2. Java 8 类型转换及改进
  3. iOS 清除未使用图标
  4. python 循环播放音乐_python gstreamer实现视频快进/快退/循环播放功能
  5. datasource dbcp 数据源_数据源--.dbcp.BasicDataSource 使用
  6. 微型计算机的现状历史未来,微型计算机的发展历史、现状和未来
  7. STP协议:生成树协议(二层防环机制:防止网桥网络中冗余链路形成环路工作)
  8. LeetCode.495 Teemo Attacking
  9. 厦门大学-机器学习-苏松志
  10. Python每日一练-----三点共线问题
  11. Java:计算代码耗时的5种方法
  12. PyEcharts 之 仪表盘
  13. 4g网络设置dns地址_网速变慢?你可能需要先设置好 DNS | 科普
  14. oracle connectionstring 属性尚未初始化.,ConnectionString 属性尚未初始化
  15. MIC29302WU-TR高电流、高精度、低压差的稳压器
  16. XSS学习笔记(未完)
  17. python数据库开发 dga_DGA detection based on Deep Learning (CNN and GRU) (基于深度学习的DGA检测)...
  18. 对未来的一些规划和想法
  19. 金色传说:SAP-ABAP-SELECT * FORM 内表语法
  20. Tiny210裸机开发初体验

热门文章

  1. 多视图几何的相似变换、仿射变换与影射变换~
  2. win10 +anaconda+pytorch_gpu
  3. php 反射执行类方法,PHP的反射类ReflectionClass、ReflectionMethod使用方法
  4. 程序员保护好自己的颈椎
  5. 【网络流24题】太空飞行计划
  6. 德工业联合会建议欧盟对中国采取强硬政策 商务部回应
  7. 小学有计算机课程吗,小学计算机是不是就是信息技术啊
  8. 互联网之父:文登•瑟夫
  9. linux培训好还是自学好,Linux培训好还是自学好,该怎么判断自己适合哪种方式?...
  10. am超外差收音机matlab,超外差式AM/FM收音机的调试