华为云 CCE 集群网络初始化配置

目录

支持概览

功能支持状态需求
LoadBalancer Service默认支持无需额外部署。
Ingress默认支持可选启用 Ingress Class 功能(启用后,可通过表单界面创建 ingress 时手动选择 ingress 类)。无需额外部署。

前提条件

如果您已创建 CCE 集群,请导入 CCE 集群(公有云)

配置步骤

您可以同时创建 ingress 和 LoadBalancer 服务,也可以根据需求选择其一。

创建 Ingress

创建 ingress 有两种方式。推荐使用 方式一:手动选择 Ingress Class

注意:避免创建两个具有相同 path 的 ingress 资源。

(推荐)方式一:手动选择 Ingress Class

  1. Container Platform 左侧导航中点击 Network > Ingress

  2. 点击 Create Ingress,在 Ingress Class 中选择 CCE Ingress Class

  3. 选择 Protocol,默认是 HTTP。若为 HTTPS,请先创建证书并选择。

  4. 切换到 YAML,根据您的默认 Ingress Controller 类型添加以下注解。注解详情请参见使用注解配置负载均衡器

    注意:请将下表注解中的 values 替换为实际环境值。

    默认 Ingress Controller 类型注解
    共享(自动创建)kubernetes.io/elb.autocreate: '{"type":"public","bandwidth_name":"{random}","bandwidth_chargemode":"traffic","bandwidth_size":5,"bandwidth_sharetype":"PER","eip_type":"5_bgp"}'
    kubernetes.io/elb.class: union
    共享(复用)kubernetes.io/elb.class: union
    kubernetes.io/elb.id: <Load Balancer Instance ID>
    kubernetes.io/elb.port: '80'
    独享(自动创建)kubernetes.io/elb.autocreate: '{"type":"public","bandwidth_name":"<Bandwidth Name>","bandwidth_chargemode":"traffic","bandwidth_size":5,"bandwidth_sharetype":"PER","eip_type":"5_bgp","available_zone":["<AZ A>","<AZ B>","<AZ C>"],"elb_virsubnet_ids":["<ELB Virtual Subnet ID>"],"l7_flavor_name":"L7_flavor.elb.s1.small","l4_flavor_name":"L4_flavor.elb.s1.small"}'
    kubernetes.io/elb.class: performance
    kubernetes.io/elb.port: "80"
    独享(复用)kubernetes.io/elb.class: performance
    kubernetes.io/elb.id: <Load Balancer Instance ID>
    kubernetes.io/elb.port: "80"
  5. 点击 Create。创建完成后,即可通过 ELB 访问集群服务。

方式二:使用默认 Ingress Class

  1. 创建如下内容的 IngressClass YAML 文件,详情请参见默认 Ingress Class

    apiVersion: networking.k8s.io/v1
    kind: IngressClass
    metadata:
      annotations:
        ingressclass.kubernetes.io/is-default-class: "true"
      name: cce
    spec:
      controller: alauda/cce
  2. 保存文件并应用到导入的集群,替换 <filename.yaml> 为实际 YAML 文件名:

    kubectl apply -f <filename.yaml>
  3. Container Platform 左侧导航中点击 Network > Ingress

  4. 选择 Protocol,默认是 HTTP。若为 HTTPS,请先创建证书并选择。

  5. 点击 Create。创建完成后,即可通过 ELB 访问集群服务。

创建 LoadBalancer Service

  1. Container Platform 左侧导航中点击 Network > Services

  2. 点击 Create Service,在 External Access 中选择 LoadBalancer

  3. 展开 annotations,根据需要填写 LoadBalancer 服务注解。

  4. 点击 Create

相关操作

创建证书

使用 HTTPS 协议时,请提前将 HTTPS 证书凭据以 Secret(TLS 类型)形式保存。

  1. Container Platform 左侧导航中点击 Configuration > Secrets

  2. 点击 Create Secret

  3. 选择 TLS 类型,按需导入或填写 CertificatePrivate Key

  4. 点击 Create