当前位置: 首页 > news >正文

Linux云计算 |【第一阶段】SERVICES-DAY4

主要内容:

DHCP概述、PXE批量装机、配置PXE引导、Kickstart自动应答、Cobbler装机平台

一、DHCP服务概述及原理

DHCP动态主机配置协议(Dynamic Host Configuration Protocol),由IETF(Internet网络工程师任务小组)组织指定,用来简化主机地址分配管理;

主要分配以下入网参数:

  • IP地址、子网掩码、广播地址默认网关地址、DNS服务器地址

DHCP地址分配的四次会话(以DHCP广播方式进行):

  • 方式:DISCOVERY -> OFFER -> REQUEST -> ACK

解释:客户端DHCP广播 — DHCP服务器回应广播(分配IP) — 客户端反馈 — ACK确认

(同一网络中可能有多个DHCP广播,所以一般要求一个网段中只能有一台DHCP服务器)

服务端基本概念:

  • 租期:允许客户机租用IP地址的时间期限,单位为秒
  • 作用域:分配给客户机的IP地址所在的网段
  • 地址池:用来动态分配的IP地址的范围

1)配置DHCP地址分配服务

  1. 所需软件包:dhcp
  2. 配置文件:/etc/dhcp/dhcpd.conf
  3. 系统服务:dhcpd

步骤1:安装dhcp软件包

[root@svr7 ~]# yum -y install dhcp     //安装软件包

步骤2:修改配置文件(末行模式:: -r /usr/share/doc/dhcp*/dhcpd.conf.example)

[root@svr7 ~]# vim /etc/dhcp/dhcpd.conf        //保留关键配置信息
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example   //参考文件
#   see dhcpd.conf(5) man page
subnet 10.5.5.0 netmask 255.255.255.224 {     //声明分配的网段range 10.5.5.26 10.5.5.30;       //分配IP地址范围option domain-name-servers ns1.internal.example.org;    //分配客户端DNSoption domain-name "internal.example.org";     //分配客户端域名(del)option routers 10.5.5.1;       //分配客户端网关option broadcast-address 10.5.5.31;      //分配客户端广播地址(del)default-lease-time 600;     //默认续租时间60秒max-lease-time 7200;      //最大续租时间720秒
}

修改关键字段:

[root@svr7 ~]# vim /etc/dhcp/dhcpd.conf        //修改关键配置信息
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#   see dhcpd.conf(5) man page
subnet 192.168.4.0 netmask 255.255.255.0 {      //声明分配的网段range 192.168.4.100 192.168.4.200;           //分配IP地址范围option domain-name-servers 192.168.4.7;      //分配DNSoption routers 192.168.4.254;                  //分配网关地址default-lease-time 600;       //默认续租时间60秒max-lease-time 7200;
}

步骤3:重启服务

[root@svr7 ~]# systemctl restart dhcpd

注意:每个字段的[ {} ]为一对(最后没有;分号)每个字段的[ ; ]前后注意不要多空格

常见报错:分配的地址不在分配网络字段范围则报错

二、PXE网络装机服务概述

网络装机服务是一种允许计算机通过网络启动和安装操作系统的技术。通常用于大规模部署操作系统、软件和配置,特别是在企业环境中,可以显著提高部署效率和一致性。

网络装机服务的工作原理如下:

  1. 客户端启动:当计算机启动时,BIOS或UEFI固件会检查网络接口卡(NIC)是否支持PXE,并尝试通过网络启动。

  2. DHCP请求:客户端发送一个DHCP请求到网络中的DHCP服务器,以获取IP地址和PXE启动所需的引导文件位置(通常是一个TFTP服务器的地址和文件路径)。

  3. TFTP引导:客户端从TFTP服务器下载引导文件(通常是一个小的引导加载程序,如PXELINUX或GRUB),并执行该文件。

  4. 引导加载程序:引导加载程序会提供一个菜单或界面,允许用户选择要安装的操作系统或进一步的配置选项。

  5. 操作系统安装:根据用户的选择,引导加载程序会从网络服务器(如HTTP、FTP或NFS)下载操作系统的安装文件,并启动安装过程。

网络装机服务的优势包括:

  • 集中管理:通过网络集中管理和部署操作系统,减少了对物理介质的依赖。
  • 灵活性:可以远程启动和安装操作系统,适用于各种硬件平台。
  • 效率:自动化和批量部署能力,提高了部署效率和一致性。
  • 自动化:装系统、配置各种服务;(可写脚本)
  • 远程实现:不需要光盘、U盘等物理安装介质;(网络克隆GHOST)

PXE(Pre-boot eXecution Environment)预启动执行环境,在操作系统之前运行,可用于远程安装;工作模式:

  • PXE client集成在网卡的启动芯片中(硬件支持)
  • 当计算机引导时,从网卡芯片中把PXE client调入内存执行并进行广播,获取PXE server配置、显示菜单,根据用户选择将远程引导程序下载到本地运行;

为了实现PXE网络装机服务,通常需要以下组件:

  1. 支持PXE的网络接口卡:客户端计算机需要支持PXE启动的NIC。
  2. DHCP服务器:分配IP地址,并提供TFTP服务器的地址和引导文件路径。
  3. TFTP服务器:提供引导加载程序文件。
  4. 引导加载程序:如PXELINUX或GRUB,提供启动菜单和进一步的引导功能。
  5. 操作系统镜像服务器:存储和提供操作系统安装文件,如HTTP、FTP或NFS服务器。

解释:客户端服务器机默认先找光驱、USB(需安装操作系统)— 调用硬件网卡广播 — DHCP分配IP 及 告知BootServer(TFTP提供启动文件使硬件正常启动)—FTP(软件包)

PXE装机-步骤1:配置DHCP服务(请求分配IP地址)

[root@svr7 ~]# vim /etc/dhcp/dhcpd.conf     //修改配置文件
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#   see dhcpd.conf(5) man page
subnet 192.168.4.0 netmask 255.255.255.0 {    //声明网段range 192.168.4.100 192.168.4.200;      //指定IP地址范围option domain-name-servers 192.168.4.7;    //指定DNSoption routers 192.168.4.254;            //指定网关default-lease-time 600;max-lease-time 7200;next-server 192.168.4.7;    //指定PXE服务器(后续服务在192.168.4.7)filename "pxelinux.0";      //指明网卡引导文件名(网络装机说明书)
}[root@svr7 ~]# systemctl restart dhcpd
[root@svr7 ~]# netstat -anptu | grep dhcpd
udp        0      0 0.0.0.0:67              0.0.0.0:*                           3230/dhcpd     

注意:由于网卡引导文件是二进制文件,可以安装软件生成该文件,默认叫 pxelinux.0,建议在配置文件中指明的网卡引导文件名为 pxelinux.0,方便记忆无需修改其它文件名。

三、部署TFTP服务

TFTP简单文件传输协议(Trivial File Transfer Protocol),简单文件传输协议,UDP 69端口

  • 作用:主要用来传输小文件,不支持认证和复杂FTP操作
  • 所需软件包:tftp-server
  • 系统服务:tftp
  • 默认共享的主目录:/var/lib/tftpboot    //默认资源目录

(没有操作系统也可以传输数据,有IP即可,无需验证)

PXE装机-步骤2:配置TFTP服务(启用TFTP服务器、提供pxelinux.0引导、配置启动菜单)

1)启用TFTP服务端

① 安装tftp软件包

[root@svr7 ~]# yum -y install tftp-server.x86_64    //安装软件包

② 重启服务

[root@svr7 ~]# systemctl restart tftp    //自动生成/var/lib/tftpboot目录
[root@svr7 ~]# ls /var/lib/tftpboot/    //目录内容显示为空

2)提供PXE引导启动程序(pxelinux.0

  • 部署pxelinux.0启动程序(引导)
  • 此文件由软件包syslinux提供,网卡PXE启动完毕,主机引导权会交给此程序;
  • 需要存放路径:/var/lib/tftpboot

① 查看软件包

[root@svr7 ~]# yum provides */pxelinux.0    //查询哪个软件包产生该文件
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
mydvd/filelists_db                       | 6.9 MB     00:00     
syslinux-4.05-13.el7.x86_64 : Simple kernel loader which boots  //需下载: from a FAT filesystem
源    :mydvd
匹配来源:
文件名    :/usr/share/syslinux/pxelinux.0syslinux-tftpboot-4.05-13.el7.x86_64 : SYSLINUX modules in...: /var/lib/tftpboot, available for network booting
源    :mydvd
匹配来源:
文件名    :/var/lib/tftpboot/pxelinux.0

建议安装:syslinux-4.05-13.el7.x86_64,为方便后续排查

② 下载安装软件包,生成pxelinux.0引导文件

[root@svr7 ~]# yum -y install syslinux      //安装syslinux软件包
[root@svr7 ~]# rpm -ql syslinux | grep pxelinux.0    //查询软件包安装清单
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0

③ 复制pxelinux.0引导文件到TFTP共享主目录

[root@svr7 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@svr7 ~]# ls /var/lib/tftpboot/
pxelinux.0

3)配置启动菜单文件(default)

部署default菜单文件,将光盘中的菜单文件进行复制作为模板,为pxelinux.0启动程序提供配置;(作为模板的光盘菜单文件:/mydvd/isolinux/isolinux.cfg)

配置路径:/var/lib/tftpboot/pxelinux.cfg/default      //default为复制的菜单文件

注意:需手动创建/var/lib/tftpboot/pxelinux.cfg/,再拷贝光盘文件作为模板文件并改名default(文件名必须写成default)


① 手动创建配置路径并拷贝模板文件及改名

[root@svr7 ~]# ls /mydvd/isolinux/        //查看挂载的光盘内容(只读)
boot.cat   initrd.img    memtest     vesamenu.c32
boot.msg   isolinux.bin  splash.png  vmlinuz
grub.conf  isolinux.cfg  TRANS.TBL
[root@svr7 ~]# mkdir /var/lib/tftpboot/pxelinux.cfg  //手动创建路径pxelinux.cfg
[root@svr7 ~]# ls /var/lib/tftpboot/
pxelinux.0  pxelinux.cfg
[root@svr7 ~]# cp /mydvd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default   //拷贝光盘的isolinux.cfg作为模板菜单文件
[root@svr7 ~]# ls /var/lib/tftpboot/pxelinux.cfg/
default      //配置菜单文件

② 拷贝vesamenu.c32提供图形支持模块和splash.png背景图片(256M像素以下)

[root@svr7 ~]# cp /mydvd/isolinux/vesamenu.c32 /mydvd/isolinux/splash.png /var/lib/tftpboot/     //vesamenu.c32提供图形支持,splash.png背景图片
[root@svr7 ~]# ls /var/lib/tftpboot/
pxelinux.0  pxelinux.cfg  splash.png  vesamenu.c32

③ 拷贝Linux内核vmlinuz及initrd.img初始镜像文件(驱动文件)

[root@svr7 ~]# cp /mydvd/isolinux/vmlinuz /mydvd/isolinux/initrd.img /var/lib/tftpboot/
[root@svr7 ~]# ls /var/lib/tftpboot/
initrd.img  pxelinux.cfg  vesamenu.c32
pxelinux.0  splash.png    vmlinuz

归纳:共享目录中总共6个文件,包括:拷贝的5个文件,创建1的个目录(pxelinux.0)

① pxelinux.0   引导文件(工具生成)

② Pxelinux.cfg —> default  目录—>菜单文件(拷贝模板)

③ Vmlinuz   内核文件(拷贝)

④ Initrd.img  驱动文件(拷贝)

⑤ vesamenu.c32   图形支持模块(拷贝)

⑥ Splash.png   背景图片(拷贝)

4)default配置菜单文件调整

① 修改菜单显示及启动参数,为每个系统安装设置好的label菜单项标签内容:

[root@svr7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default    //修改配置菜单文件1 default vesamenu.c32       //默认加载运行图形模块2 timeout 600        //读秒时间60秒(1/10秒)10 menu background splash.png      //背景图片11 menu title NSD  PXE  SERVER     //启动菜单标题信息61 label linux    //菜单项标签62   menu label ^Install CentOS 763   menu default     //添加default,读秒结束后默认加载选项64   kernel vmlinuz    //内核的位置65   append initrd=initrd.img      //驱动(初始镜像)、inst.stage=安装源位置
...

补充:inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet   //光盘的安装源位置

注意:确定菜单文件目录中的Linux内核和初始化镜像文件存在

② 重启服务

[root@svr7 ~]# systemctl restart dhcpd     //重启DHCP服务
[root@svr7 ~]# systemctl restart tftp     //重启TFTP服务

PXE装机测试(初步验证)

注意事项:

  • 安装方式选择“网络引导(PXE)”
  • 新虚拟机与PXE服务器在同一网络(网卡类型:Private虚拟网络)
  • 排除其它DHCP服务干扰

① 新建一台虚拟机,选择网络引导PXE

② 选择系统(概述)

③ 内存:2048M,CPU:2

④ 磁盘空间:20G

⑤ 新虚拟机与PXE服务器在同一网络(网卡类型:Private虚拟网络),并点击完成

⑥ 进入DHCP广播页面

⑦ 进入菜单项页面

由于没有应答文件,等待一段时间后则超时报错;(找提供的应答文件)

排错思路:                              

  • 检查1:查看DHCP服务配置文件,指定的驱动文件名是否写错,注意分号【;】

# ls /etc/dhcp/dhcpd.conf) —》 filename  "pxelinux.0";

  • 检查2:查看/var/lib/tftpboot目录内容,需要准备的文件是否齐全

# ls /var/lib/tftpboot/ —》initrd.img  pxelinux.cfg  vesamenu.c32 pxelinux.0  splash.png    vmlinuz

  • 检查3:检查菜单文件内容是否有配置错误

# ls /var/lib/tftpboot/pxelinux.cfg —》Default

PXE引导过程:

1.通过DHCP配置网卡、获取TFTP地址及PXE启动文件

2.从TFTP服务器下载PXE启动文件

3.读取菜单启动配置(pxelinux.cfg/defualt)

4.根据选择vmlinuz和initrd.img

5.内核vmlinuz运行后,主导安装程序

、构建FTP服务(提供光盘内容)

FTP文件传输协议,默认端口:21

默认共享数据的主目录:/var/ftp


PXE装机-步骤3:配置FTP服务(挂载光盘目录)

① 安装FTP软件包并重启服务

[root@svr7 ~]# yum -y install vsftpd    //下载安装包
[root@svr7 ~]# systemctl restart vsftpd   //重启服务

② 建立挂载点并测试

[root@svr7 ~]# mkdir /var/ftp/centos
[root@svr7 ~]# mount /dev/cdrom /var/ftp/centos/      //注意临时挂载【/】
mount: /dev/sr0 写保护,将以只读方式挂载
[root@svr7 ~]# ls /var/ftp/centos/
CentOS_BuildTag  images    repodata
EFI              isolinux  RPM-GPG-KEY-CentOS-7
EULA             LiveOS    RPM-GPG-KEY-CentOS-Testing-7
GPL              Packages  TRANS.TBL
[root@svr7 ~]# curl ftp://192.168.4.7/centos/    //测试FTP
-rw-rw-r--    1 0        0              14 May 02  2018 CentOS_BuildTag
drwxr-xr-x    3 0        0            2048 May 03  2018 EFI
-rw-rw-r--    1 0        0             227 Aug 30  2017 EULA
-rw-rw-r--    1 0        0           18009 Dec 09  2015 GPL
drwxr-xr-x    2 0        0            2048 May 03  2018 LiveOS
drwxrwxr-x    2 0        0         1640448 May 03  2018 Packages
-rw-rw-r--    1 0        0            1690 Dec 09  2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r--    1 0        0            1690 Dec 09  2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r--    1 0        0            2883 May 07  2018 TRANS.TBL
drwxr-xr-x    3 0        0            2048 May 03  2018 images
drwxr-xr-x    2 0        0            2048 May 03  2018 isolinux
drwxrwxr-x    2 0        0            4096 May 07  2018 repodata

注意:curl测试ftp://192.168.4.7/centos/结尾必须要加【/】

补充:ftp://192.168.4.7/,相当于路径/var/ftp

五、Kickstart技术概述(无人职守/应答文件)

  • 预先提供应答文件,定义好各种安装设置;
  • 免去交互过程,实现全自动化安装;
  • 添加%post脚本,可执行安装后的各种配置;

PXE装机-步骤4:使用Kickstar工具(应答文件)

1)创建应答文件

  • 配置对应的YUM源,将YUM仓库文件的源ID标识设为[development]
  • 安装并使用system-config-kickstart工具

① 安装system-config-kickstart.noarch软件包

[root@svr7 ~]# yum -y install system-config-kickstart.noarch
[root@svr7 ~]# system-config-kickstart    //运行程序(不能使用远程方式)

如图所示:

注意:运行程序后软件包选择显示“下载软件包信息失败”,因为system-config-kickstart程序需要Yum仓库的支持才能显示软件包的选择,且必须要求Yum仓库的标识为[development](BUG)

修改YUM仓库配置文件的标识:[development]

[root@svr7 ~]# vim /etc/yum.repos.d/mydvd.repo
[root@svr7 ~]# cat /etc/yum.repos.d/mydvd.repo
[development]     //修改仓库标识
name=mydvd
baseurl=file:///mydvd
enable=1
gpgcheck=0

打开工具,检查软件包选择界面是否有软件包

② 运行system-config-kickstart程序,配置应答文件

[root@svr7 ~]# system-config-kickstart    //运行图形工具

1.【基本配置】设置默认语言、时区、Root密码(UTC针对双系统才需要)

2.【安装方法】执行全新安装、FTP目录为网络路径:192.168.4.7/centos

3.【引导装载程序选项】安装新引导转载程序

4.【分区信息】清除主引导记录、删除所有现存分区、初始化磁盘标签,并添加新的分区

5.【新分区】挂载点选择根目录【/】,使用磁盘上全部未用空间

分区后,保存配置确定

6.【网络配置】添加网络设备【eth0】,(不一定是eth0,后续还是需要修改网卡规则)

7.【验证】(无修改项)

8.【防火墙配置】禁用SELinux和防火墙

9.【显示设置】(无修改项)

10.【软件包选择】系统—>基本,最小安装

11.【文件 - 保存】保存在/root目录,默认命名为:ks.cfg,保存并退出工具

2)启用应答文件(PXE与Kickstar结合使用)

修改PXE启动配置,调用应答文件

③ 将保存在/root目录下的ks.cfg拷贝到/var/ftp目录

[root@svr7 ~]# ls /root/
anaconda-ks.cfg       ks.cfg  模板  图片  下载  桌面
initial-setup-ks.cfg  公共    视频  文档  音乐
[root@svr7 ~]# ls -l /root/ks.cfg
-rw-r--r--. 1 root root 895 3月  19 16:49 /root/ks.cfg[root@svr7 ~]# cp /root/ks.cfg /var/ftp/     //复制应答文件到FTP目录
[root@svr7 ~]# ls /var/ftp/
centos  ks.cfg  pub[root@svr7 ~]# curl ftp://192.168.4.7/ks.cfg      //curl查看应答文件
#platform=x86, AMD64, 或 Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
rootpw --iscrypted $1$9bo7fGdi$3IjOJ5eka2X37kVaxP5r40
# Use network installation
url --url="ftp://192.168.4.7/centos"
# System language
lang en_US
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# SELinux configuration
selinux --disabled# Firewall configuration
firewall --disabled
# Network information
network  --bootproto=dhcp --device=eth0
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part / --fstype="xfs" --grow --size=1%packages
@base%end

④ 修改default菜单文件,指定应答文件获取方式(安装源)

[root@svr7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
...61 label linux62   menu label ^Install CentOS 763   menu default64   kernel vmlinuz65   append initrd=initrd.img ks=ftp://192.168.4.7/ks.cfg

 查看PXE安装的虚拟机:

总结思路:   

  1. DHCP服务:分配IP地址、指定next-server、指定filename "pxelinux.0"
  2. TFTP服务:提供pxelinux.0引导(工具生成)、提供菜单default(模板)、vmlinuz内核、inited.img驱动、vesamenu.c32图形模块、背景图片(拷贝)
  3. pxelinux.0引导主机 —》读取菜单文件/var/lib/tftpboot/pxelinux.cfg/default
  4. default菜单配置 —》vesamenu.c32、标题、默认选项、读秒时间、vmlinuz、initrd.img、安装源ftp://192.168.4.7/ks.cfg
  5. FTP服务:提供挂载/var/ftp/centos、ks.cfg应答文件
  6. ks.cfg应答文件 —》语言、键盘类型、root密码、FTP软件包挂载点、新建分区、基本安装(最小化安装)

六、Cobbler概述

基本概念:

  • Cobbler是一款快速的网络系统部署工具
  • 集中管理所需服务,如DHCP、DNS、TFTP、WEB
  • Cobbler内部集成了一个镜像版本仓库
  • Cobbler内部集成了一个ks应答文件仓库
  • Cobbler还提供了包括yum源管理、Web界面管理、API接口、电源管理等功能;
  • 缺点:自定义性差,必须按照Cobbler格式更改且排查难度大

1)安装Cobbler组件

  • 所需软件包:cobbler cobbler-web
  • 其它软件包:dhcp tftp-server pyickstart httpd xinetd
  • 主配置文件:/etc/cobbler/settings

2)配置Cobbler

步骤1:解压软件包

[root@svr7 ~]# unzip /root/cobbler.zip -d /
[root@svr7 ~]# ls /cobbler/
cobbler_boot.tar.gz cobbler_rpm.zip cobbler_web.png
### 解释:引导文件(pxelinux.0)、软件包文件、图片 ###
[root@svr7 ~]# unzip /cobbler/cobbler_rpm.zip -d /opt/    //解压软件包文件
[root@svr7 ~]# ls /opt/cobbler/
Cobbler-2.8.2-1.el7.x86_64.rpm
Cobbler-web-2.8.2-1.el7.noarch.rpm
...
[root@svr7 ~]# cd /cobbler
[root@svr7 cobbler]# yum -y install dhcp httpd mod_ssl     //安装软件包
[root@svr7 cobbler]# yum -y *.repo
[root@svr7 cobbler]# cd /
[root@svr7 /]# rpm -q cobbler     //查看软件包
Cobbler-2.8.2-1.el7.x86_64

 步骤2:配置主配置文件

[root@svr7 /]# vim /etc/cobbler/srttings     //修改配置文件
--- YAML格式(不能更改,且冒号后面有空格)
server: 192.168.4.7    //指定本机为cobbler服务器
next_server: 192.168.4.7    //指定下一个服务器为本机(TFTP服务器)
manage_dhcp: 1     //设置cobber管理DHCP服务器
pxe_just_once: 1    //防止客户端重复安装操作系统(可选)
...

步骤3:配置cobbler的DHCP

[root@svr7 /]# vim /etc/cobbler/dhcp.template    //修改cobbler的DHCP配置文件

主要将默认192.168.1.X网段的地址通过% s/192.168.1/192.168.4/g 全局修改即可,如图所示:

补充:主配置文件赋予cobbler管理DHCP,当修改cobbler的DHCP配置文件并同步之后,将dhcp.template的配置应用到DHCP服务配置;

步骤4:部署引导文件

[root@svr7 /]# tar -tf /cobbler/cobbler_boot.tar.gz   //查看软件包内容
tar: 从成员中删除开头的“/”
/var/lib/cobbler/loaders/
/var/lib/cobbler/loaders/README
/var/lib/cobbler/loaders/COPYING.elilo
...
[root@svr7 /]# tar -xPf /cobbler/cobbler_boot.tar.gz   //绝对路径释放(PATH 以包的路径进行释放)
[root@svr7 /]# ls /var/lib/cobbler/loadres/
COPYING.elilo   COPY.yaboot  grubx86_64.efi  menu.c32  README
COPYING.syslinux  elilo-ia64.efi  grub-x86.efi  pxelinux.0  yaboot

步骤5:重启相关服务

[root@svr7 /]# systemctl restart cobblerd
[root@svr7 /]# systemctl restart httpd
[root@svr7 /]# systemctl restart tftp
[root@svr7 /]# systemctl restart rsyncd   //同步服务

补充:cobbler服务会借助Rsync同步把所有相关配置同步到各个服务当中,Cobblerd类似管家,会掌管其他服务的配置和更新(httpd dhcp tftp)

步骤6:验证服务

[root@svr7 /]# cobbler sync    //把cobbler所有配置及服务配置同步

3)Cobbler使用(Cobbler导入镜像内容、客户端测试)

格式:cobbler import --path=挂载点 --name=导入系统命名

补充:通过命令将光盘文件内容进行导入,导入后自动共享光盘的内容、自动生成应答文件、菜单文件,应当文件默认最小化安装,系统密码默认cobbler;

默认光盘文件内容目录:/var/www/cobbler/ks_mirror/

步骤7:导入镜像内容

[root@svr7 /]# cobbler import --path=/dvd --name=Cent0S7.5    //导入光盘文件(可导入多个)

步骤8:客户端测试

① 选择操作系统

② 虚拟机名称及存放位置

③ CPU默认即可

④ 内容建议2G

⑤ 进入菜单文件

⑥ 进入安装默认字符模式

⑦ 进入最小化安装的交互界面

补充:客户端测试,需要将网络设置成虚拟局域网;

列出可用网络安装的系统镜像

[root@svr7 /]# cobbler list     //列出可用网络安装的系统镜像
distros:
CentOS7-X86_64   //安装客户端至少2G内存
profiles:
CentOS7-X86_64

删除ISO系统

[root@svr7 /]# cobbler list
[root@svr7 /]# cobbler profile remove --name=CentOS7-x86_64   //删除菜单信息
[root@svr7 /]# cobbler distros remove --name=CentOS7-x86_64   //删除菜单信息

小结:

本篇章节为 【第一阶段】SERVICES-DAY4 的学习笔记,可以初步了解到 DHCP介绍、PXE批量装机、配置PXE引导、Kickstart自动应答、Cobbler装机平台。除此之外推荐参考相关学习网址:

  • iVentoy (推荐学习,平替PXE)
  • PXE+Kickstart无人值守安装操作系统(自主尝试部署)

Tip:毕竟两个人的智慧大于一个人的智慧,如果你不理解本章节的内容或需要相关笔记、视频,可私信小安,请不要害羞和回避,可以向他人请教,花点时间直到你真正的理解

相关文章:

Linux云计算 |【第一阶段】SERVICES-DAY4

主要内容: DHCP概述、PXE批量装机、配置PXE引导、Kickstart自动应答、Cobbler装机平台 一、DHCP服务概述及原理 DHCP动态主机配置协议(Dynamic Host Configuration Protocol),由IETF(Internet网络工程师任务小组&…...

微信小程序 button样式设置为图片的方法

微信小程序 button样式设置为图片的方法 background-image background-size与background-repeat与border:none;是button必须的 <view style" position: relative;"><button class"customer-service-btn" style"background-image: url(./st…...

2024 HNCTF PWN(hide_flag Rand_file_dockerfile Appetizers TTOCrv_)

文章目录 参考hide_flag思路exp Rand_file_dockerfile libc 2.31思路exp Appetizers glibc 2.35绕过关闭标准输出实例客户端 关闭标准输出服务端结果exp TTOCrv_&#x1f3b2; glibc 2.35逆向DT_DEBUG获得各个库地址随机数思路exp 参考 https://docs.qq.com/doc/p/641e8742c39…...

《昇思25天学习打卡营第25天|第14天》

今天是打卡的第十四天&#xff0c;今天学习的是应用实践中的热门LLM及其他AI应用的K近邻算法实现红酒分类篇。这一片主要介绍使用MindSpore在部分wine数据集上进行KNN实验&#xff0c;对实验的步骤的介绍&#xff1a;K近邻算法原理介绍&#xff08;分类问题、回归问题和距离的定…...

Easysearch、Elasticsearch、Amazon OpenSearch 快照兼容对比

在当今的数据驱动时代&#xff0c;搜索引擎的快照功能在数据保护和灾难恢复中至关重要。本文将对 EasySearch、Elasticsearch 和 Amazon OpenSearch 的快照兼容性进行比较&#xff0c;分析它们在快照创建、恢复、存储格式和跨平台兼容性等方面的特点&#xff0c;帮助大家更好地…...

数据分析入门指南:数据库入门(五)

本文将总结CDA认证考试中数据库中部分知识点&#xff0c;内容来源于《CDA模拟题库与备考资料PPT》 。 CDA认证&#xff0c;作为源自中国、面向全球的专业技能认证&#xff0c;覆盖金融、电信、零售、制造、能源、医疗医药、旅游、咨询等多个行业&#xff0c;旨在培养能够胜任数…...

Logback日志异步打印接入指南,输出自定义业务数据

背景 随着应用的请求量上升&#xff0c;日志输出量也会成线性比例的上升&#xff0c;给磁盘IO带来压力与性能瓶颈。应用也遇到了线程池满&#xff0c;是因为大量线程卡在输出日志。为了缓解日志同步打印&#xff0c;会采取异步打印日志。这样会引起日志中的追踪id丢失&#xf…...

将iPad 作为Windows电脑副屏的几种方法(二)

将iPad 作为Windows电脑副屏的几种方法&#xff08;二&#xff09; 1. 前言2. EV 扩展屏2.1 概述2.2 下载、安装、连接教程2.3 遇到的问题和解决方法2.3.1 平板连接不上电脑 3. Twomon SE3.1 概述3.2 下载安装教程 4. 多屏中心&#xff08;GlideX&#xff09;4.1 概述4.2 下载安…...

[word] word表格跨页断开实现教程 #职场发展#媒体

word表格跨页断开实现教程 选中整个word表格 单击鼠标右键&#xff0c;选择“表格属性”选项 切换至“行”标签&#xff0c;找到“允许跨页断行”选项 勾选上“允许跨页断行”&#xff0c;单击“确定”按钮&#xff0c;完成&#xff01; word表格跨页断开实现教程的下载地址&a…...

《Linux运维总结:基于ARM64架构CPU使用docker-compose一键离线部署单机版tendis2.4.2》

总结&#xff1a;整理不易&#xff0c;如果对你有帮助&#xff0c;可否点赞关注一下&#xff1f; 更多详细内容请参考&#xff1a;《Linux运维篇&#xff1a;Linux系统运维指南》 一、部署背景 由于业务系统的特殊性&#xff0c;我们需要面对不同的客户部署业务系统&#xff0…...

【Apache Doris】周FAQ集锦:第 14 期

【Apache Doris】周FAQ集锦&#xff1a;第 14 期 SQL问题数据操作问题运维常见问题其它问题关于社区 欢迎查阅本周的 Apache Doris 社区 FAQ 栏目&#xff01; 在这个栏目中&#xff0c;每周将筛选社区反馈的热门问题和话题&#xff0c;重点回答并进行深入探讨。旨在为广大用户…...

Log4j的原理及应用详解(四)

本系列文章简介&#xff1a; 在软件开发的广阔领域中&#xff0c;日志记录是一项至关重要的活动。它不仅帮助开发者追踪程序的执行流程&#xff0c;还在问题排查、性能监控以及用户行为分析等方面发挥着不可替代的作用。随着软件系统的日益复杂&#xff0c;对日志管理的需求也日…...

农田自动化闸门的结构组成与功能解析

在现代化的农业节水灌溉领域中&#xff0c;农田自动化闸门的应用越来越广泛。它集成了先进的技术&#xff0c;通过自动化控制实现水资源的精准调度和高效利用。本文将围绕农田自动化闸门的结构组成&#xff0c;详细介绍其各个部件的功能和特点。 农田自动化闸门主要由闸门控制箱…...

Python解释器:CPython 解释器

一、什么是python解释器 Python解释器是一种用于执行Python代码的程序。 它将Python源代码转换为机器语言或字节码&#xff0c;从而使计算机能够执行。 1.1 Python解释器分类 1、CPython CPython 是 Python 的主要实现&#xff0c;由 C 语言编写。大多数用户在日常开发中使…...

layui 让table里的下拉框不被遮挡

记录&#xff1a;layui 让table里的下拉框不被遮挡 /* 这个是让table里的下拉框不被遮挡 */ .goods_table .layui-select-title,.goods_table .layui-select-title input{line-height: 28px;height: 28px; }.goods_table .layui-table-cell {overflow: visible !important; }.…...

【性能优化】在大批量数据下使用 HTML+CSS实现走马灯,防止页面卡顿

切换效果 页面结构变化 1.需求背景 项目首页存有一个小的轮播模块,保密原因大概只能这么展示,左侧图片右侧文字,后端一次性返回几百条数据(开发环境下,生产环境只会更多).无法使用分页解决,前端需要懒加载防止页面卡顿 写个小demo演示,如下 2.解决思路 获取到数据后,取第一…...

https和http区别

1、安全性 HTTP信息是明文传输&#xff0c;而HTTPS则通过SSL/TLS协议进行加密传输&#xff0c;确保数据传输的安全性。HTTPS可以验证服务器身份&#xff0c;防止中间人攻击&#xff0c;保护数据的完整性和保密性。 2、端口号 HTTP默认使用80端口&#xff0c;而HTTPS默认使用…...

SD-AI大模型的安装

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 ☁️运维工程师的职责&#xff1a;监…...

UDP-如何实现客户端与服务器端的通信(一对一、一对多、多对一、多对多之间的通信)

Java中提供了DatagramSocket来实现这个功能 1.服务器端的程序 创建Socket&#xff0c;监听6666端口读取来自客户端的“数据包”,创建数据包(通过DatagramPacket实现数据包的创建)接收数据包从数据包中&#xff0c;读取数据(通过recieve()接收数据和send()发送给数据) 代码如下…...

C++那些事之依赖注入

C那些事之依赖注入 最近星球里面有个小伙伴让更新一下依赖注入&#xff0c;于是写出了这篇文章&#xff0c;来从实际的例子讲解&#xff0c;本文会讲解一些原理与实现&#xff0c;完整的实现代码懒人版放在星球中&#xff0c;我们开始正文。 大纲&#xff1a; 直接依赖接口依赖…...

克隆的TrinityCore服务器网速慢卡顿问题的解决(未解决)

一台TrinityCore服务器&#xff0c;采用的是备份克隆安装的方式&#xff0c;在FreeBSD bhyve 中安装Ubuntu&#xff0c;安装细节见如下两篇文档&#xff1a;尝试在FreeBSD 的jail、bhyve里安装TrinityCore-CSDN博客 备份和镜像TrinityCore_魔兽世界 updating auth database...…...

独立站外链如何影响搜索引擎排名?

独立站的外链对搜索引擎排名有着非常重要的影响。简单来说&#xff0c;外链就像是别的网站对你的网站投的信任票。每一条外链都告诉搜索引擎&#xff1a;“这个网站的内容是有价值的&#xff0c;值得推荐。”因此&#xff0c;外链的数量和质量直接影响你的网站在搜索引擎中的排…...

java设计模式:03-04-装饰器模式

装饰器模式&#xff08;Decorator Pattern&#xff09; 装饰器模式&#xff08;Decorator Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许向一个现有的对象添加新的功能&#xff0c;同时又不改变其结构。装饰器模式通过创建一个装饰类来包装原有的类&#xff0c;…...

通过splunk web服务将服务器上文件下载到本地

1. 需求说明 工作中经常遇到需要将服务器上的文件下载到本地&#xff0c;但是由于各种网络环境限制&#xff0c;没办法使用winscp或者xftp工具&#xff0c;那么如何将服务器上的文件下载下来呢&#xff1f; 这里提供一种思路: 如果服务器上安装有web服务&#xff0c;可将待下…...

Node.js 路由

Node.js 路由 介绍 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它允许开发者使用 JavaScript 编写服务器端代码。Node.js 的一个核心特性是其事件驱动和非阻塞 I/O 模型,这使得它非常适合处理高并发和 I/O 密集型的应用程序。在 Node.js 中,路由是指确定应…...

Adobe国际认证详解-网页设计认证专家行业应用场景解析

在当今数字化时代&#xff0c;网页设计已成为各行各业不可或缺的一环。而网页设计认证专家&#xff0c;作为经过Adobe国际认证体系严格考核的专业人才&#xff0c;正逐渐成为行业内炙手可热的存在。他们凭借深厚的网页设计理论基础和实践经验&#xff0c;为各行各业提供了高质量…...

ESC(ELectronic Stability Control,电子稳定控制系统)

ESC通过实时监测车辆的动态参数&#xff0c;以及车辆轮胎的实际运动状态&#xff0c;通过调节车辆制动系统和发动机输出力&#xff0c;使车辆在紧急或危险情况下保持稳定&#xff0c;防止侧滑和失控。 ESC组成部分 传感器&#xff1a;用于检测车辆的动态参数&#xff0c;如车…...

减分兔搜题-12123学法减分20题目及答案 #媒体#职场发展

对于即将参加驾驶考试的朋友来说&#xff0c;掌握一些经典题目和答案至关重要。今天&#xff0c;我就为大家带来了这样一份干货——20道驾驶考试题目和答案&#xff0c;助你轻松应对考试&#xff01;这些题目不仅包括了考试中常考的内容&#xff0c;还有针对难点和重点的详细解…...

java用freemarker导出word

freemarker导出word 第一步、将word转换为xml格式第二步、将转换后的xml文件修改后缀为ftl后复制到项目 resources 目录下&#xff08;可以自己新建一个文件夹放在文件夹中&#xff09;第三步、格式化xml代码&#xff08;如果问价太大可能会无法格式化&#xff09;这时候需要在…...

CH01_WPF概述

第1章&#xff1a;WPF概述 本章目标 了解Windows图形演化了解WPF高级API了解分辨率无关性概念了解WPF体系结构了解WPF 4.5 WPF概述 ​ 欢迎使用 Windows Presentation Foundation (WPF) 桌面指南&#xff0c;这是一个与分辨率无关的 UI 框架&#xff0c;使用基于矢量的呈现引…...

wordpress主题导致空白/建站模板网站

读者的约束&#xff1a;需要读者对TCP/IP有较深入的理解。为什么要VXLAN&#xff1f;● 虚拟机规模受网络规格限制虚拟机规模受网络规格限制在大二层网络环境下&#xff0c;数据报文是通过查询MAC地址表进行二层转发&#xff0c;而MAC地址表的容量限制了虚拟机的数量。● 网络…...

做外汇消息面的网站/seowhy培训

1.插件介绍 Laconic POM插件。 折叠 Maven 的样板文件。 2.安装方式 第一种方式&#xff0c;是在IDEA上搜索插件进行安装&#xff0c;会适配当前IDEA的版本。 第二种安装方式是使用离线插件进行安装。 插件下载地址&#xff1a;https://plugins.jetbrains.com/plugin/1058…...

正版视频素材网站/茶叶网络推广方案

为了方便的处理集合中的元素,Java中出现了一个对象,该对象提供了一些方法专门处理集合中的元素.例如删除和获取集合中的元素.该对象就叫做迭代器(Iterator).对 Collection 进行迭代的类&#xff0c;称其为迭代器。还是面向对象的思想&#xff0c;专业对象做专业的事情&#xff…...

常州低价网站建设公司/新媒体培训

*本文作者&#xff1a;yangyangwithgnu&#xff0c;本文属 FreeBuf 原创奖励计划&#xff0c;未经许可禁止转载。在逻辑漏洞中&#xff0c;任意用户密码重置最为常见&#xff0c;可能出现在新用户注册页面&#xff0c;也可能是用户登录后重置密码的页面&#xff0c;或者用户忘记…...

可以玩游戏的网站/百度西安

摘要&#xff1a;二是进入炉渣&#xff0c;计算机在炉内有出路三条&#xff0c;气逸出一是随煤&#xff0c;进入三是生铁。电弧电压&#xff0c;热点嘴直径等气体流量和喷&#xff0c;焊接速度&#xff0c;直径艺参要有钨极钨极焊工手工数主。主要图的投影规律高平齐与俯三视是…...

cnetos 做网站服务/官网排名优化方案

文章目录加法运算用加法代替减法移码参考加法运算 用加法代替减法 10-37 和 &#xff08;109&#xff09; 19 &#xff0c;然后 19 mod 127&#xff0c;从而达到减法和加法的效果一样 存储单元为8bit时&#xff0c;计算机作加减运算时&#xff0c;都可以看成 mod 2^8 移码…...