• Русский
  • Импорт кластера Azure AKS

    Импортируйте существующий кластер Azure AKS в платформу для единого управления.

    Содержание

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

    Подготовка рабочей среды

    Для соответствия стандартам безопасности Azure AKS следующие шаги необходимо выполнять через Cloud Shell.

    1. Убедитесь в наличии сетевого соединения с Azure Console.

    2. Откройте страницу Kubernetes Services, найдите кластер, который хотите импортировать, и перейдите на страницу обзора кластера.

    3. Нажмите кнопку Connect, откроется плавающее окно с заголовком Connect to <import cluster name>. Следуйте инструкциям для открытия Cloud Shell и настройки рабочей среды.

    Получение информации о кластере

    Получение токена для импорта кластера

    Файл KubeConfig публичных облачных кластеров нельзя использовать напрямую для импорта кластера.

    Пожалуйста, обратитесь к FAQ Как получить информацию о кластере? для получения токена импорта кластера.

    Импорт кластера

    1. В левой навигационной панели нажмите Cluster Management > Clusters.

    2. Нажмите Import Cluster.

    3. Настройте соответствующие параметры согласно следующим инструкциям.

      ПараметрОписание
      Image RegistryРеестр, в котором хранятся образы компонентов платформы, необходимые для кластера. - Platform Default: Реестр образов, настроенный при развертывании глобального кластера. - Private Registry: Предварительно созданный реестр, в котором хранятся образы компонентов платформы. Необходимо ввести Адрес приватного реестра образов, Порт, Имя пользователя и Пароль для доступа к реестру образов. - Public Registry: Использовать публичный реестр образов в интернете. Перед использованием необходимо сначала обратиться к Обновлению учетных данных публичного реестра образов для получения прав аутентификации в реестре.
      Cluster InformationСовет: Пожалуйста, загрузите файл KubeConfig, платформа автоматически распарсит и заполнит информацию. Cluster Address: Адрес доступа к API Server, открытый импортируемым кластером, используемый платформой для доступа к API Server импортируемого кластера. CA Certificate: CA-сертификат импортируемого кластера. Authentication Method: Метод аутентификации импортируемого кластера, который требует использования Token с правами управления кластером, созданного на предыдущем шаге, для аутентификации.
    4. Нажмите Check Connectivity для проверки сетевого соединения с импортируемым кластером и автоматического определения типа кластера. Тип кластера будет отображён в виде бейджа в правом верхнем углу формы.

    5. После успешной проверки соединения нажмите Import и подтвердите.

      TIP
      • Нажмите на иконку Details справа от кластера в статусе Importing, чтобы просмотреть ход выполнения (status.conditions) в всплывающем окне Execution Progress.
      • После успешного импорта кластера вы можете просмотреть ключевую информацию о кластере в списке кластеров. Статус кластера будет отображаться как нормальный, и вы сможете выполнять операции, связанные с кластером.

    Настройка сети

    Убедитесь, что глобальный кластер и импортируемый кластер имеют сетевое соединение. См. Настройка сети для импортируемых кластеров.

    Действия после импорта

    Инициализация Ingress (входящих правил) и хранилища

    После импорта кластера, если необходимо использовать Ingress (входящие правила) и функции, связанные с хранилищем, обратитесь к Конфигурации инициализации Ingress для кластера Azure AKS и Конфигурации инициализации хранилища для кластера Azure AKS.

    Часто задаваемые вопросы

    Как настроить правила группы безопасности внешнего IP узлов AKS

    По умолчанию узлы имеют только внутренние IP. Внешний IP настраивается на фронтенд балансировщике нагрузки (LB), который по умолчанию используется для исходящего трафика. Этот LB контролируется AKS principal. Прямое ручное изменение этой конфигурации может привести к проблемам. Вы можете разрешить трафик через Kubernetes > Properties > Infrastructure Resource Group > Network Security Group > Add Outbound/Inbound All Rules.

    Как получить доступ к узлу AKS

    Для просмотра логов системных компонентов, таких как Kubelet, CNI и ядро, необходимо сначала выполнить SSH на узел. Рекомендуется использовать плагин kubectl-node-shell вместо назначения публичных IP-адресов каждому узлу.

    Вариант 1: Использование kubectl node-shell

    Официальная ссылка

    Вариант 2: Использование debug

    Официальная ссылка

    NOTE

    Для этого примера требуется версия kubectl 1.25 или выше, которая включает GA-команду kubectl debug.

    kubectl debug node/aks-newadd-41368356-vmss000002 -it --image=mcr.microsoft.com/dotnet/runtime-deps:6.0
    chroot /host

    Azure ALB с использованием внутреннего балансировщика нагрузки

    См. Официальная ссылка

    apiVersion: v1
    kind: Service
    metadata:
      name: internal-app
      namespace: cpaas-system
      annotations:
        service.beta.kubernetes.io/azure-load-balancer-internal: "true"
    spec:
      type: LoadBalancer
      ports:
      - name: http-port
        port: 80
        protocol: TCP
      - name: https-port
        port: 443
        protocol: TCP
      selector:
        service.cpaas.io/name: deployment-aks-alb
        service_name: alb2-aks-alb

    Azure ALB с использованием внешнего балансировщика нагрузки

    Разверните высокодоступный ALB с адресом доступа, настроенным как внешний LB.

    apiVersion: v1
    kind: Service
    metadata:
      name: azure-alb
      namespace: cpaas-system
    spec:
      type: LoadBalancer
      ports:
      - name: http-port
        port: 80
        protocol: TCP
      - name: https-port
        port: 443
        protocol: TCP
      - name: prom-port
        port: 11780
        protocol: TCP
      - name: prom2-port
        port: 11781
        protocol: TCP
      - name: prom3-port
        port: 15012
        protocol: TCP
      selector:
        service_name: alb2-cpaas-system

    Если он был развернут заранее, вы можете изменить его с помощью следующей команды.

    kubectl edit helmrequest -n cpaas-system uat-cluster-aks-alb

    Кнопка добавления узла неактивна после импорта кластера. Как добавить узлы?

    Добавление узлов через интерфейс платформы не поддерживается. Пожалуйста, обратитесь к поставщику кластера для добавления узлов.

    Какие сертификаты поддерживает функция управления сертификатами для импортируемых кластеров?

    1. Сертификаты Kubernetes: Все импортируемые кластеры поддерживают только просмотр информации о сертификате APIServer в интерфейсе управления сертификатами платформы. Другие сертификаты Kubernetes не доступны для просмотра и автоматическое обновление не поддерживается.

    2. Сертификаты компонентов платформы: Все импортируемые кластеры могут просматривать информацию о сертификатах компонентов платформы в интерфейсе управления сертификатами и поддерживают автоматическое обновление.

    Какие другие функции не поддерживаются для импортируемых кластеров AKS?

    • Получение данных аудита не поддерживается.

    • Мониторинг, связанный с ETCD, Scheduler и Controller Manager, не поддерживается. Частичный мониторинг APIServer поддерживается.

    • Невозможно получить информацию о сертификатах кластера, кроме сертификатов Kubernetes APIServer.