Краткое руководство. Развертывание контейнера SQL Server Linux в Kubernetes с помощью диаграмм Helm
Область применения: SQL Server — Linux
В этом кратком руководстве описано, как развернуть SQL Server в контейнерах Linux для Службы Azure Kubernetes (AKS) с помощью диаграмм Helm с клиентского компьютера Windows.
AKS — это управляемая служба Kubernetes для развертывания кластеров контейнеров и управления ими. Helm — это средство упаковки с открытым кодом, которое помогает установить приложения Kubernetes и управлять их жизненным циклом.
Необходимые компоненты
Подписка Azure. Если у вас еще нет подписки Azure, вы можете создать бесплатную учетную запись.
Скачайте и просмотрите пример диаграммы Helm для этого краткого руководства. Пример диаграммы содержит множество параметров конфигурации для настройки развертывания SQL Server.
Установка клиентских средств
На клиентском компьютере Windows вам потребуются указанные ниже средства.
Если вы предпочитаете использовать другую клиентскую операционную систему, необходимо выбрать соответствующие пакеты для этой платформы.
Установите kubectl с помощью модуля Az PowerShell
Вы будете использовать kubectl для взаимодействия с кластером Kubernetes. Дополнительные сведения см. в статье az aks install-cli.
Чтобы установить kubectl, выполните следующую команду в командной строке Windows:
az aks install-cli
Совет
kubectl можно добавить в локальную переменную среды PATH
, чтобы каждый раз не вводить полный путь.
Подключение kubectl к кластеру AKS
Необходимо объединить контекст кластера AKS, чтобы команда kubectl или helm выполнялась в этом конкретном кластере AKS.
Чтобы выполнить слияние, выполните команду, как описано в статье Подключение к кластеру AKS:
az aks get-credentials --resource-group <resourcegroupname> --name <aks clustername>
Должны отобразиться следующие выходные данные, где указан кластер
<clustername>
и<username>
является вашей локальной учетной записью пользователя Windows:Merged "<clustername>" as current context in C:\Users\<username>\.kube.config
Убедитесь, что слияние выполнено успешно, выполнив команду
kubectl get nodes
. В выходных данных должны отображаться узлы в контексте кластера AKS.NAME STATUS ROLES AGE VERSION <aks-node>-vmss000000 Ready agent 141d v1.16.13 <aks-node>-vmss000001 Ready agent 141d v1.16.13
Изучите пример диаграммы Helm
Теперь вы готовы развернуть SQL Server в кластере AKS с помощью диаграммы Helm.
В этом кратком руководстве представлен пример диаграммы Helm "как есть". Пример предназначен только для справки. Не забудьте просмотреть файл readme
, чтобы определить значения конфигурации, соответствующие вашим требованиям.
Если необходимо развернуть SQL Server в режиме StatefulSet, который является рекомендуемым режимом для развертываний SQL Server, вместо этого можно просмотреть развертывание диаграммы Helm на основе StatefulSet примера "как есть".
Скачайте пример диаграммы Helm.
Перейдите в каталог, в который скачан пример диаграммы, и при необходимости измените файл
values.yaml
.
Развертывание SQL Server в кластере AKS
Разверните SQL Server с помощью указанной ниже команды. Имя развертывания настраивается, поэтому для mssql-latest-deploy
.
helm install mssql-latest-deploy . --set ACCEPT_EULA.value=Y --set MSSQL_PID.value=Developer
В указанном примере диаграмма и ее файлы находятся в текущем каталоге, представленном точкой (.
). При желании можно указать путь к диаграмме.
В случае успеха отобразятся примерно такие выходные данные:
NAME: mssql-latest-deploy
LAST DEPLOYED: Wed Apr 06 21:36:19 2022
NAMESPACE: default
STATUS: deployed
REVISION: 1
Проверка развертывания SQL Server
Развертывание в кластере Kubernetes может занять несколько минут. Чтобы убедиться, что развертывание прошло успешно, выполните следующую команду:
kubectl get all
В случае успеха отобразятся примерно такие выходные данные:
NAME READY STATUS RESTARTS AGE
pod/mssql-latest-deploy-7f8c7f5bc-9grmg 1/1 Running 0 2m56s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 141d
service/mssql-latest-deploy LoadBalancer 10.0.247.220 20.40.0.145 1433:30780/TCP 2m56s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/mssql-latest-deploy 1/1 1 1 2m56s
NAME DESIRED CURRENT READY AGE
replicaset.apps/mssql-latest-deploy-7f8c7f5bc 1 1 1 2m56s
Подключение к SQL Server, который выполняется в AKS
Вы можете подключиться к экземпляру SQL Server с помощью любого знакомого клиентского средства SQL Server, например SQL Server Management Studio (SSMS), Azure Data Studio или sqlcmd.
Например, при подключении к экземпляру SQL Server с помощью SSMS можно использовать следующие параметры:
- Имя сервера. Используйте адрес
External-IP
для службыmssql-latest-deploy
. В нашем примере это значение выглядит следующим образом:20.40.0.145
. - Проверка подлинности. В раскрывающемся списке выберите проверку подлинности SQL Server.
- Вход. Используйте учетную запись sa, которая является учетной записью системного администратора.
- Пароль. Пароль sa соответствует значению, указанному в параметре конфигурации
sa_password
, в файлеvalues.yaml
диаграммы Helm.
После подключения вы сможете развернуть экземпляр SQL Server в обозревателе объектов.
Очистка ресурсов
Если вы не собираетесь продолжать использовать кластер AKS, не забудьте удалить его.
Связанный контент
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по