5.5. 注册新集群


要使用 API 注册新集群定义,请使用 /v2/clusters 端点。

以下参数是必需的:

  • name
  • openshift-version
  • pull_secret
  • cpu_architecture

有关注册新集群时可设置的字段的详情,请参阅 API viewer 中的 cluster-create-params 模型。设置 olm_operators 字段时,请参阅 其它资源,以了解安装 Operator 的详情。

先决条件

  • 您已生成了一个有效的 API_TOKEN。令牌每 15 分钟过期一次。
  • 您已下载了 pull secret。
  • 可选: 您已将 pull secret 分配给 $PULL_SECRET 变量。

流程

  1. 刷新 API 令牌:

    $ source refresh-token
    Copy to Clipboard Toggle word wrap
  2. 使用以下方法之一注册新集群:

    • 在请求中引用 pull secret 文件:

      $ curl -s -X POST https://api.openshift.com/api/assisted-install/v2/clusters \
        -H "Authorization: Bearer ${API_TOKEN}" \
        -H "Content-Type: application/json" \
        -d "$(jq --null-input \
            --slurpfile pull_secret ~/Downloads/pull-secret.txt ' \
        { \
            "name": "testcluster", \
            "openshift_version": "4.16", \ 
      1
      
            "control_plane_count": "<number>", \ 
      2
      
            "cpu_architecture" : "<architecture_name>", \ 
      3
      
            "base_dns_domain": "example.com", \
            "pull_secret": $pull_secret[0] | tojson \
        } \
        ')" | jq '.id'
      Copy to Clipboard Toggle word wrap
    • 将配置写入 JSON 文件,然后在请求中引用它:

      $ cat << EOF > cluster.json
      {
        "name": "testcluster",
        "openshift_version": "4.16", 
      1
      
        "control_plane_count": "<number>",
      2
      
        "base_dns_domain": "example.com",
        "network_type": "examplenetwork",
        "cluster_network_cidr":"11.111.1.0/14"
        "cluster_network_host_prefix": 11,
        "service_network_cidr": "111.11.1.0/16",
        "api_vips":[{"ip": ""}],
        "ingress_vips": [{"ip": ""}],
        "vip_dhcp_allocation": false,
        "additional_ntp_source": "clock.redhat.com,clock2.redhat.com",
        "ssh_public_key": "$CLUSTER_SSHKEY",
        "pull_secret": $PULL_SECRET
      }
      EOF
      Copy to Clipboard Toggle word wrap
      $ curl -s -X POST "https://api.openshift.com/api/assisted-install/v2/clusters" \
        -d @./cluster.json \
        -H "Content-Type: application/json" \
        -H "Authorization: Bearer $API_TOKEN" \
        | jq '.id'
      Copy to Clipboard Toggle word wrap
      1 1
      请注意以下几点:
      • 要安装最新的 OpenShift 版本,请使用 x.y 格式,如对于版本 4.16.10,使用 4.16。要安装特定的 OpenShift 版本,请使用 x.y.z 格式,如 4.16.3 版本。
      • 要安装多架构计算集群,请为特定版本添加 4.16 -multi 扩展,如 4.16-multi
      • 如果您要从 iSCSI 驱动器引导,请输入 OpenShift Container Platform 版本 4.15 或更高版本。
      2 2
      (可选)将单节点 OpenShift 集群的 control plane 节点数量设置为 1,对于带有 Arbiter 集群的双节点 OpenShift,或 345 ( 用于多节点 OpenShift Container Platform 集群)设置为 2 个或更多节点。如果省略此设置,则 Assisted Installer 会将 3 设置为默认值。
      注意
      • control_plane_count 字段替换 high_availability_mode 字段,该字段已弃用。详情请参阅 API 弃用通知
      • 目前,IBM Z® 和 IBM Power® 平台上不支持单节点 OpenShift。
      • Assisted Installer 在带有 x86_64 CPU 架构的裸机或用户管理的网络平台上支持 OpenShift Container Platform 4.18 及之后的版本中的 45 control plane 节点。详情请参阅关于指定 control plane 节点数量
      • Assisted Installer 支持 OpenShift Container Platform 4.19 及之后的版本中的 2 个 control plane 节点,用于带有 Arbiter 集群拓扑的 Two-Node OpenShift。如果集群的 control plane 节点数量为 2,则必须至少有一个额外的仲裁程序主机。详情请参阅 带有 Arbiter 资源要求的两个节点 OpenShift
      3
      有效值为 x86_64,arm64,ppc64le,s390x, 或 multi。为 多架构 计算集群指定 multi。
  3. 将返回的 cluster_id 分配给 CLUSTER_ID 变量,并导出它:

    $ export CLUSTER_ID=<cluster_id>
    Copy to Clipboard Toggle word wrap
    注意

    如果关闭终端会话,则需要在新的终端会话中再次导出 CLUSTER_ID 变量。

  4. 检查新集群的状态:

    $ curl -s -X GET "https://api.openshift.com/api/assisted-install/v2/clusters/$CLUSTER_ID" \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer $API_TOKEN" \
      | jq
    Copy to Clipboard Toggle word wrap

注册新的集群定义后,为集群创建基础架构环境。

注意

在创建基础架构环境前,您无法在 Assisted Installer 用户界面中看到集群配置设置。

5.5.1. 安装 Operator

您可以在安装过程中将 Operator 添加到集群来自定义部署。您可以单独安装一个或多个 Operator,或添加组成捆绑包的一组 Operator。如果需要高级选项,请在安装集群后添加 Operator。

此步骤是可选的。

5.5.1.1. 安装独立 Operator

在选择用于安装的 Operator 前,您可以验证辅助安装程序中有哪些 Operator 可用。您还可以检查是否支持特定 OCP 版本、CPU 架构或平台。

您可以使用 assisted-service/v2/clusters/{cluster_id} 端点的 POST 方法以及设置 olm_operators 参数来设置所需的 Operator 定义。

Assisted Installer 允许您安装以下独立 Operator。有关可作为捆绑包的一部分选择的其他 Operator,请参阅 安装捆绑包 Operator

  • OpenShift Virtualization Operator (cnv)

    注意
    • 目前,IBM Z® 和 IBM Power® 不支持 OpenShift Virtualization。
    • OpenShift Virtualization Operator 需要后端存储,并可能会根据以下条件在后台自动激活存储 Operator:

      • None - 如果 CPU 架构是 ARM64,则不会激活存储 Operator。
      • LVM Storage - 对于任何其他 CPU 架构上的单节点 OpenShift 集群,部署 OpenShift Container Platform 4.12 或更高版本。
      • Local Storage Operator (LSO)- 对于所有其他部署。
  • Migration Toolkit for Virtualization Operator (mtv)

    注意

    指定 Migration Toolkit for Virtualization (MTV) Operator 会自动激活 OpenShift Virtualization Operator。对于单节点 OpenShift 安装,辅助安装程序也会激活 LVM Storage Operator。

  • multicluster engine Operator (mce)

    注意

    没有 OpenShift Data Foundation 的情况下部署多集群引擎会导致以下存储配置:

    • 多节点集群 :没有配置存储。您必须在安装后配置存储。
    • 单节点 OpenShift:安装了 LVM 存储。
  • OpenShift Data Foundation Operator (odf)
  • Logical Volume Manager Storage Operator (lvm)
  • OpenShift AI Operator (openshift-ai)
  • OpenShift 沙盒容器 Operator (osc)

    重要

    OpenShift 沙盒容器 Operator 集成到 Assisted Installer 中只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

    有关红帽技术预览功能支持范围的详情,请参考 https://access.redhat.com/support/offerings/techpreview/

  • Kubernetes NMState Operator (nmstate)

    注意

    目前,您无法在 Nutanix 或 Oracle Cloud Infrastructure (OCI)第三方平台上安装 Kubernetes NMState Operator。

  • AMD GPU Operator (amd-gpu)

    注意

    安装 AMD GPU Operator 会自动激活内核模块管理 Operator。

  • 内核模块管理 Operator (kmm)
  • Node Feature Discovery Operator (node-feature-discovery)
  • 自助服务修复(自节点-remediation)
  • NVIDIA GPU Operator (nvidia-gpu)

    注意

    安装 NVIDIA GPU Operator 会自动激活 Node Feature Discovery Operator。

重要

OpenShift AI、AMD GPU、内核模块管理、Node Feature Discovery、自助节点修复和 NVIDIA GPU Operator 集成只是一个技术预览功能。Developer Preview(开发人员预览)功能不被红帽支持,其功能可能并不完善且不是生产环境就绪。不要将开发人员预览功能用于生产环境或业务关键型工作负载。开发人员预览功能可以在之前可能地包含在红帽产品产品中提前访问即将推出的产品功能,使客户能够测试功能并在开发过程中提供反馈。这些功能可能没有任何文档,可能会随时被更改或删除,测试也会受到限制。红帽可能会提供在没有关联 SLA 的情况下提交对开发人员预览功能的反馈。

先决条件

流程

  1. 可选:运行以下命令,检查辅助安装程序中可用的 Operator:

    $ curl -s "https://api.openshift.com/api/assisted-install/v2/supported-operators" -H "Authorization: Bearer ${API_TOKEN}" | jq .
    Copy to Clipboard Toggle word wrap

    输出示例

    [
      "node-feature-discovery",
      "openshift-ai",
      "osc",
      "self-node-remediation",
      "mtv",
      "odf",
      "cnv",
      "mce",
      "pipelines",
      "servicemesh",
      "node-healthcheck",
      "node-maintenance",
      "lso",
      "fence-agents-remediation",
      "kube-descheduler",
      "serverless",
      "nvidia-gpu",
      "authorino",
      "nmstate",
      "amd-gpu",
      "kmm",
      "lvm"
    ]
    Copy to Clipboard Toggle word wrap

  2. 运行以下命令,检查 Operator 是否支持指定的 OCP 版本、CPU 架构或平台:

    $ curl -s "https://api.openshift.com/api/assisted-install/v2/support-levels/features?openshift_version=4.13&cpu_architecture=x86_64&platform_type=baremetal" -H "Authorization: Bearer ${API_TOKEN}" | jq .features.SNO 
    1
     
    2
    Copy to Clipboard Toggle word wrap
    1
    按如下方式替换属性:
    • 对于 openshift_version,请指定 OpenShift Container Platform 版本号。此属性是必需的。
    • 对于 cpu_architecture,指定 x86_64,aarch64,arm64,ppc64le,s390x, 或 multi。此属性是可选的。
    • 对于 platform_type,指定 baremetalnonenutanixvsphere 或外部。此属性是可选的。
    2
    对于 Operator,为节点功能发现指定 .NODE-FEATURE-DISCOVERY, .OPENSHIFT-AI for OpenShift AI, .OSC for OpenShift 沙盒容器 .SELF-NODE-REMEDIATION for Self Node Remediation, .MTV for Migration Toolkit for Virtualization, .ODF for OpenShift Data Foundation, . .CNV for OpenShift Virtualization, .MCE for multicluster engine, .PIPELINES for OpenShift Pipelines, .SERVICEMESH for OpenShift Service Mesh, .NODE-HEALTHCHECK for Node Health Check, .NODE -MAINTENCE for Node Maintenance, .LSO for Local Storage Operator, .FENCE-AGENTS-REMEDIATION for Fence Agents 修复, .KUBE-DESCHEDULER for Kube Descheduler, .SERVERLESS for OpenShift Serverless, .NVIDIA-GPU for NVIDIA GPU, .AUTHORINO for Authorino, .NMSTATE for NMState, .AMD-GPU for AMD GPU, .KMM' for Kernel Module Management, 或 .LVM 用于 LVM 存储。

    输出示例

    "supported" 
    1
    Copy to Clipboard Toggle word wrap

    1
    可能的状态是"支持"、"dev-preview"、"tech-preview"和"不可用"。
  3. 运行以下命令,检查指定的 OCP 版本、CPU 架构或平台的完整列表:

    $ curl -s "https://api.openshift.com/api/assisted-install/v2/support-levels/features?openshift_version=4.13&cpu_architecture=x86_64&platform_type=baremetal" -H "Authorization: Bearer ${API_TOKEN}" | jq
    Copy to Clipboard Toggle word wrap

    输出示例

    {
      "features": {
        "AMD_GPU": "dev-preview",
        "AUTHORINO": "dev-preview",
        "CLUSTER_MANAGED_NETWORKING": "supported",
        "CNV": "supported",
        "CUSTOM_MANIFEST": "supported",
        "DUAL_STACK": "supported",
        "DUAL_STACK_VIPS": "supported",
        "FENCE_AGENTS_REMEDIATION": "dev-preview",
        "FULL_ISO": "supported",
        "KMM": "dev-preview",
        "KUBE_DESCHEDULER": "dev-preview",
        "LSO": "supported",
        "LVM": "supported",
        "MCE": "supported",
        "MINIMAL_ISO": "supported",
        "MTV": "unavailable",
        "NMSTATE": "supported",
        "NODE_FEATURE_DISCOVERY": "dev-preview",
        "NODE_HEALTHCHECK": "dev-preview",
        "NODE_MAINTENANCE": "dev-preview",
        "NON_STANDARD_HA_CONTROL_PLANE": "unavailable",
        "NVIDIA_GPU": "dev-preview",
        "ODF": "supported",
        "OPENSHIFT_AI": "dev-preview",
        "OSC": "tech-preview",
        "OVN_NETWORK_TYPE": "supported",
        "PIPELINES": "dev-preview",
        "PLATFORM_MANAGED_NETWORKING": "unsupported",
        "SDN_NETWORK_TYPE": "supported",
        "SELF_NODE_REMEDIATION": "dev-preview",
        "SERVERLESS": "dev-preview",
        "SERVICEMESH": "dev-preview",
        "SINGLE_NODE_EXPANSION": "supported",
        "SKIP_MCO_REBOOT": "unavailable",
        "SNO": "supported",
        "USER_MANAGED_LOAD_BALANCER": "unavailable",
        "USER_MANAGED_NETWORKING": "supported",
        "VIP_AUTO_ALLOC": "dev-preview"
      }
    }
    Copy to Clipboard Toggle word wrap

  4. 运行以下命令指定要安装的 Operator:

    $ curl -s -X POST https://api.openshift.com/api/assisted-install/v2/clusters \
    -H "Authorization: Bearer ${API_TOKEN}" \
    -H "Content-Type: application/json" \
    -d "$(jq --null-input \
       --slurpfile pull_secret ~/Downloads/pull-secret.txt '
    {
       "name": "testcluster",
       "openshift_version": "4.15",
       "cpu_architecture" : "x86_64",
       "base_dns_domain": "example.com",
       "olm_operators": [
      { "name": "mce" } 
    1
    
      ,
      { "name": "odf" }
      ,
     { "name": "amd-gpu" }
        ]
       "pull_secret": $pull_secret[0] | tojson
    }
    ')" | jq '.id'
    Copy to Clipboard Toggle word wrap
    1
    列出要安装的 Operator。为 OpenShift Virtualization 指定 cnv for OpenShift Virtualization, mtv for Virtualization, mce for multicluster engine, odf for Red Hat OpenShift Data Foundation, lvm for Logical Volume Manager Storage, openshift-ai for OpenShift AI, osc for OpenShift 沙盒容器, nmstate for Kubernetes NMState, amd-gpu for AMD GPU, kmm for Kernel Module Management, node-feature-discovery for Node Feature Discovery, nvidia-gpu for NVIDIA and self-node-remediation 用于自助服务修复。安装 Operator 会自动激活任何依赖的 Operator。

5.5.1.2. 安装捆绑包 Operator

虽然您无法直接通过 API 安装 Operator 捆绑包,但您可以验证哪些 Operator 包含在捆绑包中,并单独指定每个 Operator。

Assisted Installer 目前支持以下 Operator 捆绑包:

  • Virtualization Operator 捆绑包 - 包含以下 Operator:

    • kube Descheduler Operator (kube-descheduler)
    • Node Maintenance Operator {node-maintenance}
    • Migration Toolkit for Virtualization Operator (mtv)
    • Kubernetes NMState Operator (nmstate)
    • 隔离代理修复 Operator (fence-agents-remediation)
    • OpenShift Virtualization Operator (cnv)
    • Node Health Check Operator (node-healthcheck)
    • Local Storage Operator (LSO) Operator (lso)
  • OpenShift AI Operator 捆绑包 - 包含以下 Operator:

    • Kubernetes Authorino Operator (作者)
    • OpenShift Data Foundation Operator (odf)
    • OpenShift AI Operator (openshift-ai)
    • AMD GPU Operator (amd-gpu)
    • Node Feature Discovery Operator (node-feature-discovery)
    • NVIDIA GPU Operator (nvidia-gpu)
    • OpenShift Pipelines Operator (管道)
    • OpenShift Service Mesh Operator (servicemesh)
    • OpenShift Serverless Operator (无服务器)
    • 内核模块管理 Operator (kmm)
重要

在 Assisted Installer 中引入 Virtualization 和 OpenShift AI Operator 捆绑包只是一个技术预览功能。Developer Preview(开发人员预览)功能不被红帽支持,其功能可能并不完善且不是生产环境就绪。不要将开发人员预览功能用于生产环境或业务关键型工作负载。开发人员预览功能可以在之前可能地包含在红帽产品产品中提前访问即将推出的产品功能,使客户能够测试功能并在开发过程中提供反馈。这些功能可能没有任何文档,可能会随时被更改或删除,测试也会受到限制。红帽可能会提供在没有关联 SLA 的情况下提交对开发人员预览功能的反馈。

先决条件

流程

  1. 可选:运行以下命令来检查辅助安装程序中可用的 Operator 捆绑包:

    $ curl -s "https://api.openshift.com/api/assisted-install/v2/operators/bundles" -H "Authorization: Bearer ${API_TOKEN}" | jq .
    Copy to Clipboard Toggle word wrap

    输出示例

    [
      {
        "description": "Run virtual machines alongside containers on one platform.",
        "id": "virtualization",
        "operators": [
          "kube-descheduler",
          "node-maintenance",
          "mtv",
          "nmstate",
          "fence-agents-remediation",
          "cnv",
          "node-healthcheck",
        ],
        "title": "Virtualization"
      },
      {
        "description": "Train, serve, monitor and manage AI/ML models and applications using GPUs.",
        "id": "openshift-ai",
        "operators": [
          "authorino",
          "odf",
          "openshift-ai",
          "amd-gpu",
          "node-feature-discovery",
          "nvidia-gpu",
          "pipelines",
          "servicemesh",
          "serverless",
          "kmm"
        ],
        "title": "OpenShift AI"
      }
    ]
    Copy to Clipboard Toggle word wrap

  2. 可选:运行以下命令来检查哪些 Operator 与一个特定的捆绑包关联:

    $ curl -s "https://api.openshift.com/api/assisted-install/v2/operators/bundles/virtualization" -H "Authorization: Bearer ${API_TOKEN}" | jq . 
    1
    Copy to Clipboard Toggle word wrap
    1
    为 Virtualization Operator 捆绑包指定 虚拟化,或为 OpenShift AI Operator 捆绑包指定 openshift-ai。示例指定了 Virtualization Operator 捆绑包。

    输出示例

    {
      "description": "Run virtual machines alongside containers on one platform.",
      "id": "virtualization",
      "operators": [
        "kube-descheduler",
        "node-maintenance",
        "mtv",
        "nmstate",
        "fence-agents-remediation",
        "cnv",
        "node-healthcheck",
      ],
      "title": "Virtualization"
    }
    Copy to Clipboard Toggle word wrap

  3. 运行以下命令,安装与捆绑包关联的 Operator:

    $ curl -s -X POST https://api.openshift.com/api/assisted-install/v2/clusters \
    -H "Authorization: Bearer ${API_TOKEN}" \
    -H "Content-Type: application/json" \
    -d "$(jq --null-input \
       --slurpfile pull_secret ~/Downloads/pull-secret.txt '
    {
       "name": "testcluster",
       "openshift_version": "4.15",
       "cpu_architecture" : "x86_64",
       "base_dns_domain": "example.com",
       "olm_operators": [ 
    1
    
      { "name": "node-healthcheck" }
    
      { "name": "fence-agents-remediation" }
    
      { "name": "kube-descheduler" }
    
      { "name": "mtv" }
    
      { "name": "nmstate" }
    
      { "name": "node-maintenance" }
    
      { "name": "cnv" } 
    2
    
    
      { "name": "nmstate" }
        ]
         "pull_secret": $pull_secret[0] | tojson
    }
    ')" | jq '.id'
    Copy to Clipboard Toggle word wrap
    1
    在您要安装的 Operator 捆绑包中指定 Operator。示例列出了虚拟化捆绑包的 Operator。
    2
    注意以下几点:
    • 在虚拟化捆绑包中,指定 cnv 会在后台自动安装 lso
    • 在 OpenShift AI Operator 捆绑包中:

      • 指定 nvidia-gpu 会自动安装 node-feature-discovery
      • 指定 amd-gpu 会自动安装 kmm

使用 schedulable_masters 属性启用工作负载在 control plane 节点上运行。

先决条件

  • 您已生成了一个有效的 API_TOKEN。令牌每 15 分钟过期一次。
  • 您已创建了 $PULL_SECRET 变量。
  • 您要安装 OpenShift Container Platform 4.14 或更高版本。

流程

  1. 按照使用 Assisted Installer API 安装辅助安装程序的说明进行操作。
  2. 当您进入注册新集群这一步时,设置 schedulable_masters 属性,如下所示:

    $ curl https://api.openshift.com/api/assisted-install/v2/clusters/${CLUSTER_ID} \
    -X PATCH \
    -H "Authorization: Bearer ${API_TOKEN}" \
    -H "Content-Type: application/json" \
    -d '
    {
      "schedulable_masters": true 
    1
    
    }
    ' | jq
    Copy to Clipboard Toggle word wrap
    1
    启用在 control plane 节点上调度工作负载。

5.5.3. 配置网络管理类型

Assisted Installer 允许您安装以下网络管理类型:

您可以通过在集群定义中添加 user_managed_networkingload_balancer 属性来定义网络管理类型,如下例所示:

$ curl -s -X POST https://api.openshift.com/api/assisted-install/v2/clusters \
   -H "Authorization: Bearer ${API_TOKEN}" \
   -H "Content-Type: application/json" \
   -d "$(jq --null-input \
      --slurpfile pull_secret ~/Downloads/pull-secret.txt '
   {
      "name": "testcluster",
      "openshift_version": "4.18",
      "cpu_architecture" : "x86_64",
      "base_dns_domain": "example.com",
      "user_managed_networking": "false",
      "load_balancer": {
         "type": "cluster-managed"
      }
   "pull_secret": $pull_secret[0] | tojson
   }
   ')" | jq '.id'
Copy to Clipboard Toggle word wrap

其中:

  • user_managed_networkingtruefalse
  • load_balancer 可以具有 用户管理 的类型或 集群管理的

您可以查看 swagger.yaml 文件中的 user_managed_networkingload_balancer 有效值。

此步骤是可选的。如果没有定义网络管理类型,辅助安装程序默认将集群管理的网络应用到所有高可用性集群。对于单节点 OpenShift,Assisted Installer 默认应用用户管理的网络。

5.5.3.1. 安装集群管理的网络

选择集群管理的网络意味着 Assisted Installer 将配置一个标准网络拓扑。此配置包括一个集成的负载均衡器和虚拟路由,用于管理 API 和 Ingress VIP 地址。详情请参阅 网络管理类型

先决条件

  • 您要安装三个或更多 control plane 节点的 OpenShift Container Platform 集群。

    注意

    目前,IBM Z® 和 IBM Power® 不支持集群管理的网络。

流程

  • 要定义集群管理的网络,在集群定义中添加以下属性和值:

    "user_managed_networking": false,
    "load_balancer": {
            "type": "cluster-managed"
    }
    Copy to Clipboard Toggle word wrap

    其中 load_balancer 属性是可选的。如果为这个配置省略,则对于单节点 OpenShift 自动将 type 设置为 user-managed,或针对所有其他实施自动设置为 cluster-managed

5.5.3.2. 安装用户管理的网络

选择用户管理的网络将使用非标准网络拓扑部署 OpenShift Container Platform。如果要使用外部负载均衡器和 DNS 部署集群,或者您要在多个不同子网中部署集群节点,请选择用户管理的网络。

详情请参阅 网络管理类型

Assisted Installer 允许您为用户管理的网络部署多个外部负载均衡器。

注意

Oracle Cloud Infrastructure (OCI)仅适用于带有用户管理的网络配置的 OpenShift Container Platform 4.14。

流程

  • 要定义用户管理的网络,在集群定义中添加以下属性:

    "user_managed_networking": true,
    Copy to Clipboard Toggle word wrap
    注意

    当用户管理的网络设置为 true 时,不需要 load_balancer 属性,因为您要置备自己的负载均衡器。

网络验证

当您启用用户管理的网络时,以下网络验证会改变:

  • L3 连接检查(ICMP)替换了 L2 检查(ARP)。
  • 最大传输单元(MTU)验证验证所有接口的 MTU 值,而不只验证机器网络的 MTU 值。

使用用户管理的负载均衡器进行集群管理的联网是一个混合网络管理类型,专为需要通过外部控制负载平衡进行自动集群网络的情况而设计。这种方法允许用户提供一个或多个外部负载均衡器(如 API 负载均衡器和入口负载均衡器),同时保留集群管理网络中的裸机功能。

详情请参阅 网络管理类型

重要

使用用户管理的负载均衡器进行集群管理的网络只是一个技术预览功能。Developer Preview(开发人员预览)功能不被红帽支持,其功能可能并不完善且不是生产环境就绪。不要将开发人员预览功能用于生产环境或业务关键型工作负载。开发人员预览功能可以在之前可能地包含在红帽产品产品中提前访问即将推出的产品功能,使客户能够测试功能并在开发过程中提供反馈。这些功能可能没有任何文档,可能会随时被更改或删除,测试也会受到限制。红帽可能会提供在没有关联 SLA 的情况下提交对开发人员预览功能的反馈。

使用 Assisted Installer API 在裸机或 vSphere 平台上使用用户管理的负载均衡器部署集群管理的网络。

先决条件

  • 您要安装 OpenShift Container Platform 版本 4.16 或更高版本。
  • 您要在裸机或 vSphere 平台上安装。
  • 您使用 IPv4 单堆栈网络。
  • 您要安装三个或更多 control plane 节点的 OpenShift Container Platform 集群。
  • 对于 vSphere 平台安装,您需要满足 vSphere 安装要求中指定的额外要求

流程

  1. 将负载均衡器配置为可以从所有主机访问,并可访问以下服务:

    • OpenShift Machine Config Operator (MCO)- 在 control plane 节点上。
    • OpenShift API - 在 control plane 节点上。
    • Ingress Controller - 在 compute (worker)节点上。

    详情请参阅 配置用户管理的负载均衡器(第 1 步和 2 步 )。

  2. 配置集群的 DNS 记录,使其以用户管理的负载均衡器的前端 IP 地址为目标。您必须在负载均衡器上为集群 API 和应用程序的 DNS 服务器更新记录:

    • 配置 DNS 记录以使您的主 API 可以访问:

      <load_balancer_ip_address> <record_name> api.<cluster_name>.<base_domain>
      Copy to Clipboard Toggle word wrap
    • 配置 DNS 记录,通过入口控制器将外部流量路由到您的应用程序:

      <load_balancer_ip_address> <record_name> apps.<cluster_name>.<base_domain>
      Copy to Clipboard Toggle word wrap
    • 对于 vSphere,配置 DNS 记录以支持网络中的内部 API 访问:

      <load_balancer_ip_address> <record_name> api-int.<cluster_name>.<base_domain>
      Copy to Clipboard Toggle word wrap

    详情请参阅 配置用户管理的负载均衡器(第 3 步)。

  3. 在 Assisted Installer API 集群定义中添加以下配置:

    1. user_managed_networkingload_balancer 字段设置为以下值:

      "user_managed_networking": false,
      "load_balancer": {
              "type": "user-managed"
      }
      Copy to Clipboard Toggle word wrap

      详情请参阅 更改网络管理类型

    2. 指定 Ingress 和 API VIP。它们应当与负载均衡器 IP 地址对应:

          "ingress_vips": [
              {
                  "cluster_id": "<cluster-id>",
                  "ip": "<load-balancer-ip>"
              }
          ],
          "api_vips": [
              {
                  "cluster_id": "<cluster-id>",
                  "ip": "<load-balancer-ip>"
              }
          ]
      Copy to Clipboard Toggle word wrap
    3. 指定机器网络列表以确保以下内容:

      • 每个节点至少有一个网卡(NIC),至少有一台机器网络 IP 地址。
      • 负载均衡器 IP (也是 API VIP 和 Ingress VIP)至少包含在其中一个机器网络中。

        Example

         "machine_networks": [
            {
                "cidr": "<hosts-cidr-1>",
                "cluster_id": "<cluster-id>"
            },
            {
                "cidr": "<hosts-cidr-2>",
                "cluster_id": "<cluster-id>"
            },
            {
                "cidr": "<load-balancer-cidr>",
                "cluster_id": "<cluster-id>"
            }
        ]
        Copy to Clipboard Toggle word wrap

      如需了解更多详细信息,请参阅 机器网络

网络验证

当您启用此网络管理类型时,以下网络验证会改变:

  • L3 连接检查(ICMP)替换了 L2 检查(ARP)。
  • 最大传输单元(MTU)验证验证所有接口的 MTU 值,而不只验证机器网络的 MTU 值。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat