4.3. 创建用于在私有云设备上安装集群的配置文件


您需要创建 install-config.yamlagent-config.yaml 配置文件,以便您可以使用基于 Agent 的安装程序来生成可引导 ISO 镜像。基于代理的安装包含一个可引导 ISO,它带有辅助发现代理和辅助服务。这两个组件都需要执行集群安装,但后者的组件仅在其中一个主机上运行。

注意

您还可以使用基于代理的安装程序来生成或接受 Zero Touch Provisioning (ZTP)自定义资源。

先决条件

  • 您可以参阅有关 OpenShift Container Platform 安装和更新流程的详细信息。
  • 您可以阅读有关选择集群安装方法的文档,并为用户准备相关的环境。
  • 您已阅读了"准备基于代理的安装程序"文档。
  • 您已从 Red Hat Hybrid Cloud Console 下载了基于代理的安装程序和命令行界面 (CLI)。
  • 如果要在断开连接的环境中安装,您已准备了环境中的镜像 registry,并将发行镜像 mirror 到 registry。

    重要

    运行以下命令,检查 openshift-install 二进制版本是否与本地镜像容器 registry 以及共享 registry (如 Red Hat Quay)相关:

    $ ./openshift-install version
    Copy to Clipboard Toggle word wrap

    共享 registry 二进制文件的输出示例

    ./openshift-install 4.19.0
    built from commit ae7977b7d1ca908674a0d45c5c243c766fa4b2ca
    release image registry.ci.openshift.org/origin/release:4.19ocp-release@sha256:0da6316466d60a3a4535d5fed3589feb0391989982fba59d47d4c729912d6363
    release architecture amd64
    Copy to Clipboard Toggle word wrap

  • 已使用管理员权限登录到 OpenShift Container Platform。

流程

  1. 运行以下命令,创建一个安装目录来存储配置文件:

    $ mkdir ~/<directory_name>
    Copy to Clipboard Toggle word wrap
  2. 配置 install-config.yaml 配置文件,以满足您的机构的需求,并将文件保存到您创建的目录中。

    设定外部平台的 install-config.yaml 文件

    # install-config.yaml
    apiVersion: v1
    baseDomain: <base_domain> 
    1
    
    networking:
      clusterNetwork:
      - cidr: 10.128.0.0/14
        hostPrefix: 23
      network type: OVNKubernetes
      machineNetwork:
      - cidr: <ip_address_from_cidr> 
    2
    
      serviceNetwork:
      - 172.30.0.0/16
    compute:
      - architecture: amd64 
    3
    
      hyperthreading: Enabled
      name: worker
      replicas: 0
    controlPlane:
      architecture: amd64 
    4
    
      hyperthreading: Enabled
      name: master
      replicas: 3
    platform:
       external:
        platformName: oci 
    5
    
        cloudControllerManager: External
    sshKey: <public_ssh_key> 
    6
    
    pullSecret: '<pull_secret>' 
    7
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    云供应商的基域。
    2
    CIDR 分配给网络上操作的资源和组件的虚拟网络 (VCN) 的 IP 地址。
    3 4
    根据您的基础架构,您可以选择 arm64amd64
    5
    OCI 设置为外部平台,以便 OpenShift Container Platform 能够与 OCI 集成。
    6
    指定 SSH 公钥。
    7
    为 OpenShift Container Platform 组件和服务(如 Quay.io)下载容器镜像时,您需要验证目的的 pull secret。请参阅通过 Red Hat Hybrid Cloud Console 安装 OpenShift Container Platform 4
  3. 在本地系统上创建一个名为 openshift 的目录。这必须是安装目录的子目录。

    重要

    不要将 install-config.yamlagent-config.yaml 配置文件移到 openshift 目录中。

  4. 配置 Oracle 自定义清单文件。

    1. 进入 OpenShift Cluster Setup with Agent Based Installer on Private Cloud Appliance (Oracle 文档) 中的 "Prepare the OpenShift Master Images" 部分。
    2. oci-ccm.ymloci-csi.ymlmachineconfig-ccm.yml 文件复制到 openshift 目录中。
    3. 编辑 oci-ccm.ymloci-csi.yml 文件,以指定比较 Oracle® 云标识符(OCID)、VCN OCID、负载均衡器中的子网 OCID 和 c3-cert.pem 部分。
  5. 配置 agent-config.yaml 配置文件,以满足您的机构要求。

    IPv4 网络的 agent-config.yaml 文件示例。

    apiVersion: v1beta1
    metadata:
      name: <cluster_name> 
    1
    
      namespace: <cluster_namespace> 
    2
    
    rendezvousIP: <ip_address_from_CIDR> 
    3
    
    bootArtifactsBaseURL: <server_URL> 
    4
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    您在 DNS 记录中指定的集群名称。
    2
    OpenShift Container Platform 上集群的命名空间。
    3
    如果您使用 IPv4 作为网络 IP 地址格式,请确保将 rendezvousIP 参数设置为在网络上分配的 VCN 的无类别域间路由 (CIDR) 方法的 IPv4 地址。另外,请确保使用 ISO 引导的实例池中至少有一个实例与您为 rendezvousIP 参数设置的 IP 地址值匹配。
    4
    要上传 rootfs 镜像的服务器的 URL。这个参数只适用于断开连接的环境。
  6. 通过在安装目录中输入以下命令来生成最小 ISO 镜像,它排除 rootfs 镜像:

    $ ./openshift-install agent create image --log-level debug
    Copy to Clipboard Toggle word wrap

    该命令还会完成以下操作:

    • 创建子目录 ./<installation_directory>/auth directory::将 kubeadmin-passwordkubeconfig 文件放在 子目录中。
    • 根据您在 agent-config.yaml 配置文件中指定的 IP 地址,创建一个 rendezvousIP 文件。
    • 可选:您对 agent-config.yamlinstall-config.yaml 配置文件所做的任何修改都会导入到 Zero Touch Provisioning (ZTP)自定义资源。

      重要

      基于代理的安装程序使用 Red Hat Enterprise Linux CoreOS (RHCOS)。在后续步骤中提到的 rootfs 镜像是引导、恢复和修复您的操作系统所必需的。

  7. 断开连接的环境:将 rootfs 镜像上传到 web 服务器。

    1. 进入创建最小 ISO 镜像时生成的 ./<installation_directory>/boot-artifacts 目录。
    2. 使用您首选的 Web 服务器,如任何 Hypertext 传输协议守护进程(httpd),将 rootfs 镜像上传到 agent-config.yaml 文件的 bootArtifactsBaseURL 参数中指定的位置。

      例如,如果 bootArtifactsBaseURL 参数状态 http://192.168.122.20,您可以将生成的 rootfs 镜像上传到此位置,以便基于代理的安装程序可以从 http://192.168.122.20/agent.x86_64-rootfs.img 访问镜像。在基于代理的安装程序为外部平台引导最小 ISO 后,基于代理的安装程序将 rootfs 镜像从 http://192.168.122.20/agent.x86_64-rootfs.img 位置下载到系统内存中。

      注意

      基于代理的安装程序还将 bootArtifactsBaseURL 的值添加到最小 ISO 镜像的配置中,以便在 Operator 引导集群节点时,基于代理的安装程序会将 rootfs 镜像下载到系统内存中。

      重要

      考虑超过 1 GB 的完整 ISO 镜像包括 rootfs 镜像。镜像大于最小 ISO 镜像,该镜像通常小于 150 MB。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat