Развертывание BDC в частном кластере службы Azure Kubernetes (AKS)
Важно!
Поддержка надстройки "Кластеры больших данных" Microsoft SQL Server 2019 будет прекращена. Мы прекратим поддержку Кластеров больших данных SQL Server 2019 28 февраля 2025 г. Все существующие пользователи SQL Server 2019 с Software Assurance будут полностью поддерживаться на платформе, и программное обеспечение будет продолжать поддерживаться с помощью накопительных обновлений SQL Server до этого времени. Дополнительные сведения см. в записи блога объявлений и в статье о параметрах больших данных на платформе Microsoft SQL Server.
В этой статье объясняется, как развертывать кластеры больших данных SQL Server в частном кластере службы Azure Kubernetes (AKS). Эта конфигурация поддерживает ограниченное использование общедоступных IP-адресов в корпоративной сетевой среде.
Частное развертывание обеспечивает следующие преимущества.
- Ограниченное использование общедоступных IP-адресов
- Сетевой трафик между серверами приложений и пулами узлов кластера остается только в частной сети.
- Настраиваемая конфигурация для обязательного исходящего трафика в соответствии с конкретными требованиями
В этой статье показано, как использовать частный кластер AKS для ограничения использования общедоступных IP-адресов, когда применяются соответствующие строки безопасности.
Развертывание частного кластера больших данных с помощью частного кластера AKS
Чтобы приступить к работе, создайте частный кластер AKS, чтобы сетевой трафик между сервером API и пулами узлов оставался в частной сети. Уровень управления или сервер API имеют внутренние IP-адреса в частном кластере AKS.
В этом разделе показано, как развернуть кластер больших данных в частном кластере Службы Azure Kubernetes (AKS) с расширенными сетевыми возможностями (CNI).
Создание частного кластера AKS с расширенными сетевыми возможностями
export REGION_NAME=<your Azure region >
export RESOURCE_GROUP=< your resource group name >
export SUBNET_NAME=aks-subnet
export VNET_NAME=bdc-vnet
export AKS_NAME=< your aks private cluster name >
az group create -n $RESOURCE_GROUP -l $REGION_NAME
az network vnet create \
--resource-group $RESOURCE_GROUP \
--location $REGION_NAME \
--name $VNET_NAME \
--address-prefixes 10.0.0.0/8 \
--subnet-name $SUBNET_NAME \
--subnet-prefix 10.1.0.0/16
SUBNET_ID=$(az network vnet subnet show \
--resource-group $RESOURCE_GROUP \
--vnet-name $VNET_NAME \
--name $SUBNET_NAME \
--query id -o tsv)
echo $SUBNET_ID
## will be displayed something similar as the following:
/subscriptions/xxxx-xxxx-xxx-xxxx-xxxxxxxx/resourceGroups/your-bdc-rg/providers/Microsoft.Network/virtualNetworks/your-aks-vnet/subnets/your-aks-subnet
Создание частного кластера AKS с расширенными сетевыми возможностями (CNI)
Чтобы перейти к следующему шагу, необходимо подготовить к работе кластер AKS со стандартным средством балансировки нагрузки и включенной функцией частного кластера. Команда будет выглядеть следующим образом:
az aks create \
--resource-group $RESOURCE_GROUP \
--name $AKS_NAME \
--load-balancer-sku standard \
--enable-private-cluster \
--network-plugin azure \
--vnet-subnet-id $SUBNET_ID \
--docker-bridge-address 172.17.0.1/16 \
--dns-service-ip 10.2.0.10 \
--service-cidr 10.2.0.0/24 \
--node-vm-size Standard_D13_v2 \
--node-count 2 \
--generate-ssh-keys
После успешного развертывания можно переходить к группе ресурсов <MC_yourakscluster>
, после чего обнаружится, что kube-apiserver
является частной конечной точкой. См., например, следующий раздел.
Подключение к кластеру AKS
az aks get-credentials -n $AKS_NAME -g $RESOURCE_GROUP
Создание профиля развертывания для Кластера больших данных
После подключения к кластеру AKS можно приступить к развертыванию BDC, а также подготовить переменную среды и запустить развертывание:
azdata bdc config init --source aks-dev-test --target private-bdc-aks --force
Создание и настройка настраиваемого профиля развертывания BDC:
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.docker.imageTag=2019-CU6-ubuntu-16.04"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.storage.data.className=default"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.storage.logs.className=default"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.endpoints[1].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/bdc.json -j "$.spec.resources.master.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/bdc.json -j "$.spec.resources.gateway.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/bdc.json -j "$.spec.resources.appproxy.spec.endpoints[0].serviceType=NodePort"
Развертывание частного кластера больших данных SQL Server с высоким уровнем доступности
В случае развертывания Кластера больших данных SQL Server (SQL-BDC) с высоким уровнем доступности будет использоваться профиль развертывания aks-dev-test-ha
. После успешного развертывания можно использовать ту же команду kubectl get svc
, чтобы создать дополнительную службу master-secondary-svc
. Следует настроить ServiceType
как NodePort
. Оставшиеся шаги мало отличаются от упомянутых в предыдущем разделе.
В следующем примере ServiceType
задается как NodePort
:
azdata bdc config replace -c private-bdc-aks /bdc.json -j "$.spec.resources.master.spec.endpoints[1].serviceType=NodePort"
Развертывание BDC в частном кластере AKS
export AZDATA_USERNAME=<your bdcadmin username>
export AZDATA_PASSWORD=< your bdcadmin password>
azdata bdc create --config-profile private-bdc-aks --accept-eula yes
Проверка состояния развертывания
Развертывание займет несколько минут. Для проверки состояния развертывания можно использовать следующую команду:
kubectl get pods -n mssql-cluster -w
Проверка состояния службы
Используйте следующую команду для проверки служб. Убедитесь, что все они работоспособны без внешних IP-адресов:
kubectl get services -n mssql-cluster
См. раздел управление кластером больших данных в частном кластере AKS, а затем выполните следующие действия, чтобы подключиться к кластеру больших данных SQL Server.
Сведения о скриптах автоматизации для этого сценария см. на странице репозитория примеров SQL Server на сайте GitHub.
Связанный контент
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по