×

您需要完成以下步骤,才能准备在IBM Z®和IBM® LinuxONE上安装OpenShift Container Platform集群

  • 验证集群的互联网连接。

  • 下载安装程序。

    如果您在断开连接的环境中安装,则从镜像内容中提取安装程序。更多信息,请参见 镜像用于断开连接安装的镜像

  • 安装OpenShift CLI (oc)。

    如果您在断开连接的环境中安装,请将oc安装到镜像主机。

  • 生成SSH密钥对。部署后,您可以使用此密钥对对OpenShift Container Platform集群的节点进行身份验证。

  • 验证DNS解析。

OpenShift Container Platform的互联网访问

在OpenShift Container Platform 4.17中,您需要访问互联网才能安装集群。

您必须具有互联网访问权限才能

  • 访问 OpenShift集群管理器 以下载安装程序并执行订阅管理。如果集群具有互联网访问权限并且您没有禁用遥测,则该服务会自动授权您的集群。

  • 访问 Quay.io 以获取安装集群所需的软件包。

  • 获取执行集群更新所需的软件包。

如果您的集群无法直接访问互联网,则可以在您预配的某些类型的基础设施上执行受限网络安装。在此过程中,您将下载所需的内容并使用它来填充包含安装包的镜像注册表。对于某些安装类型,您安装集群的环境不需要互联网访问。在更新集群之前,请更新镜像注册表的内容。

获取安装程序

在安装OpenShift Container Platform之前,请在您的预配机器上下载安装文件。

先决条件
  • 您有一台运行Linux(例如Red Hat Enterprise Linux 8)的机器,具有500 MB的本地磁盘空间。

步骤
  1. 转到Red Hat混合云控制台上的集群类型页面。如果您有Red Hat帐户,请使用您的凭据登录。如果没有,请创建一个帐户。

  2. 从页面“自行运行”部分选择您的基础设施提供商。

  3. 从“OpenShift安装程序”下的下拉菜单中选择您的主机操作系统和架构,然后单击“下载安装程序”。

  4. 将下载的文件放在要存储安装配置文件的目录中。

    • 安装程序会在您用于安装集群的计算机上创建多个文件。完成集群安装后,您必须保留安装程序和安装程序创建的文件。这两个文件都是删除集群所必需的。

    • 即使集群在安装过程中失败,删除安装程序创建的文件也不会删除您的集群。要删除集群,请完成针对您的特定云提供商的OpenShift Container Platform卸载步骤。

  5. 解压安装程序。例如,在使用 Linux 操作系统的计算机上,运行以下命令

    $ tar -xvf openshift-install-linux.tar.gz
  6. 从 Red Hat OpenShift 集群管理器下载您的安装pull 密钥。此 pull 密钥允许您对包含的授权机构(包括 Quay.io)提供的服务进行身份验证,Quay.io 提供 OpenShift Container Platform 组件的容器镜像。

或者,您可以从Red Hat 客户门户检索安装程序,您可以在其中指定要下载的安装程序版本。但是,您必须拥有有效的订阅才能访问此页面。

安装 OpenShift CLI

您可以安装 OpenShift CLI(oc)以通过命令行界面与 OpenShift Container Platform 交互。您可以在 Linux、Windows 或 macOS 上安装 oc

如果您安装了早期版本的 oc,则无法使用它来完成 OpenShift Container Platform 4.17 中的所有命令。请下载并安装新版本的 oc

在 Linux 上安装 OpenShift CLI

您可以使用以下步骤在 Linux 上安装 OpenShift CLI(oc)二进制文件。

步骤
  1. 导航到 Red Hat 客户门户上的OpenShift Container Platform 下载页面

  2. 从**产品变体**下拉列表中选择架构。

  3. 从**版本**下拉列表中选择合适的版本。

  4. 单击**OpenShift v4.17 Linux 客户端**条目旁边的**立即下载**并保存文件。

  5. 解压归档文件

    $ tar xvf <file>
  6. oc 二进制文件放置在您的 PATH 中的目录中。

    要检查您的 PATH,请执行以下命令

    $ echo $PATH
验证
  • 安装 OpenShift CLI 后,可以使用 oc 命令。

    $ oc <command>

在 Windows 上安装 OpenShift CLI

您可以使用以下步骤在 Windows 上安装 OpenShift CLI(oc)二进制文件。

步骤
  1. 导航到 Red Hat 客户门户上的OpenShift Container Platform 下载页面

  2. 从**版本**下拉列表中选择合适的版本。

  3. 单击**OpenShift v4.17 Windows 客户端**条目旁边的**立即下载**并保存文件。

  4. 使用 ZIP 程序解压缩归档文件。

  5. oc 二进制文件移动到您的 PATH 中的目录。

    要检查您的 PATH,请打开命令提示符并执行以下命令

    C:\> path
验证
  • 安装 OpenShift CLI 后,可以使用 oc 命令。

    C:\> oc <command>

在 macOS 上安装 OpenShift CLI

您可以使用以下步骤在 macOS 上安装 OpenShift CLI(oc)二进制文件。

步骤
  1. 导航到 Red Hat 客户门户上的OpenShift Container Platform 下载页面

  2. 从**版本**下拉列表中选择合适的版本。

  3. 单击**OpenShift v4.17 macOS 客户端**条目旁边的**立即下载**并保存文件。

    对于 macOS arm64,请选择**OpenShift v4.17 macOS arm64 客户端**条目。

  4. 解压归档文件。

  5. oc 二进制文件移动到 PATH 中的目录。

    要检查您的 PATH,请打开终端并执行以下命令

    $ echo $PATH
验证
  • 使用 oc 命令验证您的安装

    $ oc <command>

为集群节点 SSH 访问生成密钥对

在 OpenShift Container Platform 安装过程中,您可以向安装程序提供 SSH 公钥。该密钥通过其 Ignition 配置文件传递到 Red Hat Enterprise Linux CoreOS (RHCOS) 节点,并用于验证对节点的 SSH 访问。该密钥将添加到每个节点上 core 用户的 ~/.ssh/authorized_keys 列表中,从而启用无密码身份验证。

密钥传递到节点后,您可以使用密钥对以 core 用户身份通过 SSH 登录到 RHCOS 节点。要通过 SSH 访问节点,必须由本地用户的 SSH 管理私钥身份。

如果您想通过 SSH 登录到集群节点以执行安装调试或灾难恢复,则必须在安装过程中提供 SSH 公钥。./openshift-install gather 命令也要求在集群节点上安装 SSH 公钥。

在需要灾难恢复和调试的生产环境中,请勿跳过此过程。

步骤
  1. 如果您的本地机器上没有现有的 SSH 密钥对可用于对集群节点进行身份验证,请创建一个。例如,在使用 Linux 操作系统的计算机上,运行以下命令

    $ ssh-keygen -t ed25519 -N '' -f <path>/<file_name> (1)
    1 指定新 SSH 密钥的路径和文件名,例如 ~/.ssh/id_ed25519。如果您有现有的密钥对,请确保您的公钥位于您的 ~/.ssh 目录中。

    如果您计划安装一个使用已提交给 NIST 以进行 FIPS 140-2/140-3 验证的 RHEL 加密库的 OpenShift Container Platform 集群(仅限于 x86_64ppc64les390x 架构),请不要创建使用 ed25519 算法的密钥。而是创建使用 rsaecdsa 算法的密钥。

  2. 查看 SSH 公钥

    $ cat <path>/<file_name>.pub

    例如,运行以下命令以查看 ~/.ssh/id_ed25519.pub 公钥

    $ cat ~/.ssh/id_ed25519.pub
  3. 如果尚未添加,请将 SSH 私钥身份添加到本地用户的 SSH 代理。对于对集群节点进行无密码 SSH 身份验证,或者如果您想使用 ./openshift-install gather 命令,都需要 SSH 代理管理密钥。

    在某些发行版中,默认的 SSH 私钥身份(例如 ~/.ssh/id_rsa~/.ssh/id_dsa)会自动管理。

    1. 如果本地用户的 ssh-agent 进程尚未运行,请将其作为后台任务启动

      $ eval "$(ssh-agent -s)"
      示例输出
      Agent pid 31874

      如果您的集群处于 FIPS 模式,则只能使用符合 FIPS 的算法来生成 SSH 密钥。密钥必须是 RSA 或 ECDSA。

  4. 将您的 SSH 私钥添加到 ssh-agent

    $ ssh-add <path>/<file_name> (1)
    1 指定 SSH 私钥的路径和文件名,例如 ~/.ssh/id_ed25519
    示例输出
    Identity added: /home/<you>/<path>/<file_name> (<computer_name>)
后续步骤
  • 安装 OpenShift Container Platform 时,请向安装程序提供 SSH 公钥。

验证用户预配基础设施的 DNS 解析

您可以在用户预配的基础设施上安装 OpenShift Container Platform 之前验证您的 DNS 配置。

安装集群之前,必须成功执行本节中详细介绍的验证步骤。

先决条件
  • 您已为用户预配的基础设施配置了所需的 DNS 记录。

步骤
  1. 从您的安装节点,针对 Kubernetes API、通配符路由和集群节点的记录名称运行 DNS 查询。验证响应中包含的 IP 地址是否对应于正确的组件。

    1. 对 Kubernetes API 记录名称执行查找。检查结果是否指向 API 负载均衡器的 IP 地址。

      $ dig +noall +answer @<nameserver_ip> api.<cluster_name>.<base_domain> (1)
      1 <nameserver_ip>替换为名称服务器的 IP 地址,将<cluster_name>替换为您的集群名称,并将<base_domain>替换为您的基础域名。
      示例输出
      api.ocp4.example.com.		604800	IN	A	192.168.1.5
    2. 对 Kubernetes 内部 API 记录名称执行查找。检查结果是否指向 API 负载均衡器的 IP 地址。

      $ dig +noall +answer @<nameserver_ip> api-int.<cluster_name>.<base_domain>
      示例输出
      api-int.ocp4.example.com.		604800	IN	A	192.168.1.5
    3. 测试示例*.apps.<cluster_name>.<base_domain> DNS 通配符查找。所有应用程序通配符查找都必须解析到应用程序入口负载均衡器的 IP 地址。

      $ dig +noall +answer @<nameserver_ip> random.apps.<cluster_name>.<base_domain>
      示例输出
      random.apps.ocp4.example.com.		604800	IN	A	192.168.1.5

      在示例输出中,Kubernetes API 和应用程序入口流量使用相同的负载均衡器。在生产环境中,您可以分别部署 API 和应用程序入口负载均衡器,以便您可以独立地扩展每个负载均衡器的基础设施。

      您可以将random替换为其他通配符值。例如,您可以查询到 OpenShift Container Platform 控制台的路由。

      $ dig +noall +answer @<nameserver_ip> console-openshift-console.apps.<cluster_name>.<base_domain>
      示例输出
      console-openshift-console.apps.ocp4.example.com. 604800 IN	A 192.168.1.5
    4. 对引导 DNS 记录名称运行查找。检查结果是否指向引导节点的 IP 地址。

      $ dig +noall +answer @<nameserver_ip> bootstrap.<cluster_name>.<base_domain>
      示例输出
      bootstrap.ocp4.example.com.		604800	IN	A	192.168.1.96
    5. 使用此方法对控制平面和计算节点的 DNS 记录名称执行查找。检查结果是否与每个节点的 IP 地址相对应。

  2. 从您的安装节点上,对负载均衡器和集群节点的 IP 地址运行反向 DNS 查找。验证响应中包含的记录名称是否与正确的组件相对应。

    1. 对 API 负载均衡器的 IP 地址执行反向查找。检查响应是否包含 Kubernetes API 和 Kubernetes 内部 API 的记录名称。

      $ dig +noall +answer @<nameserver_ip> -x 192.168.1.5
      示例输出
      5.1.168.192.in-addr.arpa. 604800	IN	PTR	api-int.ocp4.example.com. (1)
      5.1.168.192.in-addr.arpa. 604800	IN	PTR	api.ocp4.example.com. (2)
      
      1 提供 Kubernetes 内部 API 的记录名称。
      2 提供 Kubernetes API 的记录名称。

      OpenShift Container Platform 应用程序通配符不需要 PTR 记录。不需要针对应用程序入口负载均衡器的 IP 地址执行反向 DNS 解析的验证步骤。

    2. 对引导节点的 IP 地址执行反向查找。检查结果是否指向引导节点的 DNS 记录名称。

      $ dig +noall +answer @<nameserver_ip> -x 192.168.1.96
      示例输出
      96.1.168.192.in-addr.arpa. 604800	IN	PTR	bootstrap.ocp4.example.com.
    3. 使用此方法对控制平面和计算节点的 IP 地址执行反向查找。检查结果是否与每个节点的 DNS 记录名称相对应。

其他资源