nav-img
Advanced

Создать сервис

В консоли Elastic Load Balance можно создать несколько сервисов.

ClusterIP

Сервис ClusterIP позволяет рабочим нагрузкам в одном кластере использовать их внутренние доменные имена для доступа друг к другу.

  1. В списке сервисов выберите Cloud Container Engine.

  2. Нажмите на название кластера, в котором нужно создать ClusterIP.

  3. В меню слева выберите Services & Ingresses.

  4. В правом верхнем углу нажмите Create Service.

  5. Задайте параметры сервиса:

    • Service Name — название сервиса.

    • Service Type — тип сервиса ClusterIP.

    • Selector — добавьте метку ключ/значение (key/value) и нажмите Confirm. Сервис будет использовать эту метку для выбора подов.

      Чтобы использовать метку существующей рабочей нагрузки, нажмите Reference Workload Label, выберите рабочую нагрузку и нажмите OK.

    • Protocol — тип протокола (TCP или UDP), который использует сервис.

    • Container Port — порт рабочей нагрузки, который использует сервис, в диапазоне от 1 до 65535. Например, Nginx по умолчанию использует порт 80.

    • Service Port — порт, который использует сервис, в диапазоне от 1 до 65535.

  6. Нажмите OK.

См.также

ClusterIP (en)

NodePort

  1. В списке сервисов выберите Cloud Container Engine.

  2. Нажмите на название кластера, в котором нужно создать NodePort.

  3. В меню слева выберите Services & Ingresses.

  4. В правом верхнем углу нажмите Create Service.

  5. Задайте параметры сервиса:

    • Service Name — название сервиса.

    • Service Type — тип сервиса NodePort.

    • Service Affinity — уровень доступа Cluster-level или Node-level.

      Cluster-level — IP-адреса и порты всех узлов в кластере могут получить доступ к рабочей нагрузке, связанной с сервисом. Доступ к сервису приведет к потере производительности из-за перенаправления маршрута.

      Node-level — только IP-адрес и порт узла, где находится рабочая нагрузка, могут получить доступ к рабочей нагрузке, связанной с сервисом. Доступ к сервису не приведет к потере производительности из-за перенаправления маршрута.

    • Selector — добавьте метку ключ/значение (key/value) и нажмите Confirm. Сервис будет использовать эту метку для выбора подов.

      Чтобы использовать метку существующей рабочей нагрузки, нажмите Reference Workload Label, выберите рабочую нагрузку и нажмите OK.

    • Protocol — тип протокола (TCP или UDP), который использует сервис.

    • Container Port — порт рабочей нагрузки, который использует сервис, в диапазоне от 1 до 65535. Например, Nginx по умолчанию использует порт 80.

    • Service Port — порт, который использует сервис, в диапазоне от 1 до 65535.

    • Node Port — порт ноды в диапазоне от 30000 до 32767.

  6. Нажмите OK.

См.также

NodePort (en)

LoadBalancer

Сервис LoadBalancer позволяет настроить более надежный доступ к рабочим нагрузкам из внешней сети.

  1. В списке сервисов выберите Cloud Container Engine.

  2. Нажмите на название кластера, в котором нужно создать LoadBalancer.

  3. В меню слева выберите Services & Ingresses.

  4. В правом верхнем углу нажмите Create Service.

  5. Задайте параметры сервиса:

    • Service Name — название сервиса.

    • Service Type — тип сервиса LoadBalancer.

    • Service Affinity — уровень доступа Cluster-level или Node-level.

      Cluster-level — IP-адреса и порты всех узлов в кластере могут получить доступ к рабочей нагрузке, связанной с сервисом. Доступ к сервису приведет к потере производительности из-за перенаправления маршрута.

      Node-level — только IP-адрес и порт узла, где находится рабочая нагрузка, могут получить доступ к рабочей нагрузке, связанной с сервисом. Доступ к сервису не приведет к потере производительности из-за перенаправления маршрута.

    • Selector — добавьте метку ключ/значение (key/value) и нажмите Confirm. Сервис будет использовать эту метку для выбора подов.

      Чтобы использовать метку существующей рабочей нагрузки, нажмите Reference Workload Label, выберите рабочую нагрузку и нажмите OK.

  6. В поле Load Balancer:

    • выберите тип балансировщика — Shared или Dedicated;

    • выберите тип сети — Network (TCP/UDP), Application (HTTP/HTTPS) или Network (TCP/UDP) & Application (HTTP/HTTPS);

    • используйте существующий балансировщик или создайте новый — Use existing или Auto create:


      Можно выбрать только балансировщики нагрузки в той же сети VPC, что и кластер. Чтобы создать балансировщик нагрузки в консоли Elastic Load Balance, нажмите Create Load Balancer.

    • выберите алгоритм балансировки — нажмите Edit и в поле Algorithm выберите Weighted round robin, Weighted least connection или Source IP hash;

    • активируйте Sticky Session при необходимости.

  7. В поле Health Check настройте проверку работоспособности — Disable, Global или Custom.

    При выборе Global нажмите Значок Редактировать и задайте параметры проверки:

    • Protocol — тип протокола (TCP или HTTP).

      При выборе HTTP в поле Check Path укажите URL для проверки работоспособности.

    • Port — способ определения порта для проверки работоспособности:

      • Use service port — используется порт сервиса.

      • Use new port — новый порт.

        При выборе Use new port в поле Node Port задайте порт в диапазоне от 30000 до 32767 и в поле Container Port — в диапазоне от 1 до 65535.

    • Check Period (s) — частота проверки (1–50 секунд).

    • Timeout (s) — время ожидания отклика (1–50 секунд).

    • Max. Retries — максимальное количество проверки работоспособности, по истечении которых контейнер будет признан неработоспособным (1–10).

  8. В поле Port укажите:

    • Protocol — тип протокола (TCP или UDP), который использует сервис.

    • Container Port — порт рабочей нагрузки, который использует сервис, в диапазоне от 1 до 65535. Например, Nginx по умолчанию использует порт 80.

    • Service Port — порт, который использует сервис, в диапазоне от 1 до 65535.

  9. В поле Listener для Access Control настройте контроль доступа:

    • Inherit ELB Configurations — наследование настроек доступа балансировщика ELB.

    • Allow all IP addresses — контроль доступа не настроен, все IP-адреса разрешены.

    • Trustlist — доступ к балансировщику открыт только для определенной группы IP-адресов.

    • Blocklist — доступ к балансировщику закрыт для определенной группы IP-адресов.

  10. В поле Annotation можно настроить дополнительные параметры с помощью аннотаций.

    Подробнее об аннотациях (en)

  11. Нажмите OK.

См.также

LoadBalancer (en)

DNAT

  1. В списке сервисов выберите Cloud Container Engine.

  2. Нажмите на название кластера, в котором нужно создать DNAT.

  3. В меню слева выберите Services & Ingresses.

  4. В правом верхнем углу нажмите Create Service.

  5. Задайте параметры сервиса:

    • Service Name — название сервиса.

    • Service Type — тип сервиса DNAT.

    • Service Affinity — уровень доступа Cluster-level или Node-level.

      Cluster-level — IP-адреса и порты всех узлов в кластере могут получить доступ к рабочей нагрузке, связанной с сервисом. Доступ к сервису приведет к потере производительности из-за перенаправления маршрута.

      Node-level — только IP-адрес и порт узла, где находится рабочая нагрузка, могут получить доступ к рабочей нагрузке, связанной с сервисом. Доступ к сервису не приведет к потере производительности из-за перенаправления маршрута.

    • Selector — добавьте метку ключ/значение (key/value) и нажмите Confirm. Сервис будет использовать эту метку для выбора подов.

      Чтобы использовать метку существующей рабочей нагрузки, нажмите Reference Workload Label, выберите рабочую нагрузку и нажмите OK.

    • DNAT — выберите NAT-шлюз и публичный IP-адрес или создайте новые:

    • Protocol — тип протокола (TCP или UDP), который использует сервис.

    • Container Port — порт рабочей нагрузки, который использует сервис, в диапазоне от 1 до 65535. Например, Nginx по умолчанию использует порт 80.

    • Service Port — порт, который использует сервис, в диапазоне от 1 до 65535.

  6. Нажмите OK.

См.также

DNAT (en)

После создания сервис появится в списке на вкладке Services.