Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Kubernetes предоставляет распределенную платформу для контейнерных приложений. С помощью Служба Azure Kubernetes (AKS) можно быстро создать готовый к работе кластер Kubernetes.
В этом руководстве описано, как развернуть кластер Kubernetes в AKS. Вы узнаете, как:
- Разверните кластер AKS, который может аутентифицироваться с Реестром контейнеров Azure (ACR).
- Установите интерфейс командной строки Kubernetes.
kubectl
- Настройте
kubectl
, чтобы подключиться к вашему кластеру AKS.
Прежде чем начать
В предыдущих руководствах вы создали образ контейнера и отправили его в экземпляр службы ACR. Начните с Учебника 1 - Подготовка приложения для AKS, чтобы следовать инструкции шаг за шагом.
- Если вы используете Azure CLI, в этом руководстве требуется, чтобы вы работали с Azure CLI версии 2.35.0 или более поздней. Проверьте вашу версию с помощью
az --version
. Чтобы выполнить установку или обновление, см. сведения в статье Установка Azure CLI. - Если вы используете Azure PowerShell, в этом руководстве требуется, чтобы вы работали с Azure PowerShell версии 5.9.0 или более поздней. Проверьте свою версию с
Get-InstalledModule -Name Az
. Сведения об установке или обновлении см. в статье "Установка Azure PowerShell". - Если вы используете Интерфейс командной строки разработчика Azure, в этом руководстве требуется, чтобы вы работали с интерфейсом командной строки разработчика Azure версии 1.5.1 или более поздней. Проверьте вашу версию с
azd version
. Сведения об установке или обновлении см. в разделе "Установка интерфейса командной строки разработчика Azure".
Создание кластера Kubernetes
Кластеры AKS могут использовать управление доступом на основе ролей Kubernetes (Kubernetes RBAC), что позволяет определять доступ к ресурсам на основе ролей, назначенных пользователям. Если пользователю назначено несколько ролей, объединяются разрешения. Разрешения могут быть ограничены одним пространством имен или всем кластером.
Дополнительные сведения об AKS и Kubernetes RBAC см. в статье Управление доступом к ресурсам кластера с помощью RBAC Kubernetes и удостоверений Microsoft Entra в AKS.
Для этого руководства требуется Azure CLI версии 2.35.0 или более поздней. Проверьте вашу версию с az --version
. Чтобы выполнить установку или обновление, см. сведения в статье Установка Azure CLI. Если вы используете среду Bash в Azure Cloud Shell, то последняя версия уже установлена.
Установка интерфейса командной строки Kubernetes
Вы используете командную строку Kubernetes, чтобы подключиться к вашему кластеру Kubernetes. Если вы используете Azure Cloud Shell, kubectl
уже установлен. Если вы выполняете команды локально, для установки kubectl
можно использовать Azure CLI или Azure PowerShell.
Установите
kubectl
локально с помощьюaz aks install-cli
команды.az aks install-cli
Создание кластера AKS
Кластеры AKS могут использовать управление доступом на основе ролей Kubernetes (Kubernetes RBAC), что позволяет определять доступ к ресурсам на основе ролей, назначенных пользователям. Разрешения объединяются при назначении пользователям нескольких ролей. Разрешения могут быть ограничены одним пространством имен или всем кластером. Дополнительные сведения см. в разделе "Управление доступом к ресурсам кластера" с помощью RBAC Kubernetes и идентификатора Microsoft Entra в AKS.
Сведения об ограничениях ресурсов AKS и доступности регионов см. в разделе "Квоты", ограничения размера виртуальной машины и доступность регионов в AKS.
Это важно
В этом руководстве создается кластер с тремя узлами. Чтобы обеспечить надежную работу кластера, необходимо запустить не менее двух узлов. Для использования хранилища контейнеров Azure требуется не менее трех узлов. Если при попытке создать кластер появится сообщение об ошибке, может потребоваться запросить увеличение квоты для подписки Azure или попробовать другой регион Azure. Кроме того, можно опустить параметр размера виртуальной машины узла, чтобы использовать размер виртуальной машины по умолчанию.
Чтобы разрешить кластеру AKS взаимодействовать с другими ресурсами Azure, платформа Azure автоматически создает удостоверение кластера. В этом примере идентификатору кластера предоставляется право загружать образы из экземпляра ACR, созданного в предыдущем руководстве. Чтобы выполнить команду успешно, в подписке Azure должна быть роль владельца или администратора учетной записи Azure .
Создайте кластер AKS с помощью
az aks create
команды. В следующем примере в группе ресурсов myResourceGroup создается кластер с именем myAKSCluster. Эта группа ресурсов была создана в предыдущем руководстве в регионе westus2 . Мы будем продолжать использовать переменную среды,$ACRNAME
которую мы задали в предыдущем руководстве. Если у вас нет этого набора переменных среды, задайте для него то же значение, которое вы использовали ранее.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --node-count 3 \ --node-vm-size standard_l8s_v3 \ --generate-ssh-keys \ --attach-acr $ACRNAME
Примечание.
Если вы уже создали ключи SSH, может возникнуть ошибка, аналогичная
linuxProfile.ssh.publicKeys.keyData is invalid
. Чтобы продолжить, повторите команду без--generate-ssh-keys
параметра.
Чтобы не требовалась роль Владелец или Администратор учетной записи Azure, вы можете также вручную настроить учетную запись службы для загрузки образов из ACR. Дополнительные сведения см. в статьях Аутентификация в реестре контейнеров Azure с помощью субъектов-служб и Аутентификация из Kubernetes с использованием секрета извлечения. В качестве альтернативы, для упрощения управления, можно использовать управляемое удостоверение вместо субъекта-службы.
Подключение к кластеру с помощью kubectl
Настройте
kubectl
, чтобы подключиться к кластеру Kubernetes, используя командуaz aks get-credentials
. В следующем примере показано получение учетных данных для кластера AKS с именем myAKSCluster в группе ресурсов myResourceGroup.az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Проверьте подключение к кластеру
kubectl get nodes
с помощью команды, которая возвращает список узлов кластера.kubectl get nodes
В следующем примере выходных данных показан список узлов кластера:
NAME STATUS ROLES AGE VERSION aks-nodepool1-19366578-vmss000000 Ready agent 47h v1.30.9 aks-nodepool1-19366578-vmss000001 Ready agent 47h v1.30.9 aks-nodepool1-19366578-vmss000002 Ready agent 47h v1.30.9
Следующий шаг
В этом руководстве вы развернули кластер Kubernetes в AKS и настроили kubectl
для подключения к кластеру. Вы научились выполнять следующие задачи:
- Разверните кластер AKS, который может пройти проверку подлинности в ACR.
- Установите интерфейс командной строки Kubernetes.
kubectl
- Настройте
kubectl
для подключения к кластеру AKS.
В следующем руководстве вы узнаете, как развернуть хранилище контейнеров Azure в кластере и создать универсальный временный том. Если вы используете интерфейс командной строки разработчика Azure или не смогли использовать оптимизированный для хранилища тип виртуальной машины из-за проблем с квотами, перейдите непосредственно к руководству по развертыванию контейнерного приложения .
Azure Kubernetes Service