• Русский
  • Импорт кластера 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: заранее созданный реестр, в котором хранятся образы компонентов, требуемых платформой. Необходимо ввести Private Image Registry Address, Port, Username и Password для доступа к реестру образов. - 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, не может быть получена.