• Русский
  • Инициализация и настройка сети кластера Huawei Cloud CCE

    Содержание

    Обзор поддержки

    ФункцияСтатус поддержкиТребования
    LoadBalancer ServiceПоддержка по умолчаниюДополнительное развертывание не требуется.
    IngressПоддержка по умолчаниюОпционально можно включить функциональность Ingress Class (после включения можно вручную выбирать классы ingress при создании ingress через интерфейс формы). Дополнительное развертывание не требуется.

    Предварительные требования

    Если вы создали кластер CCE, импортируйте кластер CCE (Public Cloud).

    Шаги настройки

    Вы можете создавать ingress и LoadBalancer сервисы одновременно или выбрать один из них в зависимости от ваших потребностей.

    Создание Ingress

    Существует два способа создания ingress. Рекомендуется Способ 1: Ручной выбор класса Ingress.

    Примечание: избегайте создания двух ресурсов ingress с одинаковым path.

    (Рекомендуемый) Способ 1: Ручной выбор класса Ingress

    1. В Container Platform нажмите в левом меню Network > Ingress.

    2. Нажмите Create Ingress и выберите CCE Ingress Class для поля Ingress Class.

    3. Выберите Protocol. По умолчанию — HTTP. Для HTTPS сначала создайте сертификат и выберите его.

    4. Переключитесь на вкладку YAML и добавьте следующие аннотации в зависимости от типа вашего Ingress Controller по умолчанию. Подробности об аннотациях смотрите в разделе Использование аннотаций для настройки Load Balancer:

      Примечание: замените значения в аннотациях ниже на актуальные значения вашей среды.

      Тип Ingress Controller по умолчаниюАннотации
      Shared (Автосоздание)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
      Shared (Повторное использование)kubernetes.io/elb.class: union
      kubernetes.io/elb.id: <Load Balancer Instance ID>
      kubernetes.io/elb.port: '80'
      Dedicated (Автосоздание)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"
      Dedicated (Повторное использование)kubernetes.io/elb.class: performance
      kubernetes.io/elb.id: <Load Balancer Instance ID>
      kubernetes.io/elb.port: "80"
    5. Нажмите Create. После создания вы сможете получить доступ к сервисам кластера через ELB.

    Способ 2: Использование класса Ingress по умолчанию

    1. Создайте YAML-файл IngressClass со следующим содержимым. Подробности смотрите в разделе Default 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 и выберите LoadBalancer для External Access.

    3. Разверните раздел annotations и при необходимости заполните аннотации для сервиса LoadBalancer.

    4. Нажмите Create.

    Связанные операции

    Создание сертификата

    При использовании протокола HTTPS заранее сохраните учетные данные HTTPS-сертификата как Secret (тип TLS).

    1. В Container Platform нажмите в левом меню Configuration > Secrets.

    2. Нажмите Create Secret.

    3. Выберите тип TLS и импортируйте или заполните поля Certificate и Private Key по необходимости.

    4. Нажмите Create.