-
Terraform 堆栈:用于配置 OCI 资源以在 OCI 上创建和管理 OpenShift Container Platform 集群的 Terraform 堆栈代码。
-
自定义清单:在 OCI 上安装 OpenShift Container Platform 集群所需的清单文件。
您可以使用Assisted Installer在Oracle®云基础设施 (OCI) 上安装集群。此方法推荐给大多数用户,需要互联网连接。
如果您想手动设置集群或使用其他自动化工具,或者您在断开连接的环境中工作,则可以使用Red Hat基于代理的安装程序进行安装。详情请参见使用基于代理的安装程序在Oracle云基础设施 (OCI) 上安装集群。
您可以在支持专用、混合、公共和多个云环境的Oracle®云基础设施 (OCI) 基础设施上运行集群工作负载。Red Hat和Oracle都测试、验证和支持在OCI上的OpenShift Container Platform集群上运行OCI。
本节说明如何使用Assisted Installer在OCI平台上安装OpenShift Container Platform集群。安装过程会部署云原生组件,例如Oracle Cloud Controller Manager (CCM) 和Oracle Container Storage Interface (CSI),并将您的集群与OCI API资源(例如实例节点、负载均衡器和存储)集成。
安装过程使用Red Hat提供的OpenShift Container Platform discovery ISO镜像,以及OCI提供和维护的脚本和清单。
在Oracle云基础设施 (OCI) 上安装OpenShift Container Platform之前,您必须考虑以下配置选项。
OpenShift Container Platform和Oracle云基础设施 (OCI) 之间的集成已在虚拟机 (VM) 和裸机 (BM) 机器上获得认证。使用iSCSI引导驱动器的裸机安装需要一个辅助vNIC,该vNIC会在Oracle提供的Terraform堆栈中自动创建。
在创建虚拟机 (VM) 或裸机 (BM) 机器之前,您必须确定相关的OCI形状。详情请参见以下资源
为确保在 OCI 上运行的集群工作负载获得最佳性能,请确保块卷的卷性能单元 (VPU) 规模适合您的工作负载。以下列表提供了选择特定性能需求所需的 VPU 的指导
测试或概念验证环境:100 GB 和 20 到 30 个 VPU。
基本环境:500 GB 和 60 个 VPU。
繁重的生产环境:超过 500 GB 和 100 个或更多 VPU。
考虑预留额外的 VPU 以提供足够的容量用于更新和扩展活动。有关 VPU 的更多信息,请参阅 卷性能单元(Oracle 文档)。
查找 OpenShift Container Platform 节点的计算实例 CPU、内存、VPU 和卷大小的推荐值。详情请参阅 OpenShift Container Platform 在 OCI 节点上的实例大小建议(Oracle 文档)。
以下是使用辅助安装程序在连接环境中在 OCI 上安装集群的过程
在 OCI 控制台中,配置一个 OCI 帐户来托管集群。
在现有区室下创建一个新的子区室。
创建一个新的对象存储桶或使用 OCI 提供的一个。
下载本地存储的堆栈文件模板。
在辅助安装程序控制台中,设置集群。
输入集群配置。
生成并下载 discovery ISO 镜像。
在 OCI 控制台中,创建基础设施。
将 discovery ISO 镜像上传到 OCI 存储桶。
为 ISO 镜像创建预授权请求 (PAR)。
上传堆栈文件模板,并使用它来创建和应用堆栈。
从堆栈复制自定义清单 YAML 文件。
在辅助安装程序控制台中,完成集群安装。
为集群节点设置角色。
上传 Oracle 提供的清单。
安装集群。
提供 OCI 资源配置的步骤仅作为示例。您也可以选择通过其他方法创建所需资源;脚本只是一个示例。使用您提供的基础设施安装集群需要了解云提供商和 OpenShift Container Platform 上的安装过程。您可以访问 OCI 配置来完成这些步骤,或者使用这些配置来模拟您自己的自定义脚本。 |
在使用辅助安装程序安装 OpenShift Container Platform 之前,请在 OCI 环境中创建必要的资源并下载配置文件。
您拥有一个 OCI 帐户来托管集群。
如果您使用防火墙并且计划使用遥测服务,则已将防火墙配置为允许 OpenShift Container Platform 访问所需的站点。
使用管理员权限登录您的 Oracle Cloud Infrastructure (OCI) 帐户。
通过定义 云帐户和资源(Oracle 文档) 来配置帐户。确保您创建了以下资源
创建一个子区室,用于组织、限制访问和设置 OCI 资源的使用限制。有关完整步骤,请参阅 创建区室(Oracle 文档)。
创建一个新的对象存储桶,您将把 discovery ISO 镜像上传到其中。有关完整步骤,请参阅 创建对象存储桶(Oracle 文档)。
从 oracle-quickstart/oci-openshift
存储库下载最新版本的 create-cluster-vX.X.X.zip
配置文件。此文件提供了集群的基础设施,并包含以下配置
Terraform 堆栈:用于配置 OCI 资源以在 OCI 上创建和管理 OpenShift Container Platform 集群的 Terraform 堆栈代码。
自定义清单:在 OCI 上安装 OpenShift Container Platform 集群所需的清单文件。
要对清单进行任何更改,您可以克隆整个 Oracle GitHub 存储库并直接访问 |
详情请参阅 配置文件(Oracle 文档)。
在辅助安装程序 Web 控制台中创建集群配置并生成 discovery ISO 镜像。
您已在 OCI 上创建了一个子区室和一个对象存储桶。详情请参阅准备 OCI 环境。
您已查看有关 OpenShift Container Platform 安装和更新过程的详细信息。
设置集群详细信息。
使用您的凭据登录 辅助安装程序 Web 控制台。
在Red Hat OpenShift 磁贴中,选择OpenShift。
在Red Hat OpenShift Container Platform 磁贴中,选择创建集群。
在集群类型页面上,向下滚动到云选项卡的末尾,然后选择Oracle Cloud Infrastructure(虚拟机)。
在创建 OpenShift 集群页面上,选择交互式磁贴。
在集群详细信息页面上,完成以下字段
字段 | 所需操作 |
---|---|
集群名称 |
指定集群的名称,例如 |
基础域名 |
指定集群的基础域名,例如 这必须与 OCI 中的区域 DNS 服务器的值相同。 |
OpenShift 版本 |
* 仅对于虚拟机上的安装,请指定 * 对于包括裸机服务器的安装,请指定 |
CPU 架构 |
指定 |
与外部合作伙伴平台集成 |
指定 指定此值后,将默认选中包含自定义清单复选框,并且向导中会添加自定义清单页面。 |
保留其余字段的默认设置,然后单击下一步。
在操作员页面上,单击下一步。
使用 Assisted Installer 创建 OpenShift Container Platform 集群的详细信息时,您需要在 Terraform 堆栈中指定这些详细信息。堆栈是 OCI 的一项功能,它可以自动配置在 OCI 上安装 OpenShift Container Platform 集群所需的所有必要的 OCI 基础设施资源。
您已将 discovery ISO 映像下载到本地目录。有关详细信息,请参阅“使用 Assisted Installer 生成与 OCI 兼容的 discovery ISO 映像”。
您已将 Terraform 堆栈模板下载到本地目录。有关详细信息,请参阅“准备 OCI 环境”。
将 discovery ISO 映像从您的本地驱动器上传到您创建的新对象存储桶。有关完整步骤,请参阅将对象存储对象上传到存储桶(Oracle 文档)。
找到上传的 discovery ISO,然后完成以下步骤
从相邻的选项菜单中为 ISO 创建预授权请求 (PAR)。
复制生成的 URL,并在下一步中将其用作 OpenShift 映像源 URI。
有关完整步骤,请参阅在对象存储中创建预授权请求(Oracle 文档)。
创建并应用 Terraform 堆栈
Terraform 堆栈包含用于创建集群资源和自定义清单的文件。堆栈还包含一个脚本,当您应用堆栈时,该脚本将创建 OCI 资源,例如 DNS 记录、实例等。有关资源列表,请参阅OCI 上 OpenShift 的 Terraform 定义资源自述文件。 |
将 Terraform 堆栈模板create-cluster-vX.X.X.zip上传到新的对象存储桶。
完成堆栈信息,然后单击**下一步**。
|
单击**应用**以应用堆栈。
从 Terraform 堆栈的**输出**页面复制dynamic_custom_manifest.yml
文件。
YAML 文件包含所有必需的清单,这些清单已连接并使用配置值预先格式化。有关详细信息,请参阅自定义清单自述文件。 |
在您准备 Oracle® Cloud Infrastructure (OCI) 资源并将 OpenShift Container Platform 自定义清单配置文件上传到 OCI 后,您必须完成 Assisted Installer 上剩余的集群安装步骤,然后才能创建 OCI 实例。这些步骤包括分配节点角色和添加自定义清单。
主机发现后,所有节点的角色默认显示为**自动分配**。将每个节点的角色更改为**控制平面节点**或**工作节点**。
您已在 OCI 中创建并应用了 Terraform 堆栈。有关详细信息,请参阅“为您的集群准备 OCI 基础设施”。
在 Assisted Installer 用户界面中,转到**主机发现**页面。
在**角色**列下,为每个目标主机名选择**控制平面节点**或**工作节点**。然后单击**下一步**。
|
接受**存储**和**网络**页面的默认设置。然后单击**下一步**。
添加 Oracle 提供的强制性自定义清单。有关详细信息,请参阅自定义清单(Oracle 文档)。
您已从 OCI 中的 Terraform 堆栈复制dynamic_custom_manifest.yml
文件。有关详细信息,请参阅“为您的集群准备 OCI 基础设施”。
在**自定义清单**页面上的**文件夹**字段中,选择manifests
。这是您要保存自定义清单文件的 Assisted Installer 文件夹。
在**文件名**字段中,输入文件名,例如dynamic_custom_manifest.yml
。
粘贴您从 OCI 复制的dynamic_custom_manifest.yml
文件的内容
在**内容**部分,单击**粘贴内容**图标。
如果您使用的是 Firefox,请单击**确定**关闭对话框,然后按Ctrl+V。否则,请跳过此步骤。
单击**下一步**保存自定义清单。
在**查看和创建**页面上,单击**安装集群**以在 OCI 上创建您的 OpenShift Container Platform 集群。
集群安装和初始化操作完成后,Assisted Installer 将指示集群安装操作已完成。有关更多信息,请参阅 OpenShift Container Platform 的 Assisted Installer 文档中的“完成安装”部分。
验证您的集群是否已安装并在 Oracle® Cloud Infrastructure (OCI) 上有效运行。
从Red Hat Hybrid Cloud Console,转到**集群 > Assisted 集群**,然后选择您集群的名称。
在**安装进度**页面上,检查安装进度条是否为 100%,并显示指示安装已成功完成
的消息。
在**主机清单**下,确认所有控制平面和计算节点的状态均为已安装
。
OpenShift Container Platform 将其中一个控制平面节点指定为引导虚拟机,无需单独的引导机器。 |
单击 Web 控制台 URL,以访问 OpenShift Container Platform Web 控制台。
从菜单中,选择**计算 > 节点**。
从**节点**表中找到您的节点。
在**终端**选项卡中,验证 iSCSI 是否出现在序列号旁边。
在**概述**选项卡中,检查您的节点是否具有**就绪**状态。
选择**YAML**选项卡。
检查labels
参数,并验证列出的标签是否适用于您的配置。例如,标签topology.kubernetes.io/region=us-sanjose-1
指示节点部署在哪个OCI区域。
如果您在使用Assisted Installer在Oracle® Cloud Infrastructure (OCI)上安装OpenShift Container Platform集群时遇到问题,请阅读以下部分以排除常见问题。
此问题被归类为警告
,因为通过使用OCI创建堆栈,您创建了一个默认包含3个计算节点的池,这些节点会自动添加为Ingress负载均衡器的后端侦听器。默认情况下,OpenShift Container Platform部署2个路由器pod,它们基于OpenShift Container Platform清单文件中的默认值。出现警告
是因为可用路由器pod的数量(两个)与三个计算节点的数量不匹配。
警告
消息示例您无需修改Ingress负载均衡器配置。您可以将Ingress负载均衡器指向在OpenShift Container Platform集群上运行的特定计算节点。为此,请在OpenShift Container Platform上使用放置机制(例如注释)以确保路由器pod仅在您最初在Ingress负载均衡器上配置为后端侦听器的计算节点上运行。
在尝试在OCI上创建堆栈时,您发现作业的日志部分输出错误消息。例如:
Error: 400-InvalidParameter, DNS Label oci-demo does not follow Oracle requirements
Suggestion: Please update the parameter(s) in the Terraform config as per error message DNS Label oci-demo does not follow Oracle requirements
Documentation: https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_vcn
转到混合云控制台上的使用Assisted Installer安装OpenShift页面,并检查集群详细信息步骤中的集群名称字段。删除任何特殊字符(例如连字符(-
)),因为这些特殊字符与OCI命名约定不兼容。例如,将oci-demo
更改为ocidemo
。