Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Kubernetes предоставляет распределенную платформу для контейнерных приложений. С помощью Azure Kubernetes Service (AKS) можно быстро создать готовый к работе кластер Kubernetes.
В этом руководстве описано, как развернуть кластер Kubernetes в AKS. Вы узнаете, как:
- Разверните кластер AKS, который может аутентифицироваться с Реестром контейнеров Azure (ACR).
- Установите интерфейс командной строки Kubernetes.
kubectl - Настройте
kubectl, чтобы подключиться к вашему кластеру AKS.
Прежде чем начать
В предыдущих руководствах вы создали образ контейнера и отправили его в экземпляр службы ACR. Начните с Учебника 1 - Подготовка приложения для AKS, чтобы следовать инструкции шаг за шагом.
В этом руководстве создаются тарифицируемые ресурсы кластера AKS, и для его выполнения требуется роль владельца или администратора учетной записи Azure в вашей подписке Azure.
- Если вы используете 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 взаимодействовать с другими ресурсами Azure, платформа Azure автоматически создает удостоверение кластера. В этом примере идентификатору кластера предоставляется право загружать образы из экземпляра ACR, созданного в предыдущем руководстве. Чтобы выполнить команду успешно, в подписке Azure должна быть роль владельца или администратора учетной записи Azure .
- Создайте кластер AKS с помощью
az aks createкоманды. В следующем примере в группе ресурсов myResourceGroup создается кластер с именем myAKSCluster. Эта группа ресурсов была создана в предыдущем руководстве в регионе westus2 . Мы будем продолжать использовать переменную среды,$ACRNAMEкоторую мы задали в предыдущем руководстве. Если у вас нет этого набора переменных среды, задайте для него то же значение, которое вы использовали ранее.
Выберите один параметр кластера и запустите только соответствующий блок команд. Существует два варианта создания кластера AKS. См. здесь подробное сравнение.
AkS Automatic (рекомендуется) — полностью управляемый интерфейс Kubernetes, который автоматизирует настройку кластера, операции и управление узлами. Выберите этот параметр для упрощённой работы и использования интерфейса приложения AKS Desktop с рекомендуемыми параметрами по умолчанию.
Выполните этот блок команд, только если вы выбрали AKS Automatic.
az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --sku automatic \ --attach-acr $ACRNAME AKS_ID=$(az aks show --resource-group myResourceGroup --name myAKSCluster --query id -o tsv) ENTRA_OBJECT_ID=$(az ad signed-in-user show --query id -o tsv) # Grant yourself admin permissions to the cluster using the Azure Kubernetes Service RBAC Cluster Admin role. az role assignment create --role "Azure Kubernetes Service RBAC Cluster Admin" \ --assignee $ENTRA_OBJECT_ID \ --scope $AKS_IDAKS Standard — обеспечивает полный контроль над конфигурацией кластера и управлением узлами. Выберите этот параметр, если необходимо настроить параметры кластера. Чтобы использовать AKS Desktop с стандартными кластерами, укажите дополнительные параметры кластера во время создания.
Выполните этот блок команд только в том случае, если вы выбрали AKS Standard.
Это важно
В этом руководстве создается кластер с тремя узлами. Если при попытке создать кластер появится сообщение об ошибке, может потребоваться запросить увеличение квоты для подписки Azure или попробовать другой регион Azure. Кроме того, можно использовать меньше узлов или опустить параметр размера виртуальной машины узла для использования размера виртуальной машины по умолчанию. Сведения об ограничениях ресурсов AKS и доступности регионов см. в разделе "Квоты", ограничения размера виртуальной машины и доступность регионов в AKS.
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 или не смогли использовать оптимизированный для хранилища тип виртуальной машины из-за проблем с квотами, перейдите непосредственно к руководству по развертыванию контейнерного приложения .