将 SUSE Manager 服务器迁移到容器化环境
1. 要求和注意事项
1.1. 常规
-
要将 SUSE Manager 4.3 服务器迁移到容器,需要一台安装了 SLE Micro 5.5 / SUSE Linux Enterprise Server 15 SP6 和
mgradm
的新计算机。 -
无论所选主机操作系统是 SLE Micro 5.5 还是 SUSE Linux Enterprise Server 15 SP6,均不支持从 SUSE Manager 4.3 到 5.0 的就地迁移。
-
在从 SUSE Manager 4.3 迁移到 5.0 之前,必须将所有现有的传统客户端(包括传统代理)迁移到 Salt。
-
有关将传统 SUSE Manager 4.3 客户端迁移到 Salt 客户端的详细信息,请参见 https://documentation.suse.com/suma/4.3/en/suse-manager/client-configuration/contact-methods-migrate-traditional.html。
-
-
SUSE Manager 5.0 及更高版本不再支持传统联系协议。
本指南仅涵盖从 SUSE Manager 4.3 迁移至 5.0 的场景。 |
1.2. GPG 密钥
-
自信任 GPG 密钥不会被迁移。
-
仅在 RPM 数据库中可信的 GPG 密钥不会迁移。因此,使用
spacewalk-repo-sync
同步通道可能会失败。 -
在完成服务器的实际迁移后,管理员必须手动将这些密钥从所安装的 4.3 系统迁移到容器主机。
过程:将 4.3 GPG 密钥手动迁移到新服务器-
将 4.3 服务器中的密钥复制到新服务器的容器主机。
-
稍后,使用命令
mgradm gpg add <PATH_TO_KEY_FILE>
将每个密钥添加到迁移的服务器。
-
2. 迁移
2.1. 准备 SUSE Manager 5.0 服务器主机
请勿在已准备好的 SLE Micro 5.5 或 SUSE Linux Enterprise Server 15 SP6 系统上预先安装 SUSE Manager。迁移流程设计为自动执行服务器安装。不支持先运行 在以下步骤中,我们只会准备主机系统,而不实际安装 SUSE Manager 5.0 服务器。 |
2.1.1. 准备 SLE Micro 5.5 主机
2.1.1.1. 下载安装媒体
-
在 https://www.suse.com/download/sle-micro/ 上找到 SLE Micro 5.5 安装媒体。
-
下载
SLE-Micro-5.5-DVD-x86_64-GM-Media1.iso
。 -
将下载下来的
.iso
映像放入一个 DVD 或 USB 闪存盘以进行安装。
2.1.1.2. 安装 SLE Micro 5.5
有关准备计算机(虚拟机或物理机)的详细信息,请参见 SLE Micro 5.5 部署指南。
-
插入包含 SLE Micro 5.5 安装映像的 DVD 或 USB 闪存盘(USB 磁盘或密钥)。
-
引导或重引导您的系统。
-
使用箭头键选择
安装
。 -
调整键盘和语言。
-
单击
复选框
接受许可协议。 -
单击
下一步
继续。 -
选择注册方法。在本示例中,我们将在 SUSE Customer Center 中注册服务器。
SUSE Manager 5.0 容器会安装为扩展。根据以下列出的所需特定扩展,您还需要有各个扩展的 SUSE Customer Center 注册代码。
-
SUSE Manager 5.0 服务器
-
SUSE Manager 5.0 代理
-
SUSE Manager 5.0 零售分支服务器
SLE Micro 5.5 权利包含在 SUSE Manager 权利中,因此不需要单独的注册代码。
-
-
输入您的 SUSE Customer Center 电子邮件地址。
-
输入您的 SLE Micro 5.5 注册代码。
-
单击
下一步
继续。 -
要安装代理,请选中 SUSE Manager 5.0 代理扩展;要安装服务器,请选中 SUSE Manager 5.0 服务器扩展对应的
复选框
。 -
单击
下一步
继续。 -
输入您的 SUSE Manager 5.0 扩展注册代码。
-
单击 下一步 继续。
-
在
NTP 配置
页面上,单击 下一步。 -
在
系统身份验证
页面上,输入 root 用户的口令。单击 下一步。 -
在
安装设置
页面上单击 安装。
将 SLE Micro 5.5 和 SUSE Manager 5.0 安装为扩展的过程到此完成。
2.1.1.3. 从命令行注册(可选)
如果您在安装 SLE Micro 5.5 期间已将 SUSE Manager 5.0 添加为扩展,则可以跳过此过程。不过,您也可以选择在安装 SLE Micro 5.5 期间单击 跳过注册 按钮来跳过注册。本节提供了在安装 SLE Micro 5.5 后注册产品的步骤。
以下步骤将注册 x86-64 体系结构的 SUSE Manager 5.0 扩展,因此需要提供适用于 x86-64 体系结构的注册代码。要注册 ARM 或 s390x 体系结构,请使用正确的注册代码。 |
-
运行以下命令列出可用扩展:
transactional-update --quiet register --list-extensions
-
从可用扩展列表中选择一个要安装的扩展:
-
如果要安装服务器,请使用您的 SUSE Manager Server Extension 5.0 x86_64 注册代码运行以下命令:
transactional-update register -p SUSE-Manager-Server/5.0/x86_64 -r <注册代码>
-
如果要安装代理,请使用您的 SUSE Manager Proxy Extension 5.0 x86_64 注册代码运行以下命令:
transactional-update register -p SUSE-Manager-Proxy/5.0/x86_64 -r <reg_code>
-
-
重引导。
2.1.1.4. 更新系统
-
以 root 身份登录。
-
运行 transactional-update:
transactional-update
-
重引导。
SLE Micro 设计为默认自动更新,并在应用更新后会重引导。但是,这种行为对于 SUSE Manager 环境而言是不利的。为了防止服务器自动更新,SUSE Manager 会在引导过程中禁用 transactional-update 计时器。 如果您希望保留 SLE Micro 的默认行为,请运行以下命令来启用计时器:
|
2.1.2. 准备 SUSE Linux Enterprise Server 15 SP6 主机
或者,您也可以在 SUSE Linux Enterprise Server 15 SP6 上部署 SUSE Manager。
下面的过程介绍安装过程的主要步骤。
-
在 https://www.suse.com/download/sles/ 上查找并下载 SLE Micro SUSE Linux Enterprise Server 15 SP6
.iso
。 -
确保您拥有宿主操作系统 (SUSE Linux Enterprise Server 15 SP6) 和扩展的注册代码。
-
在 SUSE Linux Enterprise Server 15 SP6 上启动安装过程。
-
在
语言、键盘和产品选择
中选择要安装的产品。 -
在
许可协议
中,阅读协议并选中我同意许可条款
。
-
-
选择注册方法。在本示例中,我们将在 SUSE Customer Center 中注册服务器。
-
输入您的 SUSE Customer Center 电子邮件地址。
-
输入 SUSE Linux Enterprise Server 15 SP6 的注册代码。
-
单击
下一步
继续。请注意,对于 SUSE Linux Enterprise Server 15 SP6,您需要拥有有效的 SUSE Linux Enterprise Server 订阅及相应的注册代码,并在此界面提供。您还需要在下方输入 SUSE Manager 扩展的注册代码。
-
在
扩展和模块选择
屏幕中,选中以下几项:-
选择 SUSE Manager 服务器扩展以安装服务器,或选择 SUSE Manager 代理扩展以安装代理。
-
Basesystem 模块
-
Containers 模块
-
-
单击
下一步
继续。 -
输入您的 SUSE Manager 5.0 扩展注册代码。
-
单击 下一步 继续。
-
完成安装。
-
安装完成后,以 root 身份登录新安装的服务器。
-
更新系统(可选,如果在安装期间未将系统设置为自动下载更新):
zypper up
-
重引导。
-
以 root 身份登录并安装
podman
及mgradm
和mgradm-bash-completion
(如果尚未自动安装)。zypper install podman mgradm mgradm-bash-completion
-
重引导系统或运行以下命令,以启动 Podman 服务:
systemctl enable --now podman.service
2.2. SSH 连接准备
此步骤可确保新的 SUSE Manager 5.0 服务器无需口令便可通过 SSH 连接至现有 4.3 服务器。操作包括生成和配置 SSH 密钥、设置 SSH 代理,以及将公共密钥复制到旧服务器。
要使迁移流程在没有人工干预的情况下运行,必须进行该设置。
-
确保对于
root
,新 5.0 服务器上存在 SSH 密钥。如果不存在密钥,请使用以下命令创建一个:ssh-keygen -t rsa
-
新服务器上的 SSH 配置和代理应准备就绪,这样在连接 4.3 服务器时就不会提示输入口令。
eval $(ssh-agent); ssh-add
迁移脚本依赖新服务器上运行的 SSH 代理来建立不提示输入口令的连接。如果该代理尚未激活,请运行
eval $(ssh-agent)
将其启动。然后,使用ssh-add
(后跟私用密钥的路径)将 SSH 密钥添加到正在运行的代理。在此过程中,系统将提示您输入私用密钥的口令。 -
使用
ssh-copy-id
将公共 SSH 密钥复制到 SUSE Manager 4.3 服务器 (<oldserver.fqdn>
)。将<oldserver.fqdn>
替换为 4.3 服务器的 FQDN:ssh-copy-id <old server.fqdn>
SSH 密钥将会被复制到旧服务器的
~/.ssh/authorized_keys
文件中。有关详细信息,请参见ssh-copy-id
手册页。 -
在新服务器上与旧的 SUSE Manager 服务器建立 SSH 连接,检查是否不需要口令。此外,主机指纹不得有任何问题。如果遇到问题,请从
~/.ssh/known_hosts
文件中去除旧指纹。然后重试。指纹将存储在本地~/.ssh/known_hosts
文件中。
2.3. 执行迁移
在规划从 SUSE Manager 4.3 到 SUSE Manager 5.0 的迁移时,请确保您的目标实例达到或超出旧设置的规格。
这包括但不限于内存 (RAM)、CPU 核心、存储和网络带宽。
-
此步骤并非强制性步骤。如果您的基础架构需要自定义的永久性存储空间,请使用
mgr-storage-proxy
工具。有关mgr-storage-server
的详细信息,请参见 installation-and-upgrade:hardware-requirements.adoc#install-hardware-requirements-storage。 -
执行以下命令来安装新的 SUSE Manager 服务器。请将
<oldserver.fqdn>
替换为 4.3 服务器的 FQDN:请务必在开始迁移前升级 4.3 服务器并应用所有可用更新。此外,还需去除所有不必要的通道,以便缩短总迁移时间。
迁移可能需要很长时间,具体取决于需要复制的数据量。为了减少停机时间,可以在_初始复制_、_重新复制_或_最终复制和切换_过程中多次运行迁移,同时旧服务器上的所有服务都可以保持正常运行。
只有在最终迁移期间才需要停止旧服务器上的进程。
对于最终复制以外的所有复制,请添加参数
--prepare
,以防止自动停止旧服务器上的服务。例如,在 SUSE Manager 服务器上:mgradm migrate podman <oldserver.fqdn> --prepare
-
停止 4.3 服务器上的 SUSE Manager 服务:
spacewalk-service stop
-
停止 4.3 服务器上的 PostgreSQL 服务:
systemctl stop postgresql
-
在 SUSE Manager 服务器上执行迁移
mgradm migrate podman <oldserver.fqdn>
-
迁移可信 SSL CA 证书。
2.3.1. 证书的迁移
作为 RPM 的一部分安装并存储在 SUSE Manager 4.3 上 /usr/share/pki/trust/anchors/
目录中的可信 SSL CA 证书将不会迁移。由于 SUSE 不会在容器中安装 RPM 软件包,因此迁移完成后,管理员必须手动从所安装的 4.3 系统中迁移这些证书文件。
-
将 4.3 服务器中的该文件复制到新服务器。 例如,复制为
/local/ca.file
。 -
使用以下命令将文件复制到容器中:
mgrctl cp /local/ca.file server:/etc/pki/trust/anchors/
成功运行 要将其重定向到 5.0 服务器,需要在基础架构级别(DHCP 和 DNS)重命名新服务器,以使用与 4.3 服务器相同的 FQDN 和 IP 地址。 |