搜索

从断开连接的网络安装 Satellite 服务器

download PDF
Red Hat Satellite 6.10

从断开连接的网络安装 Red Hat Satellite Server

Red Hat Satellite Documentation Team

摘要

本指南介绍了如何从断开连接的网络安装 Red Hat Satellite,执行初始配置并配置外部服务。

第 1 章 为安装准备您的环境

在安装 Satellite 之前,请确保您的环境满足以下要求。

1.1. 系统要求

以下要求适用于网络的基本操作系统:

  • x86_64 架构
  • 最新版本的 Red Hat Enterprise Linux 7 Server
  • 至少 4 核 2.0 GHz CPU
  • 卫星服务器需要至少 20 GB RAM 才能正常工作。另外,我们推荐至少具有 4 GB 交换空间的 RAM。以 RAM 低于最小值运行的卫星可能无法正确运行。
  • 唯一主机名,可以包含小写字母、数字、点(.)和连字符(-)
  • 当前的 Red Hat Satellite 订阅
  • 管理用户(root)访问权限
  • 系统 umask 为 0022
  • 使用完全限定域名进行完整正向和反向 DNS 解析

Satellite 只支持 UTF-8 编码。如果您的个人是美国的,并且您的语言是英语,请将 en_US.utf-8 设置为系统范围的区域设置。有关在 Red Hat Enterprise Linux 中 配置系统区域设置的更多信息,请参阅 配置系统本地指南。在安装卫星服务器前,请确保您的环境满足安装要求。

除了运行卫星服务器外,必须在全新调配的系统上安装卫星服务器,从而不提供其他功能。全新调配的系统不得具有外部身份提供程序提供的以下用户,以避免与 Satellite 服务器创建的本地用户冲突:

  • Apache
  • Foreman
  • foreman-proxy
  • postgres
  • Pulp
  • puppet
  • puppetserver
  • qdrouterd
  • qpidd
  • redis
  • tomcat

认证的虚拟机监控程序

在支持运行 Red Hat Enterprise Linux 的 hypervisor 上运行的物理系统和虚拟机上都完全支持卫星服务器。有关认证的虚拟机监控程序的更多信息,请参阅 哪些管理程序已经认证可运行 Red Hat Enterprise Linux?

SELinux Mode

必须启用 SELinux,无论是 enforcing 模式还是 permissive 模式。不支持使用禁用 SELinux 的安装。

FIPS 模式

您可以在以 FIPS 模式运行的 Red Hat Enterprise Linux 系统上安装 Satellite。安装 Satellite 后您无法启用 FIPS 模式。如需更多信息,请参阅 Red Hat Enterprise Linux Security Guide 中启用 FIPS 模式

1.2. 存储要求

下表详细介绍了特定目录的存储要求。这些值基于预期的用例场景,并根据各个环境的不同而有所不同。

运行时大小通过 Red Hat Enterprise Linux 6、7 和 8 软件仓库同步进行测量。

1.2.1. Red Hat Enterprise Linux 7

表 1.1. 卫星服务器安装的存储要求
目录安装大小运行时大小

/var/log/

10 MB

10 GB

/var/opt/rh/rh-postgresql12/lib/pgsql

100 MB

20 GB

/usr

3 GB

不适用

/opt

3 GB

不适用

/opt/puppetlabs

500 MB

不适用

/var/lib/pulp/

1 MB

300 GB

/var/lib/qpidd/

25 MB

不适用

1.3. 存储指南

安装卫星服务器以提高效率时请考虑以下指南:

  • 如果您将 /tmp 目录挂载为单独的文件系统,则必须使用 /etc/fstab 文件中的 exec 挂载选项。如果 /tmp 已经使用 noexec 选项挂载,您必须将选项更改为 exec 并重新创建文件系统。这是 puppetserver 服务正常工作的要求。
  • 因为大多数卫星服务器数据存储在 /var 目录中,因此在 LVM 存储上挂载 /var 可帮助系统扩展。
  • /var/lib/qpidd/ 目录使用每个由 goferd 服务管理的内容主机稍多 2 MB。例如,10 000 内容主机需要 /var/lib/qpidd/ 中的磁盘空间 20 GB。
  • /var/lib/pulp/ 目录使用高带宽、低延迟存储。因为红帽卫星具有大量 I/O 密集型操作,使用高延迟、低带宽存储会导致性能下降。确保您的安装有范围 60 - 80 兆字节/秒的速度。

您可以使用 fio 工具获取这些数据。有关使用 fio 工具的更多信息,请参阅 磁盘对 Satellite 操作的红帽知识库解决方案影响

文件系统指南

  • 不要使用 GFS2 文件系统作为输入输出延迟过高。

日志文件存储

日志文件被写入 /var/log/messages/、/ var/log/httpd//var/lib/foreman-proxy/openscap/content/。您可以使用 logrotate 管理这些文件的大小。如需更多信息,请参阅 Red Hat Enterprise Linux 7 系统管理员指南 中的日志轮转。https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-viewing_and_managing_log_files#s2-log_rotation

日志消息所需的准确存储量取决于您的安装和设置。

NFS 挂载的 SELinux 注意事项

当使用 NFS 共享挂载 /var/lib/pulp 目录时,SELinux 会阻止同步进程。要避免这种情况,请通过将以下行添加到 /etc/fstab 指定文件系统表中的 /var/lib/pulp 目录的 SELinux 上下文:

nfs.example.com:/nfsshare  /var/lib/pulp  nfs  context="system_u:object_r:var_lib_t:s0"  1 2

如果已经挂载了 NFS 共享,使用上述配置重新挂载它,并输入以下命令:

# restorecon -R /var/lib/pulp

重复的软件包

在不同存储库中重复的软件包仅在磁盘上存储一次。包含重复软件包的额外软件仓库需要较少的额外存储。批量存储驻留在 /var/lib/pulp/ 目录中。这些端点不能手动配置。确保 /var 文件系统中存在存储,以防止存储问题。

Software Collections

软件集合安装在 /opt/rh//opt/theforeman/ 目录中。

对于 /opt 目录,需要 root 用户写入和执行权限。

符号链接

您不能为 /var/lib/pulp/ 使用符号链接。

1.4. 支持的操作系统

您可以从磁盘、本地 ISO 镜像、Kickstart 或者红帽支持的任何其他方法安装操作系统。只有在安装了 Satellite Server 6.10 时,仅在 Red Hat Enterprise Linux 7 服务器的最新版本上支持 Red Hat Satellite Server。以前的 Red Hat Enterprise Linux 版本(包括 EUS 或 z-stream)不被支持。

安装程序支持以下操作系统,具有软件包,并测试用于部署 Satellite 的测试:

表 1.2. satellite-installer 支持的操作系统

操作系统

架构

备注

Red Hat Enterprise Linux 7

仅限 x86_64

 

在安装 Satellite 之前,请应用所有操作系统更新(如果可能)。

Red Hat Satellite Server 需要具有 @Base 软件包组的红帽企业 Linux 安装,无需其他软件包集修改,而且没有直接执行服务器直接操作所需的第三方配置或软件。这个限制包括强化和其他非红帽安全软件。如果您需要基础架构中的此类软件,请先安装和验证完整的卫星服务器,然后在添加任何非红帽软件前创建系统的备份。

在全新的调配的系统上安装卫星服务器。

除了运行卫星服务器之外,红帽不支持将系统用于任何其他操作。

1.5. 支持的浏览器

卫星支持最新版本的 Firefox 和 Google Chrome 浏览器。

卫星 Web UI 和命令行界面支持英语、葡萄牙语、简体中文、韩语、日语、意大利语、西班牙语、法语、法语和德语。

1.6. 端口和防火墙要求

若要让卫星架构的组件进行通信,请确保在基础操作系统上打开和释放所需的网络端口。您还必须确保在任何基于网络的防火墙上打开所需的网络端口。

使用这些信息配置任何基于网络的防火墙。请注意,某些云解决方案必须经过特别配置,以允许计算机之间的通信,因为它们隔离计算机与基于网络的防火墙类似。如果您使用基于应用程序的防火墙,请确保基于应用程序的防火墙允许表中列出的所有应用程序以及防火墙已知。如果可能,禁用应用程序检查并允许根据协议打开的端口通信。

集成胶囊

卫星服务器具有集成胶囊,并且直接连接到卫星服务器的任何主机都是本节末尾的卫星客户端。这包括运行胶囊服务器的基本操作系统。

Capsule 客户端

作为胶囊的客户端,卫星集成胶囊以外的主机不需要访问卫星服务器。如需有关卫星拓扑的更多信息,请参阅规划红帽卫星 6 的胶囊 联网

所需端口可以根据您的配置进行更改。

下表指定目标端口和网络流量的方向:

表 1.3. 卫星服务器传入的流量

目标端口

协议

Service

必需用于

Description

53

TCP 和 UDP

DNS

DNS 服务器和客户端

名称解析

DNS (可选)

67

UDP

DHCP

客户端

动态 IP

DHCP (可选)

69

UDP

TFTP

客户端

TFTP 服务器(可选)

 

443

TCP

HTTPS

Capsule

Red Hat Satellite API

从胶囊通信

443, 80

TCP

HTTPS、HTTP

客户端

内容接收

内容

443, 80

TCP

HTTPS、HTTP

Capsule

内容接收

内容

443, 80

TCP

HTTPS、HTTP

客户端

内容主机注册

Capsule CA RPM 安装

443

TCP

HTTPS

Red Hat Satellite

内容镜像

管理

443

TCP

HTTPS

Red Hat Satellite

Capsule API

智能代理功能

5646

TCP

AMQP

Capsule

Katello 代理

转发消息到 Qpid 分配卫星上的路由器(可选)

5910 - 5930

TCP

HTTPS

浏览器

计算资源的虚拟控制台

 

8000

TCP

HTTP

客户端

调配模板

客户端安装程序、iPXE 或 UEFI HTTP 引导的模板检索

8000

TCP

HTTPS

客户端

PXE 引导

安装

8140

TCP

HTTPS

客户端

Puppet 代理

客户端更新(可选)

8443

TCP

HTTPS

客户端

内容主机注册

开始

上传事实

发送安装的软件包和追踪

9090

TCP

HTTPS

客户端

OpenSCAP

配置客户端

9090

TCP

HTTPS

发现的节点

Discovery(发现)

主机发现和置备

9090

TCP

HTTPS

Red Hat Satellite

Capsule API

胶囊功能

任何直接连接到卫星服务器的受管主机都是此上下文中的客户端,因为它是集成胶囊的客户端。这包括运行胶囊服务器的基本操作系统。

DHCP 胶囊执行 ICMP ping 或 TCP 回显连接尝试尝试设置 DHCP IPAM 的子网中的主机,以找出是否考虑使用 IP 地址。可以使用 satellite-installer --foreman-proxy-dhcp-ping-free-ip=false 关闭此行为。

表 1.4. 卫星服务器外发流量

目标端口

协议

Service

目的地

必需用于

Description

 

ICMP

ping

客户端

DHCP

免费 IP 检查(可选)

7

TCP

echo

客户端

DHCP

免费 IP 检查(可选)

22

TCP

SSH

目标主机

远程执行

运行任务

22, 16514

TCP

SSH SSH/TLS

计算资源

卫星发起的通信,用于 libvirt 中的计算资源

 

53

TCP 和 UDP

DNS

互联网上的 DNS 服务器

DNS 服务器

解析 DNS 记录(可选)

53

TCP 和 UDP

DNS

DNS 服务器

Capsule DNS

DNS 冲突验证(可选)

53

TCP 和 UDP

DNS

DNS 服务器

编配

DNS 冲突验证

68

UDP

DHCP

客户端

动态 IP

DHCP (可选)

80

TCP

HTTP

远程存储库

内容同步

远程 yum 软件仓库

389, 636

TCP

LDAP, LDAPS

外部 LDAP 服务器

LDAP

只有在启用外部身份验证时才需要 LDAP 身份验证。当定义 LDAPAuthSource 时,可以自定义该端口

443

TCP

HTTPS

Satellite

Capsule

Capsule

配置管理

模板检索

OpenSCAP

远程执行结果上传

443

TCP

HTTPS

Amazon EC2, Azure, Google GCE

计算资源

虚拟机交互(query/create/destroy) (可选)

443

TCP

HTTPS

Capsule

内容镜像

开始

443

TCP

HTTPS

Infoblox DHCP Server

DHCP 管理

使用 Infoblox 进行 DHCP 时,管理 DHCP 租期(可选)

623

  

客户端

电源管理

BMC On/Off/Cycle/Status

5000

TCP

HTTPS

OpenStack 计算资源

计算资源

虚拟机交互(query/create/destroy) (可选)

5646

TCP

AMQP

Satellite Server

Katello 代理

将消息转发到 Qpid 分配胶囊上的路由器(可选)

5671

  

Qpid

远程安装

向客户端发送 install 命令

5671

  

分配路由器(hub)

远程安装

转发消息在 Satellite 上分配路由器

5671

  

Satellite Server

适用于 Katello 代理的远程安装

向客户端发送 install 命令

5671

  

Satellite Server

适用于 Katello 代理的远程安装

转发消息在 Satellite 上分配路由器

5900 - 5930

TCP

SSL/TLS

虚拟机监控程序

noVNC 控制台

启动 noVNC 控制台

7911

TCP

DHCP, OMAPI

DHCP Server

DHCP

DHCP 目标使用 --foreman-proxy-dhcp-server 配置,默认为 localhost

ISC 和 remote_isc 使用一个可配置的端口,默认为 7911 并使用 OMAPI

8443

TCP

HTTPS

客户端

Discovery(发现)

Capsule 将 reboot 命令发送到发现的主机(可选)

9090

TCP

HTTPS

Capsule

Capsule API

胶囊的管理

1.7. 启用从客户端到卫星服务器的连接

作为卫星服务器内部胶囊的客户端的胶囊和内容主机,需要通过基于卫星的主机的防火墙和任何基于网络的防火墙进行访问。

使用这个流程在安装 Satellite 的 Red Hat Enterprise Linux 7 系统上配置基于主机的防火墙,以启用来自客户端的传入连接,并使配置在系统重启后持久保留。有关使用的端口的更多信息,请参阅 端口和防火墙要求

流程

  1. 要打开客户端到 Satellite 通信的端口,请在您要在其上安装 Satellite 的基本操作系统中输入以下命令:

    # firewall-cmd \
    --add-port="80/tcp" --add-port="443/tcp" \
    --add-port="5647/tcp" --add-port="8000/tcp" \
    --add-port="8140/tcp" --add-port="9090/tcp" \
    --add-port="53/udp" --add-port="53/tcp" \
    --add-port="67/udp" --add-port="69/udp"
  2. 使更改持久:

    # firewall-cmd --runtime-to-permanent

1.8. 验证防火墙设置

使用此流程验证您对防火墙设置的更改。

流程

  1. 输入以下命令:

    # firewall-cmd --list-all

如需更多信息,请参阅 Red Hat Enterprise Linux 7 安全指南 开始使用 firewalld

1.9. 验证 DNS 解析

使用完全限定的域名验证完整的转发和反向 DNS 解析,以防止安装 Satellite 时出现问题。

流程

  1. 确保主机名和本地主机正确解析:

    # ping -c1 localhost
    # ping -c1 `hostname -f` # my_system.domain.com

    成功进行名称解析会导致输出类似如下:

    # ping -c1 localhost
    PING localhost (127.0.0.1) 56(84) bytes of data.
    64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.043 ms
    
    --- localhost ping statistics ---
    1 packets transmitted, 1 received, 0% packet loss, time 0ms
    rtt min/avg/max/mdev = 0.043/0.043/0.043/0.000 ms
    
    # ping -c1 `hostname -f`
    PING hostname.gateway (XX.XX.XX.XX) 56(84) bytes of data.
    64 bytes from hostname.gateway (XX.XX.XX.XX): icmp_seq=1 ttl=64 time=0.019 ms
    
    --- localhost.gateway ping statistics ---
    1 packets transmitted, 1 received, 0% packet loss, time 0ms
    rtt min/avg/max/mdev = 0.019/0.019/0.019/0.000 ms
  2. 为了避免使用静态和临时主机名的差异,请输入以下命令设置系统中的所有主机名:

    # hostnamectl set-hostname name

如需更多信息,请参阅 Red Hat Enterprise Linux 7 网络指南中的 使用 hostnamectl 配置主机名

警告

名称解析对于 Satellite 6 的运作至关重要。如果卫星无法正确解析其完全限定域名,如内容管理、订阅管理和配置等任务将失败。

第 2 章 安装 Satellite Server

当所需的卫星服务器主机处于断开连接的环境中时,您可以使用外部计算机下载软件包的 ISO 镜像来安装卫星服务器,并将软件包复制到您要在其上安装卫星服务器的系统。对于任何其他情况,我们不建议使用这个方法,因为 ISO 镜像可能无法包含最新的更新、错误修复和功能。

使用以下步骤安装卫星服务器,执行初始配置和导入订阅清单。

继续之前,请考虑哪些清单与您的环境相关。如需有关清单的更多信息,请参阅 内容管理指南中的管理订阅https://access.redhat.com/documentation/zh-cn/red_hat_satellite/6.10/html-single/content_management_guide/index#Managing_Subscriptions

注意

您无法将卫星服务器注册到自己。

2.1. 下载二进制 DVD 镜像

使用此流程下载 Red Hat Enterprise Linux 和 Red Hat Satellite 的 ISO 镜像。

流程

  1. 访问红帽客户门户网站 并登录。
  2. 单击下载
  3. 选择 Red Hat Enterprise Linux - 版本 7 及以下
  4. 确保您的环境有正确的产品和版本。

    • 产品变体 设置为 红帽企业 Linux 服务器
    • 版本 设置为您计划用作基础操作系统的产品的最新次要版本。
    • 架构 被设置为 64 位版本。
  5. Product Software 选项卡中,为最新的 Red Hat Enterprise Linux Server 版本下载 Binary DVD 镜像。
  6. DOWNLOADS 并选择 Red Hat Satellite
  7. 确保您的环境有正确的产品和版本。

    • 产品变体 设置为 红帽卫星
    • Version 设置为您计划使用的产品的最新次版本。
  8. Product Software 选项卡中,为最新的 Red Hat Satellite 版本下载 Binary DVD 镜像。
  9. 将 ISO 文件复制到 Satellite 基础操作系统或其他可访问的存储设备上的 /var/tmp 中。

    # scp localfile username@hostname:remotefile

2.2. 使用离线软件仓库配置 Base Operating System

使用这个步骤为 Red Hat Enterprise Linux 和 Red Hat Satellite ISO 镜像配置离线软件仓库。

流程

  1. 创建一个目录,以充当与基础操作系统版本对应的 ISO 文件的挂载点。

    # mkdir /media/rhel7-server
  2. 将 Red Hat Enterprise Linux 的 ISO 镜像挂载到挂载点。

    # mount -o loop rhel7-Server-DVD.iso /media/rhel7-server
  3. 复制 ISO 文件的存储库数据文件。

    # cp /media/rhel7-server/media.repo /etc/yum.repos.d/rhel7-server.repo
  4. 编辑存储库数据文件并添加 baseurl 指令。

    baseurl=file:///media/rhel7-server/
  5. 验证存储库是否已配置。

    # yum repolist
  6. 创建一个目录,以充当卫星服务器的 ISO 文件的挂载点。

    # mkdir /media/sat6
  7. 将 Red Hat Satellite Server 的 ISO 镜像挂载到挂载点。

    # mount -o loop sat6-DVD.iso /media/sat6

2.3. 从离线存储库安装 Satellite 软件包

使用这个步骤从离线存储库安装 Satellite 软件包。

流程

  1. 确保挂载 Red Hat Enterprise Linux 服务器和 Red Hat Satellite 的 ISO 镜像:

    # findmnt -t iso9660
  2. 导入 Red Hat GPG 密钥:

    # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
  3. 确定基本操作系统使用 Binary DVD 镜像更新:

    # yum update
  4. 进入挂载 Satellite ISO 的目录:

    # cd /media/sat6/
  5. 在挂载的目录中运行安装脚本:

    # ./install_packages

    如果您成功安装了 Satellite 软件包,则会显示以下消息: Install is complete。请运行 satellite-installer --scenario satellite

2.4. 解决软件包依赖错误

如果在安装卫星服务器软件包过程中存在软件包依赖关系错误,您可以通过从红帽客户门户网站下载并安装软件包来解决错误。有关解析依赖关系错误的更多信息,请参阅 KCS 解决方案 如何使用 yum 输出来解决 yum 依赖项错误?

如果您成功安装了 Satellite 软件包,请跳过这个过程。

流程

  1. 访问红帽客户门户网站 并登录。
  2. 单击下载
  3. 单击包含您要下载的软件包的产品。
  4. 确保您的环境有正确的 产品变体VersionArchitecture
  5. Packages 选项卡。
  6. Search 字段中输入软件包名称。
  7. 点 软件包。
  8. Version 列表中,选择软件包的版本。
  9. 在页面底部,点 Download Now
  10. 将软件包复制到卫星基础操作系统中。
  11. 在卫星服务器上,切换到软件包所在的目录:

    # cd /path-to-package/
  12. 在本地安装软件包:

    # yum localinstall package_name
  13. 进入挂载 Satellite ISO 的目录:

    # cd /media/sat6/
  14. 通过安装卫星服务器软件包,验证您已重新释放软件包依赖关系错误。如果还有其他软件包依赖关系错误,请重复这个过程。

    # ./install_packages

    如果您成功安装了 Satellite 软件包,则会显示以下消息: Install is complete。请运行 satellite-installer --scenario satellite

2.5. 使用 chronyd 同步系统时钟

要最小化时间偏差的效果,您必须在要安装带有网络时间协议(NTP)服务器的基本操作系统上同步系统时钟。如果基本操作系统时钟配置不正确,证书验证可能会失败。

有关 chrony 套件的更多信息,请参阅 Red Hat Enterprise Linux 7 系统管理员 指南中的使用 chrony Suite 配置 NTP

流程

  1. 安装 chrony 软件包:

    # yum install chrony
  2. 启动并启用 chronyd 服务:

    # systemctl start chronyd
    # systemctl enable chronyd

2.6. 在基本操作系统上安装 SOS 软件包

在基础操作系统上安装 sos 软件包,以便您可以从 Red Hat Enterprise Linux 系统收集配置和诊断信息。您还可以使用它提供初始系统分析,使用红帽技术支持打开服务请求时是必需的。有关使用 sos 的更多信息,请参阅 sosreport 是什么以及如何在 Red Hat Enterprise Linux 4.6 及之后的版本中创建?

流程

  1. 安装 sos 软件包:

    # yum install sos

2.7. 配置 Satellite 服务器

使用 satellite-installer 安装脚本安装卫星服务器。从以下任一方法中选择:

  • 第 2.7.1 节 “配置 Satellite”.此方法通过运行一个或多个命令选项来执行。命令选项覆盖对应的默认初始配置选项,并在卫星应答文件中记录。您可以根据需要尽可能地运行 脚本来配置任何必要的选项。
注意

根据您运行 Satellite 安装程序时使用的选项,配置可能需要几分钟来完成。管理员可以查看应答文件,以查看之前用于这两种方法的选项。

2.7.1. 配置 Satellite

这个初始配置过程会创建一个机构、位置、用户名和密码。在初始配置后,如果需要,您可以创建其他组织和位置。初始配置还会在同一服务器上安装 PostgreSQL 数据库。

完成安装过程可能需要十分钟时间。如果您要远程登录系统,请使用 屏幕tmux 等工具允许暂停和重新连接通信会话,以便在与远程系统断开连接时检查安装进度。Red Hat 知识库文章 如何使用 screen 命令 描述安装屏幕 ; 另外,屏幕 man page 了解更多信息。如果您丢失了安装命令运行的 shell 的连接,请参阅 /var/log/foreman-installer/satellite.log 中的日志,以确定进程是否成功完成。

注意事项

  • 使用 satellite-installer --scenario satellite --help 命令显示可用选项和任何默认值。如果没有指定任何值,则使用默认值。
  • 为 选项指定一个有意义的值 :--foreman-initial-organization。这可以是您的公司名称。也会创建与值匹配的内部标签,之后无法更改。如果没有指定值,则创建一个名为 Default Organization 的组织,标签为 Default_Organization。您可以重命名机构名称,但不能重命名标签。
  • 远程执行是管理内容主机上软件包的主要方法。如果要使用已弃用的 Katello Agent 而不是 Remote Execution SSH,请使用 --foreman-proxy-content-enable-katello-agent=true 选项来启用它。应在任何胶囊服务器以及卫星服务器上提供相同的选项。
  • 默认情况下,安装程序配置的所有配置文件都由 Puppet 管理。当 satellite-installer 运行时,它会使用初始值覆盖对 Puppet 管理的文件的任何手动更改。默认情况下,卫星服务器将与作为服务运行的 Puppet 代理一起安装。如果需要,您可以使用 --puppet-runmode=none 选项来禁用卫星服务器上的 Puppet 代理。
  • 如果要手动管理 DNS 文件和 DHCP 文件,请使用 --foreman-proxy-dns-managed=false--foreman-proxy-dhcp-managed=false 选项,以便 Puppet 不会管理与对应服务相关的文件。有关如何在其他服务 上应用自定义配置的更多信息,请参阅将自定义配置应用到卫星

流程

  1. 使用以下命令,包括您要使用的任何附加选项:

    # satellite-installer --scenario satellite \
    --foreman-initial-organization "initial_organization_name" \
    --foreman-initial-location "initial_location_name" \
    --foreman-initial-admin-username admin_user_name \
    --foreman-initial-admin-password admin_password

    该脚本显示其进度,并将日志写入 /var/log/foreman-installer/satellite-installer --scenario satellite.log

  2. 卸载 ISO 镜像:

    # umount /media/sat6
    # umount /media/rhel7-server

2.8. 启用 Disconnected Mode

在卫星服务器上启用断开连接模式。启用断开连接的模式后,卫星服务器无法访问 Red Hat Content Delivery Network (CDN)。

流程

  1. 在 Satellite Web UI 中,导航到 Administer > Settings
  2. 单击 内容选项卡
  3. Disconnected 模式 值设为 Yes

CLI 过程

  • 在 Satellite 服务器中输入以下命令:

    # hammer settings set --name content_disconnected --value true

2.9. 将订阅清单导入到卫星服务器

使用以下步骤将订阅清单导入到卫星服务器。

前提条件

流程

  1. 在卫星 Web UI 中,确保将上下文设置为您要使用的组织。
  2. 进入 Content > Subscriptions 并点 Manage Manifest
  3. 在 Manage Manifest 窗口中,单击 Browse
  4. 导航到包含 Subscription Manifest 文件的位置,然后单击 Open。如果 Manage Manifest 窗口没有自动关闭,点 Close 来返回订阅窗口。

CLI 过程

  1. 将订阅清单文件从客户端复制到 Satellite 服务器:

    $ scp ~/manifest_file.zip root@satellite.example.com:~/.
  2. root 用户身份登录 Satellite 服务器,再导入订阅清单文件:

    # hammer subscription upload \
    --file ~/manifest_file.zip \
    --organization "organization_name"

第 3 章 在卫星服务器上执行额外的配置

3.1. 使用本地 CDN 服务器将 Satellite 配置为同步内容

在断开连接的环境中,您必须确保卫星服务器包含调配具有最新安全更新、勘误表和软件包的系统所需的内容。要做到这一点,请按照以下步骤从红帽客户门户网站下载内容 ISO 镜像,并将其导入到本地 CDN 服务器中。您可以在 Satellite 通过 HTTP 访问的操作系统上托管本地 CDN 服务器。接下来,您必须配置卫星服务器,以便将内容与本地 CDN 服务器同步。

流程

  1. 登录红帽客户门户,地址为 https://access.redhat.com
  2. 在窗口的左上角,单击 Downloads 并选择 Red Hat Satellite
  3. 单击 内容 ISOs 选项卡。本页列出了您的订阅中可用的所有产品。
  4. 单击产品名称的链接,如 Red Hat Enterprise Linux 7 Server (x86_64) 以下载 ISO 镜像。
  5. 将所有 Satellite 内容 ISO 镜像复制到您要用作本地 CDN 服务器的系统。例如,卫星服务器上的 /root/isos 目录。

    请注意,将内容保存到安装 Satellite 的同一系统上,这不是必须的。CDN 可以托管在同一断开连接的网络中的不同系统中,只要它可以通过 HTTP 访问。

  6. 在您要用作本地 CDN 服务器的系统中,创建一个可通过 httpd 访问的本地目录。例如: /var/www/html/pub/sat-import/:

    # mkdir -p /var/www/html/pub/sat-import/
  7. 创建挂载点,并在该位置临时挂载 ISO 镜像:

    # mkdir /mnt/iso
    # mount -o loop /root/isos/first_iso /mnt/iso
  8. 将第一个 ISO 镜像的内容递归复制到本地目录:

    # cp -ruv /mnt/iso/* /var/www/html/pub/sat-import/
  9. 如果您不计划使用挂载的二进制 DVD ISO 镜像,请卸载并删除挂载点:

    # umount /mnt/iso
    # rmdir /mnt/iso
  10. 为每个 ISO 镜像重复上述步骤,直到将内容 ISO 镜像中的所有数据复制到 /var/www/html/pub/sat-import/ 中。
  11. 确保 目录的 SELinux 上下文正确:

    # restorecon -rv /var/www/html/pub/sat-import/
  12. 在 Satellite Web UI 中,进入 Content > Subscriptions
  13. 单击 Manage Manifest
  14. 编辑 Red Hat CDN URL 字段,以指向用作本地 CDN 服务器的系统的主机名,例如:

    http://server.example.com/pub/sat-import/

  15. 单击 Update,然后将您的清单上传到 Satellite。

3.2. 导入 Kickstart 存储库

Kickstart 软件仓库不是由内容 ISO 镜像提供。要在断开连接的 Satellite 中使用 Kickstart 软件仓库,您必须下载要使用的 Red Hat Enterprise Linux 版本的二进制 DVD ISO 文件,并将 Kickstart 文件复制到 Satellite。

要为 Red Hat Enterprise Linux 7 导入 Kickstart 软件仓库,请完成 第 3.2.1 节 “为 Red Hat Enterprise Linux 7 导入 Kickstart 存储库”

要为 Red Hat Enterprise Linux 8 导入 Kickstart 软件仓库,请完成 第 3.2.2 节 “为 Red Hat Enterprise Linux 8 导入 Kickstart 软件仓库”

3.2.1. 为 Red Hat Enterprise Linux 7 导入 Kickstart 存储库

要为 Red Hat Enterprise Linux 7 导入 Kickstart 软件仓库,请在 Satellite 中完成以下步骤。

流程

  1. 访问 https://access.redhat.com/ 并登录红帽客户门户网站。
  2. 在窗口的左上角,单击 Downloads
  3. Red Hat Enterprise Linux 7 右侧,点击 Versions 7 及以下
  4. Version 列表中选择 Red Hat Enterprise Linux 7 所需的版本,如 7.7。
  5. 在 Download Red Hat Enterprise Linux 窗口中,找到 ISO 镜像的二进制 DVD 版本,例如: Red Hat Enterprise Linux 7.7 Binary DVD,然后点击 Download Now
  6. 下载完成后,将 ISO 镜像复制到卫星服务器。
  7. 在卫星服务器上,创建一个挂载点,并在该位置临时挂载 ISO 镜像:

    # mkdir /mnt/iso
    # mount -o loop rhel-binary-dvd.iso /mnt/iso
  8. 创建 Kickstart 目录:

    # mkdir --parents \
    /var/www/html/pub/sat-import/content/dist/rhel/server/7/7.7/x86_64/kickstart/
  9. 从 ISO 镜像复制 kickstart 文件:

    # cp -a /mnt/iso/* /var/www/html/pub/sat-import/content/dist/rhel/server/7/7.7/x86_64/kickstart/
  10. 在列出文件中添加以下条目:

    /var/www/html/pub/sat-import/content/dist/rhel/server/7/listing 文件,请使用新行附加版本号。例如,对于 RHEL 7.7 ISO,请附加 7.7

    /var/www/html/pub/sat-import/content/dist/rhel/server/7/7.7/listing 文件,请使用新行附加架构。例如,x86_64

    /var/www/html/pub/sat-import/content/dist/rhel/server/7/7.7.7/x86_64/listing 文件,使用新行附加 kickstart

  11. 从 ISO 镜像复制 .treeinfo 文件:

    # cp /mnt/iso/.treeinfo \
    /var/www/html/pub/sat-import/content/dist/rhel/server/7/7.7/x86_64/kickstart/treeinfo
  12. 如果您不计划使用挂载的二进制 DVD ISO 镜像,请卸载并删除目录:

    # umount /mnt/iso
    # rmdir /mnt/iso
  13. 在卫星 Web UI 中,启用 Kickstart 存储库。

3.2.2. 为 Red Hat Enterprise Linux 8 导入 Kickstart 软件仓库

要为 Red Hat Enterprise Linux 8 导入 Kickstart 软件仓库,请在 Satellite 中完成以下步骤。

流程

  1. 访问 https://access.redhat.com/ 并登录红帽客户门户网站。
  2. 在窗口的左上角,单击 Downloads
  3. 单击 Red Hat Enterprise Linux 8
  4. 在 Download Red Hat Enterprise Linux 窗口中,找到 ISO 镜像的二进制 DVD 版本,例如: Red Hat Enterprise Linux 8.1 Binary DVD 并点 Download Now
  5. 下载完成后,将 ISO 镜像复制到卫星服务器。
  6. 在卫星服务器上,创建一个挂载点,并在该位置临时挂载 ISO 镜像:

    # mkdir /mnt/iso
    # mount -o loop rhel-binary-dvd.iso /mnt/iso
  7. Create directories for Red Hat Enterprise Linux 8 AppStream and BaseOS Kickstart repositories:

    # mkdir --parents \
    /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/appstream/kickstart
    
    # mkdir --parents \
     /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/baseos/kickstart
  8. 从 ISO 镜像复制 kickstart 文件:

    # cp -a /mnt/iso/AppStream/* \
    /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/appstream/kickstart
    
    # cp -a /mnt/iso/BaseOS/* /mnt/iso/images/ \
    /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/baseos/kickstart

    请注意,对于 BaseOS,还必须复制 /mnt/iso/images/ 目录的内容。

  9. 在列出文件中添加以下条目:

    /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/appstream/listing 文件,使用新行附加 kickstart

    进入 /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/baseos/listing 文件,使用新行附加 kickstart

    /var/www/html/pub/sat-import/content/dist/rhel8/listing 文件,请使用新行附加版本号。例如,对于 RHEL 8.1 二进制 ISO,请附加 8.1

  10. 从 ISO 镜像复制 .treeinfo 文件:

    # cp /mnt/iso/.treeinfo \
    /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/appstream/kickstart/treeinfo
    
    # cp /mnt/iso/.treeinfo \
    /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/baseos/kickstart/treeinfo
  11. 打开 /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/baseos/kickstart/treeinfo 文件进行编辑。
  12. [general] 部分,进行以下更改:

    • packagedir = AppStream/Packages 更改为 packagedir = Packages
    • 更改 存储库 = AppStream to repository = .
    • 更改 变体 = AppStream to variants = BaseOS
    • 更改 变体 = AppStream,BaseOS to variants = BaseOS
  13. [tree] 部分中,将 变体 = AppStream,BaseOS 更改为 variants = BaseOS
  14. [variant-BaseOS] 部分中,进行以下更改:

    • package = BaseOS/Packages 更改为 packages = Packages
    • 更改 repository = BaseOS to repository = .
  15. 删除 [media][variant-AppStream] 部分。
  16. 保存并关闭该文件。
  17. 验证 /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/baseos/kickstart/treeinfo 文件具有以下格式:

    [checksums]
    images/efiboot.img = sha256:9ad9beee4c906cd05d227a1be7a499c8d2f20b3891c79831325844c845262bb6
    images/install.img = sha256:e246bf4aedfff3bb54ae9012f959597cdab7387aadb3a504f841bdc2c35fe75e
    images/pxeboot/initrd.img = sha256:a66e3c158f02840b19c372136a522177a2ab4bd91cb7269fb5bfdaaf7452efef
    images/pxeboot/vmlinuz = sha256:789028335b64ddad343f61f2abfdc9819ed8e9dfad4df43a2694c0a0ba780d16
    
    [general]
    ; WARNING.0 = This section provides compatibility with pre-productmd treeinfos.
    ; WARNING.1 = Read productmd documentation for details about new format.
    arch = x86_64
    family = Red Hat Enterprise Linux
    name = Red Hat Enterprise Linux 8.1.0
    packagedir = Packages
    platforms = x86_64,xen
    repository = .
    timestamp = 1571146127
    variant = BaseOS
    variants = BaseOS
    version = 8.1.0
    
    [header]
    type = productmd.treeinfo
    version = 1.2
    
    [images-x86_64]
    efiboot.img = images/efiboot.img
    initrd = images/pxeboot/initrd.img
    kernel = images/pxeboot/vmlinuz
    
    [images-xen]
    initrd = images/pxeboot/initrd.img
    kernel = images/pxeboot/vmlinuz
    
    [release]
    name = Red Hat Enterprise Linux
    short = RHEL
    version = 8.1.0
    
    [stage2]
    mainimage = images/install.img
    
    [tree]
    arch = x86_64
    build_timestamp = 1571146127
    platforms = x86_64,xen
    variants = BaseOS
    
    [variant-BaseOS]
    id = BaseOS
    name = BaseOS
    packages = Packages
    repository = .
    type = variant
    uid = BaseOS
  18. 打开 /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/appstream/kickstart/treeinfo 文件进行编辑。
  19. [general] 部分,进行以下更改:

    • packagedir = AppStream/Packages 更改为 packagedir = Packages
    • 更改 存储库 = AppStream to repository = .
    • 更改 变体 = AppStream,BaseOS to variants = AppStream
  20. [tree] 部分中,将 变体 = AppStream,BaseOS 更改为 variants = AppStream
  21. [variant-AppStream] 部分中,进行以下更改:

    • 软件包 = AppStream/Packages 更改为 packages = Packages
    • 更改 存储库 = AppStream to repository = .
  22. 从文件中删除以下部分:[checksums] , [images-x86_64] , [images-xen], [media], [stage2], [variant-BaseOS].
  23. 保存并关闭该文件。
  24. 验证 /var/www/html/pub/sat-import/content/dist/rhel8/8.1/x86_64/appstream/kickstart/treeinfo 文件具有以下格式:

    [general]
    ; WARNING.0 = This section provides compatibility with pre-productmd treeinfos.
    ; WARNING.1 = Read productmd documentation for details about new format.
    arch = x86_64
    family = Red Hat Enterprise Linux
    name = Red Hat Enterprise Linux 8.1.0
    packagedir = Packages
    platforms = x86_64,xen
    repository = .
    timestamp = 1571146127
    variant = AppStream
    variants = AppStream
    version = 8.1.0
    
    [header]
    type = productmd.treeinfo
    version = 1.2
    
    [release]
    name = Red Hat Enterprise Linux
    short = RHEL
    version = 8.1.0
    
    [tree]
    arch = x86_64
    build_timestamp = 1571146127
    platforms = x86_64,xen
    variants = AppStream
    
    [variant-AppStream]
    id = AppStream
    name = AppStream
    packages = Packages
    repository = .
    type = variant
    uid = AppStream
  25. 如果您不计划使用挂载的二进制 DVD ISO 镜像,请卸载并删除目录:

    # umount /mnt/iso
    # rmdir /mnt/iso
  26. 在卫星 Web UI 中,启用 Kickstart 存储库。

3.3. 启用 Satellite Tools 6.10 存储库

Satellite Tools 6.10 存储库提供 katello-agentkatello-host-tools,以及用于注册到卫星服务器的客户端的 puppet 软件包。

要使用 CLI 而不是 Web UI,请参阅 CLI 过程

前提条件

  • 确保您将需要的所有内容 ISO 镜像导入到卫星服务器中。

流程

  1. 在 Satellite Web UI 中,导航到 Content > Red Hat Repositories
  2. 使用 Search 字段输入以下存储库名称: Satellite Tools 6.10 (适用于 RHEL 7 服务器)(RPMs)
  3. 在 Available Repositories 窗格中,点 Satellite Tools 6.10 (用于 RHEL 7 Server)(RPMs) 以展开存储库集。

    如果 Satellite Tools 6.10 项目不可见,则可能是因为从客户门户网站获取的订阅清单中不包含它们。要更正,登录到客户门户网站,添加这些软件仓库,下载订阅清单并导入到卫星中。

  4. 对于 x86_64 条目,请单击 Enable 图标以启用该存储库。

为主机上运行的每个支持的 Red Hat Enterprise Linux 主版本启用 Satellite Tools 6.10 软件仓库。启用红帽存储库后,将自动创建此存储库的产品。

CLI 过程

  • 使用 hammer repository-set enable 命令启用 Satellite Tools 6.10 存储库:

    # hammer repository-set enable --organization "initial_organization_name" \
    --product 'Red Hat Enterprise Linux Server' \
    --basearch='x86_64' \
    --name 'Red Hat Satellite Tools 6.10 (for RHEL 7 Server) (RPMs)'

3.4. 同步 Satellite Tools 6.10 存储库

使用这个部分将 Satellite Tools 6.10 存储库从 Red Hat Content Delivery Network (CDN)同步到 Satellite。此存储库为注册到卫星服务器的客户端提供 katello-agentkatello-host-toolspuppet 软件包。

流程

  1. 在 Satellite Web UI 中,进入 Content > Sync Status

    此时会显示可用于同步的产品存储库列表。

  2. 点击 Red Hat Enterprise Linux Server 产品旁边的箭头来查看可用的内容。
  3. 选择 Satellite Tools 6.10 (适用于 RHEL 7 服务器)RPM x86_64
  4. 单击 Synchronize Now

CLI 过程

  • 使用 hammer 存储库同步您的 Satellite Tools 6.10 存储库

    # hammer repository synchronize --organization "initial_organization_name" \
    --product 'Red Hat Enterprise Linux Server' \
    --name 'Red Hat Satellite Tools 6.10 for RHEL 7 Server RPMs x86_64' \
    --async

3.5. 在受管主机上启用电源管理

要使用智能平台管理接口(IPMI)或类似的协议对受管主机执行电源管理任务,您必须在卫星服务器上启用基板管理控制器(BMC)模块。

前提条件

流程

  • 要启用 BMC,请输入以下命令:

    # satellite-installer --foreman-proxy-bmc "true" \
    --foreman-proxy-bmc-default-provider "freeipmi"

3.6. 在卫星服务器上配置 DNS、DHCP 和 TFTP

要在卫星服务器上配置 DNS、DHCP 和 TFTP 服务,请使用 satellite-installer 命令以及适合您的环境的选项。要查看可配置的选项列表,请输入 satellite-installer --scenario satellite --help 命令。

对设置的任何更改都需要再次输入 satellite-installer 命令。您可以多次输入命令,每次使用更改的值更新所有配置文件。

要使用外部 DNS、DHCP 和 TFTP 服务,请参阅 第 4 章 使用外部服务配置 Satellite 服务器

添加多主页 DHCP 详情

如果要使用多主页 DHCP,您必须通知安装程序。

前提条件

  • 确定可用的以下信息如下:

    • DHCP IP 地址范围
    • DHCP 网关 IP 地址
    • DHCP 名称服务器 IP 地址
    • DNS 信息
    • TFTP 服务器名称
  • 在网络更改时,使用 FQDN 而不是 IP 地址。
  • 请联系您的网络管理员以确保您具有正确的设置。

流程

  • 输入 satellite-installer 命令,并适合您的环境。以下示例显示了配置完整置备服务:

    # satellite-installer --scenario satellite \
    --foreman-proxy-dns true \
    --foreman-proxy-dns-managed true \
    --foreman-proxy-dns-interface eth0 \
    --foreman-proxy-dns-zone example.com \
    --foreman-proxy-dns-reverse 2.0.192.in-addr.arpa \
    --foreman-proxy-dhcp true \
    --foreman-proxy-dhcp-managed true \
    --foreman-proxy-dhcp-interface eth0 \
    --foreman-proxy-dhcp-additional-interfaces eth1 \
    --foreman-proxy-dhcp-additional-interfaces eth2 \
    --foreman-proxy-dhcp-range "192.0.2.100 192.0.2.150" \
    --foreman-proxy-dhcp-gateway 192.0.2.1 \
    --foreman-proxy-dhcp-nameservers 192.0.2.2 \
    --foreman-proxy-tftp true \
    --foreman-proxy-tftp-managed true \
    --foreman-proxy-tftp-servername 192.0.2.3

您可以监控在您的提示符中显示的 satellite-installer 命令的进度。您可以在 /var/log/foreman-installer/satellite.log 中查看日志。您可以在 /etc/foreman-installer/scenarios.d/satellite-answers.yaml 文件中查看使用的设置,包括 initial_admin_password 参数。

有关配置 DHCP、DNS 和 TFTP 服务的更多信息,请参阅 《调配指南》 中的 配置网络服务 部分。

3.7. 为非受管网络禁用 DNS、DHCP 和 TFTP

如果要手动管理 TFTP、DHCP 和 DNS 服务,您必须阻止 Satellite 在操作系统中维护这些服务,并禁用编排以避免 DHCP 和 DNS 验证错误。但是,卫星不会删除操作系统上的后端服务。

流程

  1. 在卫星服务器上,输入以下命令:

    # satellite-installer --foreman-proxy-dhcp false \
    --foreman-proxy-dns false \
    --foreman-proxy-tftp false
  2. 在 Satellite Web UI 中,导航到 Infrastructure > Subnets 并选择 subnet。
  3. 单击 Capsules 选项卡,清除 DHCP CapsuleTFTP CapsuleReverse DNS Capsule 字段。
  4. 导航到 Infrastructure > Domains 并选择一个域。
  5. 清除 DNS Capsule 字段。
  6. 可选:如果您使用第三方提供的 DHCP 服务,请将 DHCP 服务器配置为传递以下选项:

    Option 66: IP address of Satellite or Capsule
    Option 67: /pxelinux.0

    有关 DHCP 选项的更多信息,请参阅 RFC 2132

注意

当没有为给定子网和域设置胶囊时,卫星 6 不会执行编排。在启用或禁用胶囊关联时,如果不存在预期的记录和配置文件,现有主机的编配命令可能会失败。当关联胶囊以打开编配时,请确保所需的 DHCP 和 DNS 记录以及 TFTP 文件已用于现有的 Satellite 主机,以防止未来出现主机删除失败。

3.8. 配置卫星服务器以进行 Outgoing 电子邮件

要从卫星服务器发送电子邮件消息,您可以使用 SMTP 服务器或 sendmail 命令。

前提条件

  • 某些包含反垃圾邮件保护或问候功能的 SMTP 服务器已知可导致问题。使用此类服务设置传出电子邮件,可以在卫星服务器上安装和配置 vanilla SMTP 服务以进行转发,或者使用 sendmail 命令。

流程

  1. 在卫星 Web UI 中,导航到 AdministerSettings
  2. 单击 Email 选项卡,再设置配置选项以匹配您首选的发送方法。更改会立即生效。

    1. 以下示例显示了使用 SMTP 服务器的配置选项:

      表 3.1. 使用 SMTP 服务器作为交付方法
      名称示例值

      交付方法

      SMTP

      SMTP 地址

      smtp.example.com

      SMTP 身份验证

      login

      SMTP HELO/EHLO 域

      example.com

      SMTP 密码

      password

      SMTP 端口

      25

      SMTP 用户名

      user@example.com

      SMTP 用户名和 SMTP 密码 指定 SMTP 服务器的登录凭据。

    2. 以下示例使用 gmail.com 作为 SMTP 服务器:

      表 3.2. 使用 gmail.com 作为 SMTP 服务器
      名称示例值

      交付方法

      SMTP

      SMTP 地址

      smtp.gmail.com

      SMTP 身份验证

      plain

      SMTP HELO/EHLO 域

      smtp.gmail.com

      SMTP 启用 StartTLS auto

      SMTP 密码

      password

      SMTP 端口

      587

      SMTP 用户名

      user@gmail.com

    3. 以下示例使用 sendmail 命令作为交付方法:

      表 3.3. 使用 sendmail 作为交付方法
      名称示例值

      交付方法

      sendmail

      Sendmail 参数

      -i -t -G

      Sendmail 参数指定传递给 sendmail 命令的选项。默认值为 -i -t。详情请查看 sendmail 1 man page。

  3. 如果您决定使用 TLS 身份验证的 SMTP 服务器发送电子邮件,并执行以下步骤之一:

    • 将 SMTP 服务器的 CA 证书标记为 trusted。要做到这一点,请在 Satellite 服务器中执行以下命令:

      # cp mailca.crt /etc/pki/ca-trust/source/anchors/
      # update-ca-trust enable
      # update-ca-trust

      其中 mailca.crt 是 SMTP 服务器的 CA 证书。

    • 或者,在 web UI 中,将 SMTP 启用 StartTLS auto 选项设为 No
  4. 单击 Test 电子邮件,向用户的电子邮件地址发送测试消息,以确认配置是否正常工作。如果消息无法发送,Web UI 会显示错误。详情请查看 /var/log/foreman/production.log 中的日志。
注意

有关为个人用户或用户组配置电子邮件通知的详情,请参考 管理 Red Hat Satellite 中配置 电子邮件通知

3.9. 使用自定义 SSL 证书配置 Satellite 服务器

默认情况下,红帽卫星 6 使用自签名 SSL 证书来启用卫星服务器、外部胶囊服务器和所有主机之间的加密通信。如果无法使用卫星自签名证书,您可以将卫星服务器配置为使用由外部证书颁发机构签名的 SSL 证书。

要使用自定义证书配置 Satellite 服务器,请完成以下步骤:

  1. 第 3.9.1 节 “为卫星服务器创建自定义 SSL 证书”
  2. 第 3.9.2 节 “将自定义 SSL 证书部署到卫星服务器”
  3. 第 3.9.3 节 “将自定义 SSL 证书部署到主机”
  4. 如果将外部胶囊服务器注册到卫星服务器,则必须使用自定义 SSL 证书来配置它们。相同的证书颁发机构必须签署卫星服务器和胶囊服务器的证书。有关更多信息,请参阅在安装胶囊服务器中使用自定义 SSL 证书 配置胶囊服务器

3.9.1. 为卫星服务器创建自定义 SSL 证书

使用此流程为卫星服务器创建自定义 SSL 证书。如果您已经有适用于卫星服务器的自定义 SSL 证书,请跳过此步骤。

使用自定义证书配置 Satellite 服务器时,请注意以下注意事项:

  • 您必须将 Privacy-Enhanced Mail (PEM)编码用于 SSL 证书。
  • 您不能对卫星服务器和胶囊服务器使用相同的证书。
  • 相同的证书颁发机构必须签署卫星服务器和胶囊服务器的证书。

流程

  1. 要存储所有源证书文件,请创建一个只可由 root 用户访问的目录。

    # mkdir /root/satellite_cert
  2. 创建为证书签名请求(CSR)签名的私钥。

    请注意,私钥必须未加密。如果您使用受密码保护的私钥,请删除私钥密码。

    如果您已拥有此卫星服务器的私钥,请跳过这一步。

    # openssl genrsa -out /root/satellite_cert/satellite_cert_key.pem 4096
  3. 为证书签名请求(CSR)创建 /root/satellite_cert/openssl.cnf 配置文件,并包含以下内容:

    [ req ]
    req_extensions = v3_req
    distinguished_name = req_distinguished_name
    x509_extensions = usr_cert
    prompt = no
    
    [ req_distinguished_name ] 1
    C  = Country Name (2 letter code)
    ST = State or Province Name (full name)
    L  = Locality Name (eg, city)
    O  = Organization Name (eg, company)
    OU = The division of your organization handling the certificate
    CN = satellite.example.com 2
    
    [ v3_req ]
    basicConstraints = CA:FALSE
    keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
    extendedKeyUsage = serverAuth, clientAuth, codeSigning, emailProtection
    subjectAltName = @alt_names
    
    [ usr_cert ]
    basicConstraints=CA:FALSE
    nsCertType = client, server, email
    keyUsage = nonRepudiation, digitalSignature, keyEncipherment
    extendedKeyUsage = serverAuth, clientAuth, codeSigning, emailProtection
    nsComment = "OpenSSL Generated Certificate"
    subjectKeyIdentifier=hash
    authorityKeyIdentifier=keyid,issuer
    
    [ alt_names ]
    DNS.1 = satellite.example.com 3
    1
    [ req_distinguished_name ] 部分中,输入有关您的机构的信息。
    2
    将证书的通用名称 CN 设置为与卫星服务器的完全限定域名(FQDN)匹配。若要确认 FQDN,可在该卫星服务器上输入 hostname -f 命令。这需要确保 katello-certs-check 命令正确验证证书。
    3
    将 Subject Alternative Name (SAN) DNS.1 设置为与您的服务器的完全限定域名(FQDN)匹配。
  4. 生成证书签名请求(CSR):

    # openssl req -new \
    -key /root/satellite_cert/satellite_cert_key.pem \ 1
    -config /root/satellite_cert/openssl.cnf \ 2
    -out /root/satellite_cert/satellite_cert_csr.pem 3
    1
    私钥的路径。
    2
    到配置文件的路径。
    3
    要生成的 CSR 的路径。
  5. 将证书签名请求发送到证书颁发机构。相同的证书颁发机构必须签署卫星服务器和胶囊服务器的证书。

    提交请求时,指定证书的 lifespan。发送证书请求的方法会有所不同,因此请查阅证书颁发机构来获得首选方法。为响应请求,预计可在单独的文件中接收证书颁发机构捆绑包和签名证书。

3.9.2. 将自定义 SSL 证书部署到卫星服务器

使用此流程将卫星服务器配置为使用由证书颁发机构签名的自定义 SSL 证书。katello-certs-check 命令验证输入证书文件,并将自定义 SSL 证书部署到卫星服务器所需的命令返回。

流程

  1. 验证自定义 SSL 证书输入文件。请注意,对于 katello-certs-check 命令正常工作,证书中的通用名称(CN)必须与卫星服务器的 FQDN 匹配。

    # katello-certs-check \
    -c /root/satellite_cert/satellite_cert.pem \      1
    -k /root/satellite_cert/satellite_cert_key.pem \  2
    -b /root/satellite_cert/ca_cert_bundle.pem        3
    1
    由证书颁发机构签名的卫星服务器证书文件的路径。
    2
    用于签署卫星服务器证书的私钥的路径。
    3
    证书颁发机构捆绑包的路径。

    如果命令成功,它会返回两个 satellite-installer 命令,其中一个命令必须使用它来将证书部署到卫星服务器。

    要使用自定义证书安装 Red Hat Satellite 服务器,请运行:

      satellite-installer --scenario satellite \
        --certs-server-cert "/root/satellite_cert/satellite.example.com_cert.pem" \
        --certs-server-key "/root/satellite_cert/satellite.example.com_cert_key.pem" \
        --certs-server-ca-cert "/root/satellite_cert/CA-Chain.pem"

    要更新当前运行的 Satellite 安装中的证书,请运行:

      satellite-installer --scenario satellite \
        --certs-server-cert "/root/satellite_cert/satellite.example.com_cert.pem" \
        --certs-server-key "/root/satellite_cert/satellite.example.com_cert_key.pem" \
        --certs-server-ca-cert "/root/satellite_cert/CA-Chain.pem" \
        --certs-update-server \
        --certs-update-server-ca

  2. 根据您的要求,输入 satellite-installer 命令,该命令使用自定义 SSL 证书或在当前运行的 Satellite 服务器上更新证书。在某些情况下,katello-certs-check 命令的输出可能并不准确。因此,您必须遵循上述步骤,而不是命令输出。

    如果您不确定要运行哪些命令,可以通过检查 /etc/foreman-installer/scenarios.d/.installed.d/.installed 文件来验证是否安装了卫星。如果文件存在,请运行更新证书的第二个 satellite-installer 命令。

    重要

    部署证书后,请勿删除证书存档文件。例如,在升级卫星服务器时,需要它。

  3. 在有网络访问卫星服务器的计算机中,导航到以下 URL: \https://satellite.example.com
  4. 在浏览器中,查看证书详情以验证部署的证书。

3.9.3. 将自定义 SSL 证书部署到主机

将卫星服务器配置为使用自定义 SSL 证书后,您还必须在注册到此卫星服务器的每个主机上安装 katello-ca-consumer 软件包。

流程

  • 在每个主机上,安装 katello-ca-consumer 软件包:

    # yum localinstall \
    http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm

3.10. 将外部数据库与 Satellite 搭配使用

作为红帽卫星的安装过程的一部分,satellite-installer 命令会在与 Satellite 相同的服务器上安装 PostgreSQL 数据库。在某些卫星部署中,使用外部数据库而不是默认的本地数据库可帮助服务器负载。

红帽不提供支持或工具进行外部数据库维护。这包括备份、升级和数据库调整。您必须具有自己的数据库管理员才能支持和维护外部数据库。

要在 Satellite 中创建和使用外部数据库,您必须完成以下步骤:

  1. 第 3.10.2 节 “为外部数据库准备主机”.准备红帽企业 Linux 7 服务器以托管外部数据库。
  2. 第 3.10.3 节 “安装 PostgreSQL”.使用卫星、Candlepin 和 Pulp 为 PostgreSQL 准备 PostgreSQL,以及拥有它们的专用用户。
  3. 第 3.10.4 节 “将 Satellite 配置为使用外部数据库”.编辑 satellite-installer 参数以指向新数据库,并运行 satellite-installer

3.10.1. PostgreSQL 作为外部数据库注意事项

Foreman、Katello 和 Candlepin 使用 PostgreSQL 数据库。如果要将 PostgreSQL 用作外部数据库,则以下信息可帮助您确定此选项是否适合您的卫星配置:Satellite 支持 PostgreSQL 版本 12.1。

外部 PostgreSQL 的优点:

  • 增加 Satellite 上的可用内存和可用 CPU
  • 将 PostgreSQL 数据库上的 shared_buffers 设置为高灵活性,不会造成与 Satellite 上的其他服务干扰的风险
  • 在不影响 Satellite 操作的情况下,调整 PostgreSQL 服务器系统的灵活性

外部 PostgreSQL 的缺点

  • 增加部署复杂性,这会增加故障排除的难度
  • 外部 PostgreSQL 服务器是另一个要修补和维护的系统
  • 如果 Satellite 或 PostgreSQL 数据库服务器出现硬件或存储故障,则 Satellite 无法正常工作
  • 如果卫星服务器和数据库服务器之间存在延迟,性能可能会受到影响

如果您怀疑 Satellite 中的 PostgreSQL 数据库造成性能问题,请使用 Satellite 6 中的信息:如何启用 postgres 查询日志记录来检测运行较慢的查询,以确定您是否有缓慢的查询。超过一秒的查询通常是由大型安装的性能问题导致的,并移到外部数据库可能并不能提供帮助。如果您的查询缓慢,请联系红帽支持。

3.10.2. 为外部数据库准备主机

使用最新的 Red Hat Enterprise Linux 7 服务器安装一个新的置备系统,以托管外部数据库。

Red Hat Software Collections 和 Red Hat Enterprise Linux 的订阅不提供将 Satellite 与外部数据库搭配使用的正确服务级别协议。您还必须将 Satellite 订阅附加到要用于外部数据库的基础操作系统。

前提条件

流程

  1. 使用 Attaching Satellite Infrastructure Subscription 中的说明将 Satellite 订阅附加到您的服务器。
  2. 禁用所有软件仓库并只启用以下软件仓库:

    # subscription-manager repos --disable '*'
    # subscription-manager repos --enable=rhel-server-rhscl-7-rpms \
    --enable=rhel-7-server-rpms --enable=rhel-7-server-satellite-6.10-rpms

3.10.3. 安装 PostgreSQL

在内部数据库安装过程中,您只能安装使用 satellite-installer 工具安装的 PostgreSQL 版本。只要支持版本,您可以使用 Red Hat Enterprise Linux Server 7 软件仓库或从外部来源安装 PostgreSQL。Satellite 支持 PostgreSQL 版本 12.1。

流程

  1. 要安装 PostgreSQL,请输入以下命令:

    # yum install rh-postgresql12-postgresql-server \
    rh-postgresql12-syspaths \
    rh-postgresql12-postgresql-evr
  2. 要初始化 PostgreSQL,请输入以下命令:

    # postgresql-setup initdb
  3. 编辑 /var/opt/rh/rh-postgresql12/lib/pgsql/data/postgresql.conf 文件:

    # vi /var/opt/rh/rh-postgresql12/lib/pgsql/data/postgresql.conf
  4. 删除 # 和 edit 以侦听入站连接:

    listen_addresses = '*'
  5. Edit the /var/opt/rh/rh-postgresql12/lib/pgsql/data/pg_hba.conf file:

    # vi /var/opt/rh/rh-postgresql12/lib/pgsql/data/pg_hba.conf
  6. 在文件中添加以下行:

      host  all   all   Satellite_ip/24   md5
  7. 要启动并启用 PostgreSQL 服务,请输入以下命令:

    # systemctl start postgresql
    # systemctl enable postgresql
  8. 在外部 PostgreSQL 服务器上打开 postgresql 端口:

    # firewall-cmd --add-service=postgresql
    # firewall-cmd --runtime-to-permanent
  9. 切换到 postgres 用户并启动 PostgreSQL 客户端:

    $ su - postgres -c psql
  10. 创建三个数据库和专用角色:一个用于 Satellite,一个用于 Candlepin,另一个用于 Pulp:

    CREATE USER "foreman" WITH PASSWORD 'Foreman_Password';
    CREATE USER "candlepin" WITH PASSWORD 'Candlepin_Password';
    CREATE USER "pulp" WITH PASSWORD 'Pulpcore_Password';
    CREATE DATABASE foreman OWNER foreman;
    CREATE DATABASE candlepin OWNER candlepin;
    CREATE DATABASE pulpcore OWNER pulp;
  11. 退出 postgres 用户:

    # \q
  12. 从卫星服务器,测试您可以访问数据库。如果连接成功,命令会返回 1

    # PGPASSWORD='Foreman_Password' psql -h postgres.example.com  -p 5432 -U foreman -d foreman -c "SELECT 1 as ping"
    # PGPASSWORD='Candlepin_Password' psql -h postgres.example.com -p 5432 -U candlepin -d candlepin -c "SELECT 1 as ping"
    # PGPASSWORD='Pulpcore_Password' psql -h postgres.example.com -p 5432 -U pulp -d pulpcore -c "SELECT 1 as ping"

3.10.4. 将 Satellite 配置为使用外部数据库

使用 satellite-installer 命令,将 Satellite 配置为连接到外部 PostgreSQL 数据库。

前提条件

  • 您已在 Red Hat Enterprise Linux 服务器中安装和配置了 PostgreSQL 数据库。

流程

  1. 要为 Satellite 配置外部数据库,请输入以下命令:

    satellite-installer --scenario satellite \
      --foreman-db-host postgres.example.com \
      --foreman-db-password Foreman_Password \
      --foreman-db-database foreman \
      --foreman-db-manage false \
      --katello-candlepin-db-host postgres.example.com \
      --katello-candlepin-db-name candlepin \
      --katello-candlepin-db-password Candlepin_Password \
      --katello-candlepin-manage-db false \
      --foreman-proxy-content-pulpcore-manage-postgresql false \
      --foreman-proxy-content-pulpcore-postgresql-host postgres.example.com \
      --foreman-proxy-content-pulpcore-postgresql-db-name pulpcore \
      --foreman-proxy-content-pulpcore-postgresql-password Pulpcore_Password
      --foreman-proxy-content-pulpcore-postgresql-user pulp

    要为这些外部数据库启用安全套接字层(SSL)协议,请添加以下选项:

    --foreman-db-sslmode verify-full
    --foreman-db-root-cert <path_to_CA>
    --katello-candlepin-db-ssl true
    --katello-candlepin-db-ssl-verify true
    --foreman-proxy-content-pulpcore-postgresql-ssl true
    --foreman-proxy-content-pulpcore-postgresql-ssl-root-ca <path_to_CA>

3.11. 使用预定义的配置集调整卫星服务器

如果您的 Satellite 部署包含超过 5000 个主机,您可以使用预定义的调优配置文件来改进 Satellite 的性能。

请注意,您不能在胶囊上使用调优配置文件。

您可以根据 Satellite 管理和支持硬件资源的主机数量选择其中一个配置集。

调优配置文件位于 /usr/share/foreman-installer/config/foreman.hiera/tuning/sizes 目录中。

当您使用 --tuning 选项运行 satellite-installer 命令时,部署配置设置会按照以下顺序应用到 Satellite:

  1. /usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml 文件中定义的默认调优配置文件
  2. 您要应用于部署的调优配置文件,并在 /usr/share/foreman-installer/config/foreman.hiera/tuning/sizes/ 目录中定义
  3. 可选:如果您配置了 /etc/foreman-installer/custom-hiera.yaml 文件,则 Satellite 会应用这些配置设置。

请注意,/etc/foreman-installer/custom-hiera.yaml 文件中定义的配置设置会覆盖调优配置文件中定义的配置设置。

因此,在应用调优配置文件前,您必须比较 /usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml 中默认调优配置文件,以及 /etc/foreman-installer/custom-hiera.yaml 文件,并从 /etc/foreman-installer/custom-hiera.yaml 文件中删除任何重复的配置。

default

受管主机数量: 0-5000

RAM:20G

CPU 内核数:4

受管主机数量:5001-10000

RAM:32G

CPU 内核数:8

受管主机数量: 10001-20000

RAM:64G

CPU 内核数:16

extra-large

受管主机数量: 20001-60000

RAM: 128G

CPU 内核数:32

extra-extra-large

受管主机数量:60000+

RAM:256G

CPU 内核数: 48+

流程

  1. 可选:如果您已在 Satellite 服务器上配置了 custom-hiera.yaml 文件,请将 /etc/foreman-installer/custom-hiera.yaml 文件备份到 custom-hiera.original。如果备份文件被破坏,您可以使用备份文件将 /etc/foreman-installer/custom-hiera.yaml 文件恢复到其原始状态:

    # cp /etc/foreman-installer/custom-hiera.yaml \
    /etc/foreman-installer/custom-hiera.original
  2. 可选:如果您已在 Satellite 服务器上配置了 custom-hiera.yaml 文件,请查看 /usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml 以及要在 /usr/ share/foreman-installer/config/foreman.hiera/tuning/tuning/tuning/sizes/tuning/tuning/size 中应用的默认调优配置文件的定义。将配置条目与 /etc/foreman-installer/custom-hiera.yaml 文件中的条目进行比较,并删除 /etc/foreman-installer/custom-hiera.yaml 文件中的任何重复配置设置。
  3. 输入您要应用的 profile 的 --tuning 选项的 satellite-installer 命令。例如,要应用中型调优配置文件设置,请输入以下命令:

    # satellite-installer --tuning medium

第 4 章 使用外部服务配置 Satellite 服务器

如果不想在卫星服务器上配置 DNS、DHCP 和 TFTP 服务,请使用本节将卫星服务器配置为使用外部 DNS、DHCP 和 TFTP 服务。

4.1. 使用外部 DNS 配置 Satellite 服务器

您可以使用外部 DNS 配置卫星服务器。卫星服务器使用 nsupdate 工具更新远程服务器上的 DNS 记录。

要永久保留任何更改,您必须输入 satellite-installer 命令以及适合您的环境的选项。

前提条件

  • 您必须有配置了外部 DNS 服务器。

流程

  1. 解锁软件包以启用新软件包的安装:

    # satellite-maintain packages unlock
  2. 安装 BIND 和实用程序软件包:

    # yum install bind bind-utils
  3. 锁定软件包:

    # satellite-maintain packages lock
  4. /etc/rndc.key 文件从外部 DNS 服务器复制到 Satellite 服务器:

    # scp root@dns.example.com:/etc/rndc.key /etc/rndc.key
  5. 配置所有权、权限和 SELinux 上下文:

    # restorecon -v /etc/rndc.key
    # chown -v root:named /etc/rndc.key
    # chmod -v 640 /etc/rndc.key
  6. 要测试 nsupdate 工具,请远程添加主机:

    # echo -e "server DNS_IP_Address\n \
    update add aaa.virtual.lan 3600 IN A Host_IP_Address\n \
    send\n" | nsupdate -k /etc/rndc.key
    # nslookup aaa.virtual.lan DNS_IP_Address
    # echo -e "server DNS_IP_Address\n \
    update delete aaa.virtual.lan 3600 IN A Host_IP_Address\n \
    send\n" | nsupdate -k /etc/rndc.key
  7. 手动将 foreman-proxy 用户分配给 指定组。通常,satellite-installer 可确保 foreman-proxy 用户属于指定的 UNIX 组,但是在这种情况下,卫星不管理用户和组,因此您需要将 foreman-proxy 用户手动分配给指定组。

    # usermod -a -G named foreman-proxy
  8. 输入 satellite-installer 命令,对 /etc/foreman-proxy/settings.d/dns.yml 文件进行以下持久更改:

    # satellite-installer --foreman-proxy-dns=true \
    --foreman-proxy-dns-managed=false \
    --foreman-proxy-dns-provider=nsupdate \
    --foreman-proxy-dns-server="DNS_IP_Address" \
    --foreman-proxy-keyfile=/etc/rndc.key \
    --foreman-proxy-dns-ttl=86400
  9. 重启 foreman-proxy 服务:

    # systemctl restart foreman-proxy
  10. 登录卫星服务器 Web UI。
  11. 导航到 Infrastructure > Capsules,找到 Satellite Server,然后从 Actions 列中的列表中,选择 Refresh
  12. 将 DNS 服务与适当的子网和域关联。

4.2. 使用外部 DHCP 配置 Satellite 服务器

要使用外部 DHCP 配置 Satellite 服务器,您必须完成以下步骤:

4.2.1. 将外部 DHCP 服务器配置为与卫星服务器一起使用

要配置外部 DHCP 服务器以用于 Satellite 服务器,必须在 Red Hat Enterprise Linux 服务器中安装 ISC DHCP Service 和 Berkeley Internet Name Domain (BIND)软件包。您还需要与卫星服务器共享 DHCP 配置和租用文件。此流程中的示例使用分布式网络文件系统(NFS)协议共享 DHCP 配置和租期文件。

注意

如果您使用 dnsmasq 作为外部 DHCP 服务器,请启用 dhcp-no-override 设置。这是必要的,因为卫星会在 TFTP 服务器上创建 grub2/ 子目录的配置文件。如果禁用了 dhcp-no-override 设置,客户端会从根目录获取启动加载器及其配置,这可能会导致错误。

流程

  1. 在 Red Hat Enterprise Linux 服务器服务器中,安装 ISC DHCP Service 和 Berkeley Internet Name Domain (BIND)软件包:

    # yum install dhcp bind
  2. 生成安全令牌:

    # dnssec-keygen -a HMAC-MD5 -b 512 -n HOST omapi_key

    因此,在当前目录中创建由两个文件组成的密钥对。

  3. 从密钥复制 secret 哈希:

    # cat Komapi_key.+*.private |grep ^Key|cut -d ' ' -f2
  4. 编辑所有子网的 dhcpd 配置文件并添加该密钥。以下是一个示例:

    # cat /etc/dhcp/dhcpd.conf
    default-lease-time 604800;
    max-lease-time 2592000;
    log-facility local7;
    
    subnet 192.168.38.0 netmask 255.255.255.0 {
    	range 192.168.38.10 192.168.38.100;
    	option routers 192.168.38.1;
    	option subnet-mask 255.255.255.0;
    	option domain-search "virtual.lan";
    	option domain-name "virtual.lan";
    	option domain-name-servers 8.8.8.8;
    }
    
    omapi-port 7911;
    key omapi_key {
    	algorithm HMAC-MD5;
    	secret "jNSE5YI3H1A8Oj/tkV4...A2ZOHb6zv315CkNAY7DMYYCj48Umw==";
    };
    omapi-key omapi_key;

    请注意,选项路由器 值是您要用于外部 DHCP 服务的卫星或胶囊 IP 地址。

  5. 从在其中创建的目录中删除这两个密钥文件。
  6. 在卫星服务器上,定义各个子网。暂时不要为定义的子网设置 DHCP 胶囊。

    要防止冲突,请单独设置租期和保留范围。例如,如果租期范围是 192.168.38.10 到 192.168.38.100,在卫星 Web UI 中将保留范围定义为 192.168.38.101 到 192.168.38.250。

  7. 配置外部对 DHCP 服务器的防火墙:

    # firewall-cmd --add-service dhcp \
    && firewall-cmd --runtime-to-permanent
  8. 在卫星服务器上,确定 foreman 用户的 UID 和 GID:

    # id -u foreman
    993
    # id -g foreman
    990
  9. 在 DHCP 服务器上,使用与上一步中确定相同的 ID 创建 foreman 用户和组:

    # groupadd -g 990 foreman
    # useradd -u 993 -g 990 -s /sbin/nologin foreman
  10. 为确保配置文件可以访问,请恢复读取和执行标志:

    # chmod o+rx /etc/dhcp/
    # chmod o+r /etc/dhcp/dhcpd.conf
    # chattr +i /etc/dhcp/ /etc/dhcp/dhcpd.conf
  11. 启动 DHCP 服务:

    # systemctl start dhcpd
  12. 使用 NFS 导出 DHCP 配置和租期文件:

    # yum install nfs-utils
    # systemctl enable rpcbind nfs-server
    # systemctl start rpcbind nfs-server nfs-lock nfs-idmapd
  13. 为您要使用 NFS 导出的 DHCP 配置和租期文件创建目录:

    # mkdir -p /exports/var/lib/dhcpd /exports/etc/dhcp
  14. 要为创建的目录创建挂载点,请在 /etc/fstab 文件中添加以下行:

    /var/lib/dhcpd /exports/var/lib/dhcpd none bind,auto 0 0
    /etc/dhcp /exports/etc/dhcp none bind,auto 0 0
  15. /etc/fstab 中挂载文件系统:

    # mount -a
  16. 确保 /etc/exports 中存在以下行:

    /exports 192.168.38.1(rw,async,no_root_squash,fsid=0,no_subtree_check)
    
    /exports/etc/dhcp 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide)
    
    /exports/var/lib/dhcpd 192.168.38.1(ro,async,no_root_squash,no_subtree_check,nohide)

    请注意,您输入的 IP 地址是卫星或胶囊 IP 地址,您要用于外部 DHCP 服务。

  17. 重新载入 NFS 服务器:

    # exportfs -rva
  18. 配置 DHCP omapi 端口 7911 的防火墙:

    # firewall-cmd --add-port="7911/tcp" \
    && firewall-cmd --runtime-to-permanent
  19. 可选:配置对 NFS 外部访问的防火墙。客户端使用 NFSv3 配置。

    # firewall-cmd --zone public --add-service mountd \
    && firewall-cmd --zone public --add-service rpc-bind \
    && firewall-cmd --zone public --add-service nfs \
    && firewall-cmd --runtime-to-permanent

4.2.2. 使用外部 DHCP 服务器配置 Satellite 服务器

您可以使用外部 DHCP 服务器配置卫星服务器。

前提条件

流程

  1. 安装 nfs-utils 工具:

    # yum install nfs-utils
  2. 为 NFS 创建 DHCP 目录:

    # mkdir -p /mnt/nfs/etc/dhcp /mnt/nfs/var/lib/dhcpd
  3. 更改文件所有者:

    # chown -R foreman-proxy /mnt/nfs
  4. 验证与 NFS 服务器和远程过程调用(RPC)通信路径的通信:

    # showmount -e DHCP_Server_FQDN
    # rpcinfo -p DHCP_Server_FQDN
  5. /etc/fstab 文件中添加以下几行:

    DHCP_Server_FQDN:/exports/etc/dhcp /mnt/nfs/etc/dhcp nfs
    ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcp_etc_t:s0" 0 0
    
    DHCP_Server_FQDN:/exports/var/lib/dhcpd /mnt/nfs/var/lib/dhcpd nfs
    ro,vers=3,auto,nosharecache,context="system_u:object_r:dhcpd_state_t:s0" 0 0
  6. /etc/fstab 上挂载文件系统:

    # mount -a
  7. 要验证 foreman-proxy 用户可以访问通过网络共享的文件,显示 DHCP 配置和租期文件:

    # su foreman-proxy -s /bin/bash
    bash-4.2$ cat /mnt/nfs/etc/dhcp/dhcpd.conf
    bash-4.2$ cat /mnt/nfs/var/lib/dhcpd/dhcpd.leases
    bash-4.2$ exit
  8. 输入 satellite-installer 命令,对 /etc/foreman-proxy/settings.d/dhcp.yml 文件进行以下持久更改:

    # satellite-installer --foreman-proxy-dhcp=true \
    --foreman-proxy-dhcp-provider=remote_isc \
    --foreman-proxy-plugin-dhcp-remote-isc-dhcp-config /mnt/nfs/etc/dhcp/dhcpd.conf \
    --foreman-proxy-plugin-dhcp-remote-isc-dhcp-leases /mnt/nfs/var/lib/dhcpd/dhcpd.leases \
    --foreman-proxy-plugin-dhcp-remote-isc-key-name=omapi_key \
    --foreman-proxy-plugin-dhcp-remote-isc-key-secret=jNSE5YI3H1A8Oj/tkV4...A2ZOHb6zv315CkNAY7DMYYCj48Umw== \
    --foreman-proxy-plugin-dhcp-remote-isc-omapi-port=7911 \
    --enable-foreman-proxy-plugin-dhcp-remote-isc \
    --foreman-proxy-dhcp-server=DHCP_Server_FQDN
  9. 重启 foreman-proxy 服务:

    # systemctl restart foreman-proxy
  10. 登录卫星服务器 Web UI。
  11. 导航到 Infrastructure > Capsules,找到 Satellite Server,然后从 Actions 列中的列表中,选择 Refresh
  12. 将 DHCP 服务与适当的子网和域关联。

4.3. 使用外部 TFTP 配置 Satellite 服务器

您可以使用外部 TFTP 服务配置卫星服务器。

流程

  1. 为 NFS 创建 TFTP 目录:

    # mkdir -p /mnt/nfs/var/lib/tftpboot
  2. /etc/fstab 文件中,添加以下行:

    TFTP_Server_IP_Address:/exports/var/lib/tftpboot /mnt/nfs/var/lib/tftpboot nfs rw,vers=3,auto,nosharecache,context="system_u:object_r:tftpdir_rw_t:s0" 0 0
  3. /etc/fstab 中挂载文件系统:

    # mount -a
  4. 输入 satellite-installer 命令,对 /etc/foreman-proxy/settings.d/tftp.yml 文件进行以下持久更改:

    # satellite-installer --foreman-proxy-tftp=true \
    --foreman-proxy-tftp-root /mnt/nfs/var/lib/tftpboot
  5. 如果 TFTP 服务在与 DHCP 服务不同的服务器上运行,请使用 TFTP 服务运行的服务器的 FQDN 或 IP 地址更新 tftp_servername 设置:

    # satellite-installer --foreman-proxy-tftp-servername=TFTP_Server_FQDN
  6. 登录卫星服务器 Web UI。
  7. 导航到 Infrastructure > Capsules,找到 Satellite Server,然后从 Actions 列中的列表中,选择 Refresh
  8. 将 TFTP 服务与适当的子网和域关联。

4.4. 使用外部 IdM DNS 配置 Satellite 服务器

当卫星服务器为主机添加 DNS 记录时,它会首先确定哪个胶囊为该域提供 DNS。然后,它将与配置为为您的部署提供 DNS 服务的胶囊通信并添加记录。此过程中不涉及主机。因此,您必须在卫星或胶囊上安装并配置 IdM 客户端,以便为您要使用 IdM 服务器管理的域提供 DNS 服务。

卫星服务器可以配置为使用 Red Hat Identity Management (IdM)服务器来提供 DNS 服务。有关红帽身份管理的更多信息,请参阅 Linux 域身份、身份验证和策略指南

要将 Satellite 服务器配置为使用 Red Hat Identity Management (IdM)服务器来提供 DNS 服务,请使用以下步骤之一:

要恢复到内部 DNS 服务,请使用以下步骤:

注意

您不需要使用卫星服务器来管理 DNS。当您使用 Satellite 的域注册功能(其中置备的主机自动注册到 IdM 时,ipa-client-install 脚本会为客户端创建 DNS 记录。使用外部 IdM DNS 和域注册配置 Satellite 服务器是相互排斥的。有关配置域注册的更多信息,请参阅 管理 Red Hat Satellite 中的 Provisioned Hosts 的外部身份验证

4.4.1. 使用 GSS-TSIG 身份验证配置动态 DNS 更新

您可以将 IdM 服务器配置为使用通用安全服务算法进行在 RFC3645 中定义的 secret 密钥事务(GSS-TSIG)技术。要将 IdM 服务器配置为使用 GSS-TSIG 技术,您必须在卫星服务器基本操作系统上安装 IdM 客户端。

前提条件

  • 您必须确保部署 IdM 服务器,且正确配置了基于主机的防火墙。有关更多信息,请参阅 Linux 域身份、身份验证和策略指南中的 端口要求
  • 您必须联系 IdM 服务器管理员,以确保获取 IdM 服务器上的帐户,并具有在 IdM 服务器中创建区的权限。
  • 您必须确认卫星服务器或胶囊服务器是否已配置为为您的部署提供 DNS 服务。
  • 您必须在管理部署的 DNS 服务 Satellite 或 Capsule 基础操作系统上配置 DNS、DHCP 和 TFTP 服务。
  • 您必须创建应答文件的备份。如果应答文件损坏,您可以使用备份将应答文件恢复到其原始状态。如需更多信息,请参阅 配置卫星服务器

流程

要使用 GSS-TSIG 身份验证配置动态 DNS 更新,请完成以下步骤:

在 IdM 服务器中创建 Kerberos 主体

  1. 为从 IdM 管理员获取的帐户获取了一个 Kerberos ticket:

    # kinit idm_user
  2. 为卫星服务器创建一个新的 Kerberos 主体,以用于在 IdM 服务器中进行身份验证。

    # ipa service-add satellite.example.com

安装和配置 IdM 客户端

  1. 在管理部署的 DNS 服务的 Satellite 或 Capsule 的基本操作系统上,安装 ipa-client 软件包:

    # satellite-maintain packages install ipa-client
  2. 运行安装脚本并根据屏幕提示来配置 IdM 客户端:

    # ipa-client-install
  3. 获取Kerberos ticket:

    # kinit admin
  4. 删除任何预先存在的 keytab

    # rm /etc/foreman-proxy/dns.keytab
  5. 获取此系统的 keytab:

    # ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \
    -s idm1.example.com -k /etc/foreman-proxy/dns.keytab
    注意

    当在服务中使用与原始系统相同的主机名添加 keytab 系统时,添加 r 选项以防止生成新凭证并在原始系统中呈现凭证无效。

  6. 对于 dns.keytab 文件,请将组和拥有者设置为 foreman-proxy

    # chown foreman-proxy:foreman-proxy /etc/foreman-proxy/dns.keytab
  7. 可选: 要验证 keytab 文件是否有效,请输入以下命令:

    # kinit -kt /etc/foreman-proxy/dns.keytab \
    capsule/satellite.example.com@EXAMPLE.COM

在 IdM web UI 中配置 DNS 区域

  1. 创建并配置您要管理的区域:

    1. 导航到 Network Services > DNS > DNS Zones
    2. 选择 Add 并输入区名称。例如: example.com
    3. Add and Edit
    4. 点 Settings 选项卡并在 BIND 更新策略 框中,将以下内容添加到分号分开的列表:

      grant capsule/047satellite.example.com@EXAMPLE.COM wildcard * ANY;
    5. Dynamic update 设置为 True
    6. 启用 允许 PTR 同步
    7. Save 保存更改。
  2. 创建并配置反向区:

    1. 导航到 Network Services > DNS > DNS Zones
    2. Add
    3. 选择 Reverse zone IP 网络,并以 CIDR 格式添加网络地址以启用反向查找。
    4. Add and Edit
    5. Settings 选项卡并在 BIND 更新策略 框中,将以下内容添加到分号分开的列表:

      grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;
    6. Dynamic update 设置为 True
    7. Save 保存更改。

配置管理域的 DNS 服务的卫星或胶囊服务器

  1. 使用 satellite-installer 命令配置管理域的 DNS 服务的 Satellite 或 Capsule:

    • 在 Satellite 上输入以下命令:

      satellite-installer --scenario satellite \
      --foreman-proxy-dns=true \
      --foreman-proxy-dns-managed=true \
      --foreman-proxy-dns-provider=nsupdate_gss \
      --foreman-proxy-dns-server="idm1.example.com" \
      --foreman-proxy-dns-tsig-principal="capsule/satellite.example.com@EXAMPLE.COM" \
      --foreman-proxy-dns-tsig-keytab=/etc/foreman-proxy/dns.keytab \
      --foreman-proxy-dns-reverse="55.168.192.in-addr.arpa" \
      --foreman-proxy-dns-zone=example.com \
      --foreman-proxy-dns-ttl=86400
    • 在 Capsule 上输入以下命令:

      satellite-installer --scenario capsule \
      --foreman-proxy-dns=true \
      --foreman-proxy-dns-managed=true \
      --foreman-proxy-dns-provider=nsupdate_gss \
      --foreman-proxy-dns-server="idm1.example.com" \
      --foreman-proxy-dns-tsig-principal="capsule/satellite.example.com@EXAMPLE.COM" \
      --foreman-proxy-dns-tsig-keytab=/etc/foreman-proxy/dns.keytab \
      --foreman-proxy-dns-reverse="55.168.192.in-addr.arpa" \
      --foreman-proxy-dns-zone=example.com \
      --foreman-proxy-dns-ttl=86400
  2. 重启 Satellite 或 Capsule 的 Proxy 服务。

    # systemctl restart foreman-proxy

运行 satellite-installer 命令对胶囊配置进行任何更改后,您必须在卫星 Web UI 中更新每个受影响的胶囊的配置。

在卫星 Web UI 中更新配置

  1. 导航到 Infrastructure > Capsules,找到 Satellite Server,然后从 Actions 列中的列表中,选择 Refresh
  2. 配置域:

    1. 导航到 Infrastructure > Domains 并选择域名。
    2. Domain 选项卡中,确保将 DNS Capsule 设置为连接子网的胶囊。
  3. 配置子网:

    1. 导航到 Infrastructure > Subnets 并选择子网名称。
    2. 子网 选项卡中,将 IPAM 设置为 None
    3. Domains 选项卡中,选择您要使用 IdM 服务器管理的域。
    4. Capsules 选项卡中,确保 Reverse DNS Capsule 设置为连接子网的胶囊。
    5. 单击 Submit 以保存更改。

4.4.2. 使用 TSIG 身份验证配置动态 DNS 更新

您可以将 IdM 服务器配置为对使用 rndc.key 密钥文件进行身份验证的 DNS (TSIG)技术使用 secret 密钥事务身份验证。TSIG 协议在 RFC2845 中定义。

前提条件

  • 您必须确保部署 IdM 服务器,且正确配置了基于主机的防火墙。有关更多信息,请参阅 Linux 域身份、身份验证和策略指南中的 端口要求
  • 您必须在 IdM 服务器中获取 root 用户访问权限。
  • 您必须确认卫星服务器或胶囊服务器是否已配置为为您的部署提供 DNS 服务。
  • 您必须在管理部署的 DNS 服务 Satellite 或 Capsule 基础操作系统上配置 DNS、DHCP 和 TFTP 服务。
  • 您必须创建应答文件的备份。如果应答文件损坏,您可以使用备份将应答文件恢复到其原始状态。如需更多信息,请参阅 配置卫星服务器

流程

要使用 TSIG 身份验证配置动态 DNS 更新,请完成以下步骤:

为 IdM 服务器中的 DNS 区启用外部更新

  1. 在 IdM 服务器中,将以下内容添加到 /etc/named.conf 文件的顶部:

    ########################################################################
    
    include "/etc/rndc.key";
    controls  {
    inet _IdM_Server_IP_Address_ port 953 allow { _Satellite_IP_Address_; } keys { "rndc-key"; };
    };
    ########################################################################
  2. 重新载入 命名的 服务以使更改生效:

    # systemctl reload named
  3. 在 IdM web UI 中,进入 Network Services > DNS > DNS Zones 并点区的名称。在 Settings 选项卡中,应用以下更改:

    1. BIND 更新策略 框中添加以下内容:

      grant "rndc-key" zonesub ANY;
    2. Dynamic update 设置为 True
    3. Update 保存更改。
  4. /etc/rndc.key 文件从 IdM 服务器复制到 Satellite 服务器的基本操作系统。输入以下命令:

    # scp /etc/rndc.key root@satellite.example.com:/etc/rndc.key
  5. 要为 rndc.key 文件设置正确的所有权、权限和 SELinux 上下文,请输入以下命令:

    # restorecon -v /etc/rndc.key
    # chown -v root:named /etc/rndc.key
    # chmod -v 640 /etc/rndc.key
  6. 手动将 foreman-proxy 用户分配给 指定组。通常,satellite-installer 可确保 foreman-proxy 用户属于指定的 UNIX 组,但是在这种情况下,卫星不管理用户和组,因此您需要将 foreman-proxy 用户手动分配给指定组。

    # usermod -a -G named foreman-proxy
  7. 在 Satellite 服务器中,输入以下 satellite-installer 命令,将 Satellite 配置为使用外部 DNS 服务器:

    # satellite-installer --scenario satellite \
    --foreman-proxy-dns=true \
    --foreman-proxy-dns-managed=false \
    --foreman-proxy-dns-provider=nsupdate \
    --foreman-proxy-dns-server="IdM_Server_IP_Address" \
    --foreman-proxy-keyfile=/etc/rndc.key \
    --foreman-proxy-dns-ttl=86400

在 IdM 服务器中测试到 DNS 区的外部更新

  1. 确保 Satellite Server 中的 /etc/rndc.key 文件中的键是 IdM 服务器中使用的相同密钥文件:

    key "rndc-key" {
            algorithm hmac-md5;
            secret "secret-key==";
    };
  2. 在卫星服务器上,为主机创建测试 DNS 条目。例如,在位于 192.168.25.1 的 IdM 服务器上的 A 记录为 192.168.25.20 的主机 test.example.com

    # echo -e "server 192.168.25.1\n \
    update add test.example.com 3600 IN A 192.168.25.20\n \
    send\n" | nsupdate -k /etc/rndc.key
  3. 在 Satellite 服务器中测试 DNS 条目:

    # nslookup test.example.com 192.168.25.1
    Server:		192.168.25.1
    Address:	192.168.25.1#53
    
    Name:	test.example.com
    Address: 192.168.25.20
  4. 要在 IdM web UI 中查看条目,请导航至 Network Services > DNS > DNS Zones。单击区域的名称,再按名称搜索主机。
  5. 如果成功解决,请删除测试 DNS 条目:

    # echo -e "server 192.168.25.1\n \
    update delete test.example.com 3600 IN A 192.168.25.20\n \
    send\n" | nsupdate -k /etc/rndc.key
  6. 确认删除了 DNS 条目:

    # nslookup test.example.com 192.168.25.1

    以上 nslookup 命令会失败,并在成功删除记录时返回 SERVFAIL 错误消息。

4.4.3. 恢复到内部 DNS 服务

您可以将 恢复为使用卫星服务器和胶囊服务器作为您的 DNS 提供程序。您可以使用在配置外部 DNS 之前创建的应答文件的备份,或者您可以创建应答文件的备份。有关应答文件的更多信息,请参阅 配置卫星服务器

流程

在您要配置的 Satellite 或 Capsule 服务器中为域管理 DNS 服务,请完成以下步骤:

将卫星或胶囊配置为 DNS 服务器

  • 如果您在配置外部 DNS 前创建了应答文件的备份,请恢复回答文件,然后输入 satellite-installer 命令:

    # satellite-installer
  • 如果您对应答文件有合适的备份,请现在创建应答文件的备份。要在不使用应答文件的情况下将 Satellite 或 Capsule 配置为 DNS 服务器,请在 Satellite 上输入以下 satellite-installer 命令以及每个受影响的胶囊:

    # satellite-installer \
    --foreman-proxy-dns=true \
    --foreman-proxy-dns-managed=true \
    --foreman-proxy-dns-provider=nsupdate \
    --foreman-proxy-dns-server="127.0.0.1"  \
    --foreman-proxy-dns-tsig-principal="foremanproxy/satellite.example.com@EXAMPLE.COM" \
    --foreman-proxy-dns-tsig-keytab=/etc/foreman-proxy/dns.keytab

    如需更多信息,请参阅在 胶囊服务器 上配置 DNS、DHCP 和 TFTP

运行 satellite-installer 命令对胶囊配置进行任何更改后,您必须在卫星 Web UI 中更新每个受影响的胶囊的配置。

在卫星 Web UI 中更新配置

  1. 导航到 Infrastructure > Capsules
  2. 对于您要更新的每个胶囊,请从 Actions 列表中选择 Refresh
  3. 配置域:

    1. 进入 Infrastructure > Domains 并点您要配置的域名。
    2. Domain 选项卡中,将 DNS Capsule 设置为连接子网的胶囊。
  4. 配置子网:

    1. 导航到 Infrastructure > Subnets 并选择子网名称。
    2. Subnet 选项卡中,将 IPAM 设置为 DHCP 或内部数据库
    3. Domains 选项卡中,选择您要使用卫星或胶囊管理的域。
    4. Capsules 选项卡中,将 Reverse DNS Capsule 设置为连接子网的胶囊。
    5. 单击 Submit 以保存更改。

附录 A. 将自定义配置应用到 Red Hat Satellite

当您首次使用 satellite-installer 安装并配置 Satellite 时,您可以指定 DNS 和 DHCP 配置文件不是由 Puppet 使用安装程序标志 --foreman-proxy-dns-managed=false--foreman-proxy-dhcp-managed=false 管理=false 进行管理的 DNS 和 DHCP 配置文件。如果在初始安装程序运行期间没有指定这些标志,则重新运行安装程序会覆盖所有手动更改,例如,重新运行 以便升级目的。如果更改被覆盖,则必须运行恢复过程来恢复手动更改。如需更多信息,请参阅"从 Puppet 运行"写入的手动更改

要查看可用于自定义配置的所有安装程序标志,请运行 satellite-installer --scenario satellite --full-help。些 Puppet 类不暴露于卫星安装程序。要手动管理并阻止安装程序覆盖其值,请在配置文件 /etc/foreman-installer/custom-hiera.yaml 中添加条目来指定配置值。此配置文件采用 YAML 格式,以 < puppet class>::<parameter name>: <value&gt; 的格式由每行一个条目组成。此文件中指定的配置值会在安装程序重新运行后保留。

常见示例包括:

  • 对于 Apache,将 ServerTokens 指令设置为仅返回产品名称:

    apache::server_tokens: Prod
  • 要完全关闭 Apache 服务器签名:

    apache::server_signature: Off

卫星安装程序的 Puppet 模块存储在 /usr/share/foreman-installer/modules 下。检查 .pp 文件(例如: moduleName/manifests/example.pp)来查找类、参数和值。或者,使用 grep 命令执行关键字搜索。

设置某些值可能会影响 Red Hat Satellite 的性能或功能时可能出现的后果。在应用前,请考虑更改的影响,然后首先在非生产环境中测试更改。如果您没有非生产环境,请使用 --noop--verbose 选项运行 Satellite 安装程序。如果您的更改造成问题,请从 custom-hiera.yaml 中删除异常行,并重新运行 Satellite 安装程序。如果您对特定值是否安全修改,请联络红帽支持。

附录 B. 恢复由 Puppet 运行编写的手动更改

如果 Puppet 运行覆盖了手动配置,您可以将文件恢复到之前的状态。以下示例演示了如何恢复由 Puppet 运行覆盖的 DHCP 配置文件。

流程

  1. 复制要恢复的 文件。这可让您比较文件,以检查升级所需的任何强制更改。这不适用于 DNS 或 DHCP 服务。

    # cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.backup
  2. 检查日志文件,以记下覆盖文件的 md5sum。例如:

    # journalctl -xe
    ...
    /Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1
    ...
  3. 恢复覆盖的文件:

    # puppet filebucket restore --local --bucket \
    /var/lib/puppet/clientbucket /etc/dhcp/dhcpd.conf \ 622d9820b8e764ab124367c68f5fa3a1
  4. 比较备份文件和恢复的文件,并编辑恢复的文件,使其包含升级所需的任何强制更改。

附录 C. 恢复 Satellite 以从 Red Hat CDN 下载内容

如果您的环境从断开连接更改为连接,您可以重新配置断开连接的 Satellite 以直接从红帽 CDN 下载内容。

流程

  1. 在 Satellite Web UI 中,进入 Content > Subscriptions
  2. 单击 Manage Manifest
  3. 编辑 Red Hat CDN URL 字段以指向 Red Hat CDN URL:

    https://cdn.redhat.com

  4. Save

现在,卫星服务器已配置为在同步存储库时从 CDN 下载内容。

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.