阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux 运维自动化之Cobbler概述

224次阅读
没有评论

共计 12407 个字符,预计需要花费 32 分钟才能阅读完成。

大纲

一、前言

二、PXE 概述

三、Kickstart 概述

四、Cobbler 简介

五、Cobbler 组成

六、Cobbler 工作原理

七、Cobbler 不足

注,操作系统 CentOS 6.4 x86_64,软件版本 Cobbler-2.4.0-1。(目前最新版

 

一、前言

在上一篇博客中(http://www.linuxidc.com/Linux/2013-11/92301.htm )简单的和大家说了一下运维自动化,在这一篇博客中我们主要来讲解一下系统安装与管理类工具 Cobbler。好了,我们废话不多说直接上干货。在说 Cobbler 工具之前我们先来说一下网络基础知识一个是 PXE,另一个是 Kickstart。好了,下面我们先来说一下 PXE。

 

二、PXE 概述

预启动执行环境(Preboot eXecution Environment,PXE,也被称为预执行环境)是让计算机通过网卡独立地使用数据设备 (如硬盘) 或者安装操作系统。PXE 当初是作为 Intel 的有线管理体系的一部分,Intel 和 Systemsoft 于 1999 年 9 月 20 日公布其规格 (版本 2.1)。通过使用像网际协议(IP)、用户数据报协议(UDP)、动态主机设定协定(DHCP)、小型文件传输协议(TFTP) 等几种网络协议和全局唯一标识符 (GUID)、通用网络驱动接口(UNDI)、通用唯一识别码(UUID) 的概念并通过对客户机 (通过 PXE 自检的电脑) 固件扩展预设的 API 来实现目的。PXE 客户机 (client) 这个术语是指机器在 PXE 启动过程中的角色。一个 PXE 客户机 (client) 可以是一台服务器、桌面级电脑、笔记本电脑或者其他装有 PXE 启动代码的机器。

 

客户机的固件为接受到可用的 PXE 启动服务器,要在网络中尝试找出 PXE 重定向服务 (DHCP 代理)。在分析返回的包后,固件会向合适的启动服务器询问网络自检程序(NBP) 的路径,并且通过 TFTP 协议下载到电脑的内存中,有可能会去校验它,最后执行它。当只有全部的 PXE 客户机 (client) 只使用一个 NBP 时,全部的 PXE 客户机可能会被指定是用 BOOTP 协议,从而不需要 DHCP 代理,但是仍然需要 TFTP 启动服务。

 

PXE 协议大致上结合了 DHCP 和 TFTP,虽然都有在两者上面有改进。DHCP 用于查找合适的启动服务器,TFTP 用于下载初始引导程序和附加文件。为了开始一个 PXE 自检会话,PXE 固件广播一个带有明确的 PXE 选项 DHCPDISCOVER 包 (扩展 DHCPDISCOVER) 到 67/UDP 端口(DHCP 服务器端口)。PXE 选项是 PXE 固件有 PXE 能力的鉴定,但是会被一般的 DHCP 服务忽略。当固件受到从这样的服务受到 DHCPOFFER 包时,它会通过要求其提供配置信息来自我配置。

 

当 PXE 重定向服务(DHCP 代理)收到一个 扩展 DHCPDISCOVER 包时,它会通过发送一个带有明确的 PXE 选项 DHCPDISCOVER 包到 PXE 客户机的 68/UDP 端口 (DHCP 客户机端口)来回答。一个扩展 DHCPDISCOVER 包主要包含:

  • 一个 PXE 发现控制领域,以决定是使用多播,广播 (网路) 或单播来联系 PXE 启动服务器。

  • 一个列出可用的 PXE 启动服务器类型的地址表。

  • 一个代表每个一个 PXE 启动服务器类型的条目单。

  • 一个带有带有提示用户按下哪一个键来看到启动菜单的 PXE 启动菜单。

  • 一个超过多长时间就启动第一启动菜单的超时数值。

 

一个 DHCP 代理服务可能在相同的主机上运行一个标准的 DHCP 服务器。尽管两个服务不可以共享 67/UDP 端口,DHCP 代理服务在 4011/UDP 端口上运行,要求从客户端来的 DHCPDISCOVER 包变成 DHCPREQUEST 包。标准 DHCP 服务在其发送的 DHCPOFFER 包中加入特殊的 PXE 选项组合,这样 PXE 客户端知道可以在同一个主机的 4011/UDP 端口找到一个 DHCP 代理服务。

 

和一个正在启动系统的启动服务联系必须有一个 IP 地址(可能来自 DHCP 服务)。通过多播或单播一个带有特殊的 PXE 选项的 DHCPREQUEST 包 (扩展DHCPREQUEST 包) 到 4011/UDP 端口,或者广播 (网路) 这种包到 67/UDP 端口。这种包包含有 PXE 启动服务类型和 PXE 启动层,一个守护进程允许运行多个启动服务类型。一个扩展 DHCPREQUEST 包可能是一个DHCPINFORM 包。下面是 PXE 具体工作原理图,

Linux 运维自动化之 Cobbler 概述

简单总结一下,

  • PXE Client 发送广播包请求 DHCP 分配 IP 地址 DHCP

  • Server 回复请求,给出 IP 地址以及 Boot

  • Server 的地址 PXE 下载引导文件执行引导程序

好了,PXE 我们就简单的说到这里。下面我们来说一下 Kickstart。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2013-11/92302p2.htm

相关阅读

Linux 运维工程师笔试题 http://www.linuxidc.com/Linux/2013-09/90621.htm

运维自动化之 Cobbler 安装配置 http://www.linuxidc.com/Linux/2013-03/81575.htm

RHEL5.5 下 Cobbler 的配置  http://www.linuxidc.com/Linux/2013-06/86115.htm

运维自动化部署 Cobbler 之服务安装篇 http://www.linuxidc.com/Linux/2013-02/80133.htm

利用 Cobbler 批量快速网络安装 CentOS  http://www.linuxidc.com/Linux/2012-12/75838.htm

CentOS 6.3 上安装部署 Cobbler  http://www.linuxidc.com/Linux/2012-10/72094.htm

三、Kickstart 概述

1.Kickstart 简介

官方文档:Many system administrators would prefer to use an automated installation method to install Fedora or Red Hat Enterprise Linux on their machines. To answer this need, Red Hat created the kickstart installation method. Using kickstart, a system administrator can create a single file containing the answers to all the questions that would normally be asked during a typical installation.(大意就是很多系统管理员希望自动安装系统,于是便有了 kickstart 这种方式,只需配置一个安装应答文件,便可以自动安装系统了。)

 

2.Kickstart 组成

  • Kickstart 安装选项,包含语言的选择,防火墙,密码,网络,分区的设置等;

  • %Pre 部分,安装前解析的脚本,通常用来生成特殊的 ks 配置,比如由一段程序决定磁盘分区等;

  • %Package 部分,安装包的选择,可以是 @core 这样的 group 的形式,也可以是这样 vim-* 包的形式;

  • %Post 部分,安装后执行的脚本,通常用来做系统的初始化设置。比如启动的服务,相关的设定等。

 

3.Kickstart 样例

# Kickstart file automatically generated by anaconda.
#Install OS instead of upgrade
install
#Use text mode install
text
#Use CDROM installation media
cdrom
lang en_US.UTF-8
keyboard us
#Skip the X Configuration
skipx
#Use network installation
url –url=http://192.168.0.13/cobbler/ks_mirror/CentOS-5.9-X86_64
#Network information
#network –device eth0 –bootproto static –ip 192.168.9.226 –netmask 255.255.255.0 –gateway 192.168.9.1 –nameserver 192.168.9.1 –noipv6 –onboot=yes –hostname kerry-web-001
network –device eth0 –bootproto dhcp –noipv6 –hostname leo
#root — RedHat
rootpw –iscrypted $1$1Cthpm5k$ejyOypOnp0YYX0RQ3qMk41
firewall –disabled
#System authorization information
authconfig –enableshadow –enablemd5
selinux –disabled
timezone –utc Asia/Shanghai
#System bootloader configuration
bootloader –location=mbr
#Clear the Master Boot Record
zerombr yes
# Set the Mouse
mouse generic3ps/2
# 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
#Partition clearing information
clearpart –all –initlabel
part /boot –fstype ext3 –size=200 –asprimary
part / –fstype ext3 –size=10000
part swap –size=2048
part /data –fstype ext3 –size=1 –grow
#— Reboot the host after installation is done
reboot
%packages
%packages
@base
@core
@development-libs
@development-tools
@editors
@text-internet
keyutils
trousers
fipscheck
device-mapper-multipath
imake
%post –nochroot
# Mount CDROM
mkdir -p /mnt/cdrom
mount -r -t iso9660 /tmp/cdrom /mnt/cdrom
cp /mnt/cdrom/ipmod /mnt/sysimage/root/ipmod > /dev/null
umount /mnt/cdrom
%post
#vim syntax on
sed -i “8 s/^/alias vi=’vim’/” /root/.bashrc 2>/dev/null
echo ‘syntax on’ > /root/.vimrc 2>/dev/null
#init_ssh
ssh_cf=”/etc/ssh/sshd_config”
sed -i -e ’74 s/^/#/’ -i -e ’76 s/^/#/’ $ssh_cf
sed -i “s/#UseDNS yes/UseDNS no/” $ssh_cf
#client
sed -i -e ’44 s/^/#/’ -i -e ’48 s/^/#/’ $ssh_cf
# Remove the ISO File translation files
find / -name TRANS.TBL -exec rm {} \; /dev/null 2>/dev/null
# Remove some unneeded services
#——————————————————————————–
cat << EOF
+————————————————————–+
| === Welcome to Tunoff services === |
+————————————————————–+
EOF
#———————————————————————————
for i in `ls /etc/rc3.d/S*`
do
  CURSRV=`echo $i|cut -c 15-`
echo $CURSRV
case $CURSRV in
    crond | irqbalance | microcode_ctl | network | random | sshd | syslog | local )
  echo “Base services, Skip!”
  ;;
  *)
    echo “change $CURSRV to off”
    chkconfig –level 235 $CURSRV off
    service $CURSRV stop
  ;;
esac
done
# file descriptors
ulimit -HSn 65535
echo -ne ”
* soft nofile 65536
* hard nofile 65536
” >>/etc/security/limits.conf
#set sysctl
true > /etc/sysctl.conf
cat >> /etc/sysctl.conf << EOF
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.ip_local_port_range = 1024 65535
EOF
/sbin/sysctl -p
#close ctrl+alt+del
sed -i “s/ca::ctrlaltdel:\/sbin\/shutdown -t3 -r now/#ca::ctrlaltdel:\/sbin\/shutdown -t3 -r now/” /etc/inittab
#set purview
chmod 600 /etc/passwd
chmod 600 /etc/shadow
chmod 600 /etc/group
chmod 600 /etc/gshadow

好了,到这里 PXE 与 Kickstart 就简单的介绍完成了,下面我们来说一下 Cobbler 工具。

大纲

一、前言

二、PXE 概述

三、Kickstart 概述

四、Cobbler 简介

五、Cobbler 组成

六、Cobbler 工作原理

七、Cobbler 不足

注,操作系统 CentOS 6.4 x86_64,软件版本 Cobbler-2.4.0-1。(目前最新版

 

一、前言

在上一篇博客中(http://www.linuxidc.com/Linux/2013-11/92301.htm )简单的和大家说了一下运维自动化,在这一篇博客中我们主要来讲解一下系统安装与管理类工具 Cobbler。好了,我们废话不多说直接上干货。在说 Cobbler 工具之前我们先来说一下网络基础知识一个是 PXE,另一个是 Kickstart。好了,下面我们先来说一下 PXE。

 

二、PXE 概述

预启动执行环境(Preboot eXecution Environment,PXE,也被称为预执行环境)是让计算机通过网卡独立地使用数据设备 (如硬盘) 或者安装操作系统。PXE 当初是作为 Intel 的有线管理体系的一部分,Intel 和 Systemsoft 于 1999 年 9 月 20 日公布其规格 (版本 2.1)。通过使用像网际协议(IP)、用户数据报协议(UDP)、动态主机设定协定(DHCP)、小型文件传输协议(TFTP) 等几种网络协议和全局唯一标识符 (GUID)、通用网络驱动接口(UNDI)、通用唯一识别码(UUID) 的概念并通过对客户机 (通过 PXE 自检的电脑) 固件扩展预设的 API 来实现目的。PXE 客户机 (client) 这个术语是指机器在 PXE 启动过程中的角色。一个 PXE 客户机 (client) 可以是一台服务器、桌面级电脑、笔记本电脑或者其他装有 PXE 启动代码的机器。

 

客户机的固件为接受到可用的 PXE 启动服务器,要在网络中尝试找出 PXE 重定向服务 (DHCP 代理)。在分析返回的包后,固件会向合适的启动服务器询问网络自检程序(NBP) 的路径,并且通过 TFTP 协议下载到电脑的内存中,有可能会去校验它,最后执行它。当只有全部的 PXE 客户机 (client) 只使用一个 NBP 时,全部的 PXE 客户机可能会被指定是用 BOOTP 协议,从而不需要 DHCP 代理,但是仍然需要 TFTP 启动服务。

 

PXE 协议大致上结合了 DHCP 和 TFTP,虽然都有在两者上面有改进。DHCP 用于查找合适的启动服务器,TFTP 用于下载初始引导程序和附加文件。为了开始一个 PXE 自检会话,PXE 固件广播一个带有明确的 PXE 选项 DHCPDISCOVER 包 (扩展 DHCPDISCOVER) 到 67/UDP 端口(DHCP 服务器端口)。PXE 选项是 PXE 固件有 PXE 能力的鉴定,但是会被一般的 DHCP 服务忽略。当固件受到从这样的服务受到 DHCPOFFER 包时,它会通过要求其提供配置信息来自我配置。

 

当 PXE 重定向服务(DHCP 代理)收到一个 扩展 DHCPDISCOVER 包时,它会通过发送一个带有明确的 PXE 选项 DHCPDISCOVER 包到 PXE 客户机的 68/UDP 端口 (DHCP 客户机端口)来回答。一个扩展 DHCPDISCOVER 包主要包含:

  • 一个 PXE 发现控制领域,以决定是使用多播,广播 (网路) 或单播来联系 PXE 启动服务器。

  • 一个列出可用的 PXE 启动服务器类型的地址表。

  • 一个代表每个一个 PXE 启动服务器类型的条目单。

  • 一个带有带有提示用户按下哪一个键来看到启动菜单的 PXE 启动菜单。

  • 一个超过多长时间就启动第一启动菜单的超时数值。

 

一个 DHCP 代理服务可能在相同的主机上运行一个标准的 DHCP 服务器。尽管两个服务不可以共享 67/UDP 端口,DHCP 代理服务在 4011/UDP 端口上运行,要求从客户端来的 DHCPDISCOVER 包变成 DHCPREQUEST 包。标准 DHCP 服务在其发送的 DHCPOFFER 包中加入特殊的 PXE 选项组合,这样 PXE 客户端知道可以在同一个主机的 4011/UDP 端口找到一个 DHCP 代理服务。

 

和一个正在启动系统的启动服务联系必须有一个 IP 地址(可能来自 DHCP 服务)。通过多播或单播一个带有特殊的 PXE 选项的 DHCPREQUEST 包 (扩展DHCPREQUEST 包) 到 4011/UDP 端口,或者广播 (网路) 这种包到 67/UDP 端口。这种包包含有 PXE 启动服务类型和 PXE 启动层,一个守护进程允许运行多个启动服务类型。一个扩展 DHCPREQUEST 包可能是一个DHCPINFORM 包。下面是 PXE 具体工作原理图,

Linux 运维自动化之 Cobbler 概述

简单总结一下,

  • PXE Client 发送广播包请求 DHCP 分配 IP 地址 DHCP

  • Server 回复请求,给出 IP 地址以及 Boot

  • Server 的地址 PXE 下载引导文件执行引导程序

好了,PXE 我们就简单的说到这里。下面我们来说一下 Kickstart。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2013-11/92302p2.htm

相关阅读

Linux 运维工程师笔试题 http://www.linuxidc.com/Linux/2013-09/90621.htm

运维自动化之 Cobbler 安装配置 http://www.linuxidc.com/Linux/2013-03/81575.htm

RHEL5.5 下 Cobbler 的配置  http://www.linuxidc.com/Linux/2013-06/86115.htm

运维自动化部署 Cobbler 之服务安装篇 http://www.linuxidc.com/Linux/2013-02/80133.htm

利用 Cobbler 批量快速网络安装 CentOS  http://www.linuxidc.com/Linux/2012-12/75838.htm

CentOS 6.3 上安装部署 Cobbler  http://www.linuxidc.com/Linux/2012-10/72094.htm

四、Cobbler 简介

1.Cobbler 概述

Cobbler 由 Python 语言开发,是对 PXE 和 Kickstart 以及 DHCP 的封装。融合很多特性,提供了 CLI 和 Web 的管理形式。更加方便的实行网络安装。同时,Cobbler 也提供了 API 接口,使用其它语言也很容易做扩展。它不紧可以安装物理机,同时也支持 kvm、xen 虚拟化、Guest OS 的安装。更多的是它还能结合 Puppet 等集中化管理软件,实现自动化的管理。

 

2. 新旧对比

以前自动化安装系统得先设置一个网络环境,可是设置网络环境涉及到许多步骤,才能为开始安装系统做好准备。你必须:

  • 配置服务,比如 DHCP、TFTP、DNS、HTTP、FTP 和 NFS;

  • 在 DHCP 和 TFTP 配置文件中填入各个客户端机器的信息;

  • 创建自动部署文件(比如 kickstart 和 autoinst);

  • 将安装媒介解压缩到 HTTP/FTP/NFS 存储库中。

这个过程并不简单,而且手动注册每个必须配置的客户端机器可能很麻烦。对配置一台机器的任何参数更改(比如要使用一个不同的操作系统),都需要对配置进行手动干预,并有可能对自动部署文件进行手动干预。当机器数量增加时,如果不高度重视文件组织的条理性,TFTP 目录等元素就可能变得混乱。

 

Cobbler 通过为机器配置的所有方面创建一个中央管理点,从而解决了这些不足。Cobbler 可重新配置服务,创建存储库,解压缩操作系统媒介,代理或集成一个配置管理系统,控制电源管理等。Cobbler 创建了一个抽象层,您可在其中运行“add new repository”或“change client machine operating system”等命令。Cobbler 负责处理所有事情:创建或更新配置文件,重新启动服务,或者将媒介解压到新创建的目录中。它的目的是隐藏所有与系统相关的问题,以便您可专注于任务本身。

 

3.Cobbler 提供的功能

使用 Cobbler,您无需进行人工干预即可安装机器。Cobbler 设置一个 PXE 引导环境(它还可使用 yaboot 支持 PowerPC),并控制与安装相关的所有方面,比如网络引导服务(DHCP 和 TFTP)与存储库镜像。当希望安装一台新机器时,Cobbler 可以:

使用一个以前定义的模板来配置 DHCP 服务(如果启用了管理 DHCP)将一个存储库(yum 或 rsync)建立镜像或解压缩一个媒介,以注册一个新操作系统 在 DHCP 配置文件中为需要安装的机器创建一个条目,并使用您指定的参数(IP 和 MAC 地址)在 TFTFP 服务目录下创建适当的 PXE 文件 重新启动 DHCP 服务以反映更改 重新启动机器以开始安装(如果电源管理已启用)

 

Cobbler 支持众多的发行版:Red Hat、Fedora、CentOS、Debian、Ubuntu 和 SUSE。当添加一个操作系统(通常通过使用 ISO 文件)时,Cobbler 知道如何解压缩合适的文件并调整网络服务,以正确引导机器。

 

Cobbler 可使用 kickstart 模板。基于 Red Hat 或 Fedora 的系统使用 kickstart 文件来自动化安装流程。通过使用模板,您就会拥有基本的 kickstart 模板,然后定义如何针对一种配置文件或机器配置而替换其中的变量。例如,一个模板可能包含两个变量 $domain$machine_name。在 Cobbler 配置中,一个配置文件指定 domain=mydomain.com,并且每台使用该配置文件的机器在machine_name 变量中指定其名称。该配置文件中的所有机器都使用相同的 kickstart 安装且针对 domain=mydomain.com 进行配置,但每台机器拥有其自己的机器名称。您仍然可以使用 kickstart 模板在不同的域中安装其他机器并使用不同的机器名称。

 

为了协助管理系统,Cobbler 可通过 fence scripts 连接到各种电源管理环境。Cobbler 支持 apc_snmp、bladecenter、bullpap、drac、ether_wake、ilo、integrity、ipmilan、ipmitool、lpar、rsa、virsh 和 wti。要重新安装一台机器,可运行 reboot system foo命令,而且 Cobbler 会使用必要的凭据和信息来为您运行恰当的 fence scripts(比如机器插槽数)。

 

除了这些特性,还可使用一个配置管理系统 (CMS)。您有两种选择:该工具内的一个内部系统,或者集成一个现有的外部 CMS,比如 Chef 或 Puppet。借助内部系统,您可以指定文件模板,这些模板会依据配置参数进行处理(与 kickstart 模板的处理方式一样),然后复制到您指定的位置。如果必须自动将配置文件部署到特定机器,那么此功能很有用。

使用 koan 客户端,Cobbler 可从客户端配置虚拟机并重新安装系统。

 

五、Cobbler 组成

Cobbler 的配置结构基于一组注册的对象。每个对象表示一个与另一个实体相关联的实体(该对象指向另一个对象,或者另一个对象指向该对象)。当一个对象指向另一个对象时,它就继承了被指向对象的数据,并可覆盖或添加更多特定信息。以下对象类型的定义为:

  • 发行版:表示一个操作系统。它承载了内核和 initrd 的信息,以及内核参数等其他数据。

  • 配置文件:包含一个发行版、一个 kickstart 文件以及可能的存储库,还包含更多特定的内核参数等其他数据。

  • 系统:表示要配给的机器。它包含一个配置文件或一个镜像,还包含 IP 和 MAC 地址、电源管理(地址、凭据、类型)以及更为专业的数据等信息。

  • 存储库:保存一个 yum 或 rsync 存储库的镜像信息。

  • 镜像:可替换一个包含不属于此类别的文件的发行版对象(例如,无法分为内核和 initrd 的对象)。

基于注册的对象以及各个对象之间的关联,Cobbler 知道如何更改文件系统以反映具体配置。因为系统配置的内部是抽象的,所以您可以仅关注想要执行的操作。下面是 Cobbler 各对象之间的关系图,

Linux 运维自动化之 Cobbler 概述

 

六、Cobbler 工作原理

Linux 运维自动化之 Cobbler 概述

下面我们来简单的说明一下,

Server 端:

  • 第一步,启动 Cobbler 服务

  • 第二步,进行 Cobbler 错误检查,执行 cobbler check 命令

  • 第三步,进行配置同步,执行 cobbler sync 命令

  • 第四步,复制相关启动文件文件到 TFTP 目录中

  • 第五步,启动 DHCP 服务,提供地址分配

  • 第六步,DHCP 服务分配 IP 地址

  • 第七步,TFTP 传输启动文件

  • 第八步,Server 端接收安装信息

  • 第九步,Server 端发送 ISO 镜像与 Kickstart 文件

Client 端:

  • 第一步,客户端以 PXE 模式���动

  • 第二步,客户端获取 IP 地址

  • 第三步,通过 TFTP 服务器获取启动文件

  • 第四步,进入 Cobbler 安装选择界面

  • 第五步,客户端确定加载信息

  • 第六步,根据配置信息准备安装系统

  • 第七步,加载 Kickstart 文件

  • 第八步,传输系统安装的其它文件

  • 第九步,进行安装系统

 

 

七、Cobbler 不足

 

1. 问题说明

根据 MAC 地址来配置主机 ip 和 hostname,根据 mac 配置 ip 等相关信息是一些常见需求,有些设备标签上有 mac 地址,这一类可以手动抄下,然后在配置。但是,由于主机更换主板,或其他原因导致 mac 不对,你还用标签上的 mac 地址来配置,这就悲剧了。为了更好的解决这样的问题我们也可以有解决的办法。

 

2. 解决方法

根据 dhcp 请求信息抓取 mac 地址,然后进行配置。具体方法可以通过 tcpdump 或者脚本来分析 /var/log/message 文件,抓取对目标端口为 67 访问的数据包,然后进行分析。

[root@node6 ~]# tcpdump -i eth0 dst port 67

 

好了,到这里我们的 Linux 运维自动化之 Cobbler 概述就讲解完成了,在下篇博客中我们和大家讲解一下 Cobbler 的安装与配置。最后希望大家有所收获 ^_^……

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计12407字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中