使用 RPM 软件包安装
第 1 章 从 RPM 软件包安装 复制链接链接已复制到粘贴板!
您可以在带有受支持的 Red Hat Enterprise Linux (RHEL)的机器上安装 RPM 软件包中的 MicroShift。
1.1. 在从 RPM 软件包安装 MicroShift 之前 复制链接链接已复制到粘贴板!
在安装 MicroShift 进行内存配置和 FIPS 模式之前,建议您准备主机机器。
1.1.1. 配置卷组 复制链接链接已复制到粘贴板!
MicroShift 使用逻辑卷管理器存储(LVMS)容器存储(CSI)插件向持久性卷(PV)提供存储。LVMS 依赖于 Linux 逻辑卷管理器(LVM)来动态管理 PV 的后备逻辑卷(LV)。因此,您的计算机必须具有带有未使用空间的 LVM 卷组(VG),其中 LVMS 可以为您的工作负载的 PV 创建 LV。
要配置卷组(VG),允许 LVMS 为您的工作负载的 PV 创建 LV,请在安装 RHEL 的过程中降低根卷的 Desired Size。减小根卷的大小,允许在磁盘上为 LVMS 在运行时创建的额外 LV 允许未分配空间。
1.1.2. 为 FIPS 模式准备 复制链接链接已复制到粘贴板!
如果您的用例需要以 FIPS 模式运行 MicroShift 容器,则必须安装启用了 FIPS 的 RHEL。在将 worker 机器配置为以 FIPS 模式运行后,您的 MicroShift 容器会自动配置为以 FIPS 模式运行。
因为 FIPS 必须在集群首次启动的操作系统前启用,所以您不能在部署集群后启用 FIPS。
1.2. 准备从 RPM 软件包安装 MicroShift 复制链接链接已复制到粘贴板!
将您的 RHEL 机器配置为具有足够容量用于工作负载的逻辑卷管理器(LVM)卷组(VG)。
先决条件
- 满足安装 MicroShift 的系统要求。
- 有对机器的 root 用户访问权限。
- 您已配置了带有工作负载 PV 所需的容量的 LVM VG。
流程
- 在 Storage Configuration 子部分的 Installation Destination 下的图形安装程序中,选择 Custom → Done 以打开用于配置分区和卷的对话框。此时会显示 Manual Partitioning 窗口。
- 在 New Red Hat Enterprise Linux 9.x Installation 下,选择 Click here to create them automatically。
- 选择根分区 /,减少 Desired Capacity,以便 VG 有足够的容量供您 PV,然后点 Update Settings。
完成安装。
注意有关分区配置的更多信息,请参阅配置手动分区的额外信息部分中的链接。
以 root 用户身份,运行以下命令来验证系统上可用的 VG 容量:
sudo vgs
$ sudo vgs
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
VG #PV #LV #SN Attr VSize VFree rhel 1 2 0 wz--n- <127.00g 54.94g
VG #PV #LV #SN Attr VSize VFree rhel 1 2 0 wz--n- <127.00g 54.94g
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.3. 从 RPM 软件包安装 MicroShift 复制链接链接已复制到粘贴板!
使用以下步骤从 RPM 软件包安装 MicroShift。
先决条件
- 满足安装 MicroShift 的系统要求。
- 您完成了准备从 RPM 软件包安装 MicroShift 的步骤。
流程
在所有生命周期中,运行以下命令为您的发行版本启用存储库:
sudo subscription-manager repos \ --enable rhocp-4.17-for-rhel-9-$(uname -m)-rpms \ --enable fast-datapath-for-rhel-9-$(uname -m)-rpms
$ sudo subscription-manager repos \ --enable rhocp-4.17-for-rhel-9-$(uname -m)-rpms \ --enable fast-datapath-for-rhel-9-$(uname -m)-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于扩展支持(EUS)版本,请运行以下命令启用 EUS 软件仓库:
sudo subscription-manager repos \ --enable rhel-9-for-$(uname -m)-appstream-eus-rpms \ --enable rhel-9-for-$(uname -m)-baseos-eus-rpms
$ sudo subscription-manager repos \ --enable rhel-9-for-$(uname -m)-appstream-eus-rpms \ --enable rhel-9-for-$(uname -m)-baseos-eus-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下命令锁定操作系统版本,以避免将来的更新到不受支持的配置中:
sudo subscription-manager release --set=9.4
$ sudo subscription-manager release --set=9.4
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来安装 MicroShift:
sudo dnf install -y microshift
$ sudo dnf install -y microshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将安装 pull secret 从 Red Hat Hybrid Cloud Console 下载到临时文件夹,例如
$HOME/openshift-pull-secret
。此 pull secret 允许您与提供红帽构建 MicroShift 使用的容器镜像的容器 registry 进行身份验证。 要将 pull secret 复制到 RHEL 机器的
/etc/crio
文件夹,请运行以下命令:sudo cp $HOME/openshift-pull-secret /etc/crio/openshift-pull-secret
$ sudo cp $HOME/openshift-pull-secret /etc/crio/openshift-pull-secret
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令使
/etc/crio/openshift-pull-secret
文件的所有者成为 root 用户:sudo chown root:root /etc/crio/openshift-pull-secret
$ sudo chown root:root /etc/crio/openshift-pull-secret
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,使
/etc/crio/openshift-pull-secret
文件可由 root 用户读取和写入:sudo chmod 600 /etc/crio/openshift-pull-secret
$ sudo chmod 600 /etc/crio/openshift-pull-secret
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您的 RHEL 机器启用了防火墙,您必须配置几个必需的防火墙规则。对于
firewalld
,运行以下命令:sudo firewall-cmd --permanent --zone=trusted --add-source=10.42.0.0/16
$ sudo firewall-cmd --permanent --zone=trusted --add-source=10.42.0.0/16
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo firewall-cmd --permanent --zone=trusted --add-source=169.254.169.1
$ sudo firewall-cmd --permanent --zone=trusted --add-source=169.254.169.1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo firewall-cmd --reload
$ sudo firewall-cmd --reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
如果您为 MicroShift 准备的卷组 (VG) 使用了默认名称
rhel
,则不需要进一步配置。如果您使用其他名称,或者要更改更多配置设置,请参阅"使用 MicroShift 配置文件"部分。
1.4. 启动和停止 MicroShift 复制链接链接已复制到粘贴板!
安装所需的所有 RPM 软件包后,学习启动和停止 MicroShift 服务。
1.4.1. 启动 MicroShift 服务 复制链接链接已复制到粘贴板!
使用以下步骤启动 MicroShift 服务。
先决条件
- 您已从 RPM 软件包安装了 MicroShift。
流程
作为 root 用户,输入以下命令启动 MicroShift 服务:
sudo systemctl start microshift
$ sudo systemctl start microshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选: 要将 RHEL 机器配置为在机器启动时启动 MicroShift,请输入以下命令:
sudo systemctl enable microshift
$ sudo systemctl enable microshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选: 要在机器启动时自动启动 MicroShift,请输入以下命令:
sudo systemctl disable microshift
$ sudo systemctl disable microshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意MicroShift 服务首次启动时,它会下载并初始化 MicroShift 的容器镜像。因此,microShift 可能需要几分钟才能首次部署该服务。后续的开始 MicroShift 服务会缩短启动时间。
1.4.2. 停止 MicroShift 服务 复制链接链接已复制到粘贴板!
使用以下步骤停止 MicroShift 服务。
先决条件
- MicroShift 服务正在运行。
流程
输入以下命令停止 MicroShift 服务:
sudo systemctl stop microshift
$ sudo systemctl stop microshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow MicroShift 上部署的工作负载可能会继续运行,即使 MicroShift 服务已停止。输入以下命令显示正在运行的工作负载:
sudo crictl ps -a
$ sudo crictl ps -a
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令停止部署的工作负载:
sudo systemctl stop kubepods.slice
$ sudo systemctl stop kubepods.slice
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.5. 如何访问 MicroShift 集群 复制链接链接已复制到粘贴板!
使用本节中的步骤,通过 OpenShift CLI (oc
)访问 MicroShift 集群。
- 您可以从运行 MicroShift 服务的同一机器或从远程位置访问集群。
- 您可以使用此访问权限来观察和管理工作负载。
-
在执行以下步骤时,选择包含您要连接的主机名或 IP 地址的
kubeconfig
文件,并将其放在相关目录中。
1.5.1. 本地访问 MicroShift 集群 复制链接链接已复制到粘贴板!
使用以下步骤,使用 kubeconfig
文件在本地访问 MicroShift 集群。
先决条件
-
已安装
oc
二进制文件。
流程
可选:如果您的 Red Hat Enterprise Linux (RHEL)机器没有
~/.kube/
文件夹,请运行以下命令:mkdir -p ~/.kube/
$ mkdir -p ~/.kube/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,将生成的本地访问
kubeconfig
文件复制到~/.kube/
目录中:sudo cat /var/lib/microshift/resources/kubeadmin/kubeconfig > ~/.kube/config
$ sudo cat /var/lib/microshift/resources/kubeadmin/kubeconfig > ~/.kube/config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令更新
~/.kube/config
文件的权限:chmod go-r ~/.kube/config
$ chmod go-r ~/.kube/config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
输入以下命令验证 MicroShift 是否正在运行:
oc get all -A
$ oc get all -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.5.2. 打开防火墙以远程访问 MicroShift 集群 复制链接链接已复制到粘贴板!
使用以下步骤打开防火墙,以便远程用户可以访问 MicroShift 集群。必须在 workstation 用户可以访问集群前完成此步骤。
对于此过程,user@microshift
是 MicroShift 主机上的用户,负责设置该机器,使其可以被单独的工作站上的远程用户访问。
先决条件
-
已安装
oc
二进制文件。 - 您的帐户具有集群管理特权。
流程
在 MicroShift 主机上以
user@microshift
的身份,运行以下命令来打开 Kubernetes API 服务器的防火墙端口 (6443/tcp
):sudo firewall-cmd --permanent --zone=public --add-port=6443/tcp && sudo firewall-cmd --reload
[user@microshift]$ sudo firewall-cmd --permanent --zone=public --add-port=6443/tcp && sudo firewall-cmd --reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
以
user@microshift
的身份,输入以下命令验证 MicroShift 是否正在运行:oc get all -A
[user@microshift]$ oc get all -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.5.3. 远程访问 MicroShift 集群 复制链接链接已复制到粘贴板!
使用以下步骤,使用 kubeconfig
文件从远程位置访问 MicroShift 集群。
user@workstation
登录用于远程访问主机计算机。该流程中的 <user>
值是 user@workstation
登录到 MicroShift 主机所使用的用户名。
先决条件
-
已安装
oc
二进制文件。 -
user@microshift
已打开来自本地主机的防火墙。
流程
以
user@workstation
的身份,如果 Red Hat Enterprise Linux (RHEL)机器没有,使用以下命令创建一个~/.kube/
文件夹:mkdir -p ~/.kube/
[user@workstation]$ mkdir -p ~/.kube/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以
user@workstation
的身份,运行以下命令来为您的 MicroShift 主机的主机名设置变量:MICROSHIFT_MACHINE=<name or IP address of MicroShift machine>
[user@workstation]$ MICROSHIFT_MACHINE=<name or IP address of MicroShift machine>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以
user@workstation
的身份,运行以下命令来复制生成的kubeconfig
文件,该文件包含您要从运行 MicroShift 的 RHEL 机器连接到本地机器的主机名或 IP 地址:ssh <user>@$MICROSHIFT_MACHINE "sudo cat /var/lib/microshift/resources/kubeadmin/$MICROSHIFT_MACHINE/kubeconfig" > ~/.kube/config
[user@workstation]$ ssh <user>@$MICROSHIFT_MACHINE "sudo cat /var/lib/microshift/resources/kubeadmin/$MICROSHIFT_MACHINE/kubeconfig" > ~/.kube/config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意要为此步骤生成
kubeconfig
文件,请参阅为远程访问生成额外的 kubeconfig 文件。以
user@workstation
的身份,运行以下命令来更新~/.kube/config
文件的权限:chmod go-r ~/.kube/config
$ chmod go-r ~/.kube/config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
以
user@workstation
的身份,输入以下命令验证 MicroShift 是否正在运行:oc get all -A
[user@workstation]$ oc get all -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow