Настройка Службы Kubernetes Azure для развертываний кластера больших данных SQL Server

Область применения: SQL Server 2019 (15.x)

Важно!

Поддержка надстройки "Кластеры больших данных" Microsoft SQL Server 2019 будет прекращена. Мы прекратим поддержку Кластеров больших данных SQL Server 2019 28 февраля 2025 г. Все существующие пользователи SQL Server 2019 с Software Assurance будут полностью поддерживаться на платформе, а программное обеспечение будет продолжать поддерживаться через SQL Server накопительных обновлений до этого времени. Дополнительные сведения см. в записи блога объявлений и в статье о параметрах больших данных на платформе Microsoft SQL Server.

В этой статье описывается, как настроить Службу Kubernetes Azure (AKS) для развертываний Кластеры больших данных SQL Server 2019.

AKS упрощает создание, настройку и кластера виртуальных машин, которые предварительно настроены с кластером Kubernetes для запуска контейнерных приложений, и управление им. Это позволяет использовать имеющиеся навыки или пользоваться опытом обширного и постоянно растущего сообщества, а также развертывать приложения на основе контейнеров и управлять ими в Microsoft Azure.

В этой статье описаны шаги по развертыванию Kubernetes в AKS с помощью Azure CLI. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.

Совет

Вы также можете создать скрипт для развертывания AKS и кластера больших данных за один шаг. Дополнительные сведения о том, как это сделать, см. в скрипте Python или в записной книжке Azure Data Studio.

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

  • Развертывание средств для работы с большими данными SQL Server 2019

    • Kubectl
    • Azure Data Studio
    • Расширение SQL Server 2019
    • Azure CLI
  • Минимальная версия 1.13 для сервера Kubernetes. Для AKS нужно использовать параметр --kubernetes-version, чтобы указать версию, отличную от используемой по умолчанию.

  • Чтобы обеспечить успешное развертывание и оптимальное взаимодействие при проверке основных сценариев в AKS, можно использовать один узел или кластер AKS с несколькими узлами, где доступны следующие ресурсы:

    • 8 виртуальных ЦП для всех узлов
    • 64 ГБ памяти на виртуальную машину
    • 24 или более подключенных диска для всех узлов

    Совет

    В инфраструктуре Azure предлагается несколько вариантов размера виртуальных машин, дополнительные сведения о тех из них, которые доступны в регионе, где вы планируете выполнить развертывание, см. здесь.

Создание группы ресурсов

Группа ресурсов Azure — это логическая группа, в которой развертываются и управляются ресурсы Azure. Выполните следующие действия, чтобы войти в Azure и создать группу ресурсов для кластера AKS.

  1. В командной строке выполните следующую команду и следуйте указаниям для входа в подписку Azure.

    az login
    
  2. Если у вас несколько подписок, можно просмотреть все подписки, выполнив следующую команду.

    az account list
    
  3. Если вы хотите перейти на другую подписку, можно выполнить следующую команду.

    az account set --subscription <subscription id>
    
  4. Найдите регион Azure, в котором вы хотите развернуть кластер и ресурсы, с помощью следующей команды:

    az account list-locations -o table
    
  5. Создайте группу ресурсов с помощью команды az group create. В следующем примере создается группа ресурсов с именем sqlbdcgroup в расположении именем westus2.

    az group create --name sqlbdcgroup --location westus2
    

Проверка доступных версий Kubernetes

Используйте самую последнюю доступную версию Kubernetes. Эта версия зависит от расположения развертывания кластера. Приведенная ниже команда возвращает версии Kubernetes, доступные в указанном расположении.

Перед выполнением команды обновите скрипт. Замените <Azure data center> расположением кластера.

bash

az aks get-versions \
--location <Azure data center> \
--query orchestrators \
--o table

PowerShell

az aks get-versions `
--location <Azure data center> `
--query orchestrators `
-o table

Выберите самую последнюю доступную версию для своего кластера. Запишите номер версии. Он будет использован на следующем шаге.

Создание кластера Kubernetes

  1. Создайте кластер Kubernetes в AKS с помощью команды az aks create. В следующем примере создается кластер Kubernetes kubcluster с одним узлом агента Linux размером Standard_L8s.

    Перед выполнением скрипта замените <version number> номером версии, определенным на предыдущем шаге.

    Убедитесь, что вы создали кластер AKS в той же группе ресурсов, которая использовалась в предыдущих разделах.

    bash:

    az aks create --name kubcluster \
    --resource-group sqlbdcgroup \
    --generate-ssh-keys \
    --node-vm-size Standard_L8s \
    --node-count 1 \
    --kubernetes-version <version number>
    

    PowerShell:

    az aks create --name kubcluster `
    --resource-group sqlbdcgroup `
    --generate-ssh-keys `
    --node-vm-size Standard_L8s `
    --node-count 1 `
    --kubernetes-version <version number>
    

    Количество узлов агента Kubernetes можно увеличить или уменьшить, изменив значение --node-count <n>, где <n> — число узлов агента, которые вы хотите использовать. Сюда не входит главный узел Kubernetes, которым AKS управляет в фоновом режиме. В предыдущем примере в целях оценки используется только один узел. Можно также изменить --node-vm-size, чтобы выбрать соответствующий размер виртуальной машины, соответствующий требованиям к рабочей нагрузке. Для вывода списка доступных размеров виртуальных машин в вашем регионе выполните команду az vm list-sizes --location westus2 -o table.

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

    Совет

    Если при создании кластера в AKS возникают ошибки, см. раздел об устранении неполадок в этой статье.

  2. Сохраните выходные данные JSON из предыдущей команды для последующего использования.

Подключение к кластеру

  1. Чтобы настроить kubectl для подключения к кластеру Kubernetes, выполните команду az aks get-credentials. На этом шаге выполняется скачивание учетных данных и настройка интерфейса командной строки kubectl для их использования.

    az aks get-credentials --resource-group=sqlbdcgroup --name kubcluster
    
  2. Чтобы проверить подключение к кластеру, используйте команду kubectl get для получения списка узлов кластера. В приведенном ниже примере показаны выходные данные, как если бы у вас были 1 главный узел и 3 узла агентов.

    kubectl get nodes
    

Устранение неполадок

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

Дальнейшие действия

Действия, описанные в этой статье, обеспечивают настройку кластера Kubernetes в AKS. Следующим шагом является развертывание кластера больших данных SQL Server 2019 в кластере AKS. Дополнительные сведения о развертывании кластеров больших данных см. в следующей статье:

Развертывание Кластеры больших данных SQL Server в Kubernetes