Краткое руководство: Создать кластер с использованием Azure Linux Container Host для Azure Kubernetes Service (AKS)

Контейнерный узел Azure Linux для AKS обеспечивает быстрый запуск, предсказуемые обновления и строгие параметры безопасности по умолчанию благодаря тесной интеграции с жизненным циклом AKS. Microsoft владеет полным стеком от ядра к ответу CVE, упрощая операции и уменьшая затраты на клиентов. Дополнительные сведения см. в разделе Azure Linux для AKS.

Из этого краткого руководства вы узнаете, как:

  • Установите интерфейс командной строки Kubernetes. kubectl
  • Создайте группу ресурсов Azure.
  • Создайте и разверните кластер узла контейнеров Linux в Azure.
  • Настройте kubectl для подключения к кластеру хоста контейнеров Azure Linux.

Note

Azure Linux 4.0 теперь находится в preview и строго ограничивается целями оценки и тестирования. Он не подходит для использования в рабочей среде.

Необходимые условия

  • Вам нужна последняя версия Azure CLI. Чтобы узнать версию, выполните команду az --version. Если необходимо установить или обновить, см. раздел Install Azure CLI.

Настройка переменных среды

Задайте следующие переменные среды, чтобы обеспечить согласованное именование во всем развертывании. В этом кратком руководстве мы зададим имя группы ресурсов как testAzureLinuxResourceGroup, имя кластера как testAzureLinuxCluster и расположение как EastUS2.

export RESOURCE_GROUP=testAzureLinuxResourceGroup
export CLUSTER_NAME=testAzureLinuxCluster
export LOCATION=EastUS2

Создайте группу ресурсов

Чтобы создать кластер с узлом контейнеров Azure Linux, используйте следующую команду:

  • Группа ресурсов Azure: логический контейнер, в котором развертываются и управляются ресурсы Azure.
  • AKS: размещенная служба Kubernetes, которая позволяет быстро создавать готовый к работе кластер Kubernetes.

При создании группы ресурсов необходимо указать расположение. Это местоположение:

  • Расположение хранилища метаданных группы ресурсов.
  • Где ваши ресурсы размещаются в Azure, если при создании ресурса вы не указываете другой регион.

Создайте группу ресурсов с помощью az group create команды с именем группы ресурсов и переменными среды региона, заданными ранее.

az group create --name $RESOURCE_GROUP --location $LOCATION

Пример выходных данных:

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
  "location": "EastUS2",
  "managedBy": null,
  "name": "testAzureLinuxResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

Создайте кластер Azure Linux Container Host

Создайте кластер AKS с помощью команды az aks create с параметром --os-sku для подготовки узла контейнеров Azure Linux на основе образа Azure Linux. В следующем примере создается кластер узла контейнеров Linux Azure с именем testAzureLinuxCluster в группе ресурсов testAzureLinuxResourceGroup:

az aks create --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --os-sku AzureLinux

Пример выходных данных:

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup/providers/Microsoft.ContainerService/managedClusters/testAzureLinuxCluster",
  "location": "EastUS2",
  "name": "testAzureLinuxCluster",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "type": "Microsoft.ContainerService/managedClusters"
}

Через несколько минут команда завершается и возвращает информацию о кластере в формате JSON.

Подключение к кластеру с помощью kubectl

  1. Настройте kubectl для подключения к вашему кластеру Kubernetes с помощью команды az aks get-credentials. В следующем примере мы получаем учетные данные для кластера узла контейнеров Azure Linux, используя группу ресурсов и имя кластера, созданные ранее.

    az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    
  2. Проверьте подключение к кластеру с помощью kubectl get nodes команды, чтобы вернуть список узлов кластера:

    kubectl get nodes
    

    Пример выходных данных:

    NAME                           STATUS   ROLES   AGE     VERSION
    aks-nodepool1-00000000-0       Ready    agent   10m     v1.34.4
    aks-nodepool1-00000000-1       Ready    agent   10m     v1.34.4
    

    Все узлы имеют состояние Ready, что подтверждает, что ваш кластер Azure Linux Container Host запущен и доступен.

Очистите ресурсы

Если вы не планируете продолжать использовать этот кластер, удалите группу ресурсов, чтобы избежать текущих расходов с помощью az group delete команды. Удаление группы ресурсов удаляет кластер AKS и все связанные ресурсы.

az group delete --name $RESOURCE_GROUP --yes --no-wait

Теперь, когда у вас есть запущенный кластер узла контейнеров Linux Azure, вы можете: