×

先决条件

OpenShift Container Platform 的互联网访问

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

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

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

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

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

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

生成集群节点 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 公钥。

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

您必须使用本地密钥,而不是使用平台特定方法(例如AWS 密钥对)配置的密钥。

步骤
  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_64`、`ppc64le` 和 `s390x` 架构),请不要创建使用 `ed25519` 算法的密钥。而是创建使用 `rsa` 或 `ecdsa` 算法的密钥。

  2. 查看 SSH 公钥

    $ cat <path>/<file_name>.pub

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

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

    在某些发行版中,默认的 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 公钥。

获取安装程序

在安装 OpenShift Container Platform 之前,请在您用于安装的主机上下载安装文件。

先决条件
  • 您有一台运行 Linux 或 macOS 的计算机,具有 500 MB 的本地磁盘空间。

步骤
  1. 访问 Red Hat Hybrid Cloud Console 上的集群类型页面。如果您有 Red Hat 帐户,请使用您的凭据登录。如果没有,请创建一个帐户。

  2. 从页面上的“自己运行”部分选择您的基础架构提供商。

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

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

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

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

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

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

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

部署集群

您可以在兼容的云平台上安装 OpenShift Container Platform。

您只能在初始安装期间运行安装程序的 `create cluster` 命令一次。

先决条件
  • 您已配置了托管集群的云平台帐户。

  • 您拥有 OpenShift Container Platform 安装程序和集群的拉取密钥。

  • 您已验证主机上的云提供商帐户是否具有部署集群的正确权限。权限不正确的帐户会导致安装过程失败,并显示一条错误消息,其中显示缺少的权限。

步骤
  1. 删除任何不使用您为集群配置的 GCP 帐户的服务帐户密钥,并存储在以下位置的现有 GCP 凭据:

    • `GOOGLE_CREDENTIALS`、`GOOGLE_CLOUD_KEYFILE_JSON` 或 `GCLOUD_KEYFILE_JSON` 环境变量

    • `~/.gcp/osServiceAccount.json` 文件

    • `gcloud cli` 默认凭据

  2. 更改到包含安装程序的目录并初始化集群部署:

    $ ./openshift-install create cluster --dir <installation_directory> \ (1)
        --log-level=info (2)
    
    1 对于 `<installation_directory>`,指定存储安装程序创建文件的目录名称。
    2 要查看不同的安装详细信息,请指定 `warn`、`debug` 或 `error` 代替 `info`。

    指定目录时:

    • 验证目录是否具有 `execute` 权限。此权限是必需的,才能在安装目录下运行 Terraform 二进制文件。

    • 使用空目录。某些安装资源(例如引导 X.509 证书)的有效期很短,因此您不能重复使用安装目录。如果您想重复使用来自另一个集群安装的单个文件,您可以将它们复制到您的目录中。但是,安装资源的文件名可能会在不同版本之间发生变化。从较早版本的 OpenShift Container Platform 复制安装文件时,请谨慎操作。

  3. 在提示符处提供值

    1. 可选:选择一个 SSH 密钥来访问您的集群机器。

      对于要执行安装调试或灾难恢复的生产 OpenShift Container Platform 集群,请指定您的ssh-agent进程使用的 SSH 密钥。

    2. 选择gcp作为目标平台。

    3. 如果您尚未在主机上为您的 GCP 帐户配置服务帐户密钥,则必须从 GCP 获取它并粘贴文件内容或输入文件的绝对路径。

    4. 选择要在其中预配集群的项目 ID。默认值由您配置的服务帐户指定。

    5. 选择要部署集群的区域。

    6. 选择要部署集群的基础域。基础域对应于您为集群创建的公共 DNS 区域。

    7. 输入集群的描述性名称。如果您提供的名称超过 6 个字符,则生成的集群名称基础架构 ID 仅使用前 6 个字符。

    8. 粘贴来自 Red Hat OpenShift 集群管理器 的拉取密钥

  4. 可选:您可以减少用于安装集群的服务帐户的权限数量。

    • 如果您将Owner角色分配给您的服务帐户,您可以删除该角色并将其替换为Viewer角色。

    • 如果您包含了Service Account Key Admin角色,您可以将其删除。

验证

集群部署成功完成时

  • 终端会显示访问集群的说明,包括指向 Web 控制台的链接以及kubeadmin用户的凭据。

  • 凭据信息也会输出到<installation_directory>/.openshift_install.log

请勿删除安装程序或安装程序创建的文件。两者都是删除集群所必需的。

示例输出
...
INFO Install complete!
INFO To access the cluster as the system:admin user when using 'oc', run 'export KUBECONFIG=/home/myuser/install_dir/auth/kubeconfig'
INFO Access the OpenShift web-console here: https://console-openshift-console.apps.mycluster.example.com
INFO Login to the console with user: "kubeadmin", and password: "password"
INFO Time elapsed: 36m22s
  • 安装程序生成的 Ignition 配置文件包含在 24 小时后过期的证书,这些证书将在那时续期。如果集群在续期证书之前关闭,并且集群在 24 小时后重新启动,则集群会自动恢复过期的证书。例外情况是,您必须手动批准挂起的node-bootstrapper证书签名请求 (CSR) 以恢复 kubelet 证书。有关更多信息,请参阅有关“从过期的控制平面证书中恢复”的文档。

  • 建议您在生成 Ignition 配置文件后 12 小时内使用它们,因为 24 小时证书将在集群安装后 16 到 22 小时之间轮换。在 12 小时内使用 Ignition 配置文件,可以避免在安装过程中证书更新运行时安装失败。

安装 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>

使用 CLI 登录集群

您可以通过导出集群kubeconfig文件以默认系统用户身份登录到集群。kubeconfig文件包含有关集群的信息,CLI 使用这些信息将客户端连接到正确的集群和 API 服务器。该文件特定于一个集群,并在 OpenShift Container Platform 安装期间创建。

先决条件
  • 您已部署 OpenShift Container Platform 集群。

  • 您已安装oc CLI。

步骤
  1. 导出kubeadmin凭据

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig (1)
    1 对于<installation_directory>,请指定您存储安装文件的目录的路径。
  2. 验证您可以使用导出的配置成功运行oc命令

    $ oc whoami
    示例输出
    system:admin
其他资源
  • 有关访问和了解 OpenShift Container Platform Web 控制台的更多详细信息,请参阅访问 Web 控制台

OpenShift Container Platform 的遥测访问

在 OpenShift Container Platform 4.17 中,默认情况下运行的遥测服务(用于提供有关集群运行状况和更新成功的指标)需要互联网访问。如果您的集群已连接到互联网,则遥测会自动运行,并且您的集群会注册到OpenShift 集群管理器

确认您的OpenShift 集群管理器清单正确无误后(通过遥测自动维护或通过 OpenShift 集群管理器手动维护),使用订阅监控来跟踪您在帐户或多集群级别上的 OpenShift Container Platform 订阅。

其他资源

后续步骤