Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: SQL Server 2019 (15.x)
Important
Кластеры больших данных Microsoft SQL Server 2019 прекращены. Поддержка кластеров больших данных SQL Server 2019 закончилась с 28 февраля 2025 г. Дополнительные сведения см. в записи блога объявлений и параметрах больших данных на платформе Microsoft SQL Server.
В этой статье объясняется, как развернуть кластер больших данных SQL Server в средах OpenShift, локально или в Azure Red Hat OpenShift (ARO).
Tip
Чтобы быстро загрузить пример среды с помощью ARO, а затем развернуть BDC на этой платформе, можно использовать скрипт Python, доступный здесь.
Кластеры больших данных можно развернуть в локальной среде OpenShift или в Azure Red Hat OpenShift (ARO). Проверьте версию OpenShifts CRI-O по сравнению с протестированными конфигурациями, указанными в заметках о выпуске кластеров больших данных SQL Server. Хотя рабочий процесс развертывания аналогичен развертыванию на других платформах на основе Kubernetes (kubeadm и AKS), существуют некоторые различия. Разница в основном заключается в запуске приложений от имени пользователя, не обладающего правами root, и в контексте безопасности, в котором развертывается пространство имен BDC.
Сведения о развертывании кластера OpenShift в локальной среде см. в документации по Red Hat OpenShift. Для развертываний ARO см. Azure Red Hat OpenShift.
В этой статье описываются шаги развертывания, относящиеся к платформе OpenShift, указываются варианты доступа к целевой среде и пространству имен, которое вы используете для развертывания кластера больших данных.
Pre-requisites
Important
Предварительные условия должны быть выполнены администратором кластера OpenShift (роль кластера cluster-admin), который имеет достаточные разрешения для создания этих объектов уровня кластера. Дополнительные сведения о ролях кластера в OpenShift см. в статье Использование RBAC для определения и применения разрешений.
Убедитесь, что
pidsLimitнастройка OpenShift была обновлена для размещения рабочих нагрузок SQL Server. Значение по умолчанию в OpenShift слишком низко для производственной среды с рабочими нагрузками. Начните по крайней мере с4096, но оптимальное значение зависит отmax worker threadsпараметра в SQL Server и количества процессоров на узле OpenShift.- Чтобы узнать, как обновить
pidsLimitкластер OpenShift, используйте эти инструкции. Обратите внимание, что версии OpenShift до4.3.5имели дефект, из-за которого обновленное значение не вступает в силу. Обязательно обновите OpenShift до последней версии. - Чтобы вычислить оптимальное значение в зависимости от среды и запланированных рабочих нагрузок SQL Server, можно использовать оценку и примеры ниже.
Количество процессоров Максимальное число рабочих потоков по умолчанию Работники по умолчанию на один процессор Минимальное значение pidsLimit 64 512 16 512 + (64 *16) = 1536 128 512 32 512 + (128*32) = 4608 Note
Другие процессы (например, резервные копии, CLR, Fulltext, SQLAgent) также добавляют некоторые издержки, поэтому добавьте буфер в предполагаемое значение.
- Чтобы узнать, как обновить
Скачайте пользовательское ограничение контекста безопасности (SCC):
bdc-scc.yamlcurl https://raw.githubusercontent.com/microsoft/sql-server-samples/master/samples/features/sql-big-data-cluster/deployment/openshift/bdc-scc.yaml -o bdc-scc.yamlПримените SCC к кластеру.
oc apply -f bdc-scc.yamlNote
Пользовательский SCC для BDC основан на встроенном SCC
nonrootв OpenShift и включает дополнительные разрешения. Дополнительные сведения о ограничениях контекста безопасности в OpenShift см. в статье "Управление ограничениями контекста безопасности". Подробные сведения о том, какие дополнительные разрешения необходимы для кластеров больших данных в дополнение кnonrootSCC, скачайте технический документ здесь.Создайте пространство имен или проект:
oc new-project <namespaceName>Привязите пользовательский SCC с учетными записями служб в пространстве имен, в котором развертывается BDC:
oc create clusterrole bdc-role --verb=use --resource=scc --resource-name=bdc-scc -n <namespaceName> oc create rolebinding bdc-rbac --clusterrole=bdc-role --group=system:serviceaccounts:<namespaceName>Назначьте пользователю соответствующее разрешение на развертывание BDC. Выполните одно из следующих действий.
Если пользователь, развертывающий BDC, имеет роль администратора кластера, перейдите к развертыванию кластера больших данных.
Если пользователь, развертывающий BDC, является администратором пространства имен, назначьте локальную роль администратора кластера пользователя для созданного пространства имен. Этот вариант предпочтителен для пользователя, развертывающего и управляющего кластером больших данных, чтобы иметь административные разрешения на уровне пространства имен.
oc create rolebinding bdc-user-rbac --clusterrole=cluster-admin --user=<userName> -n <namespaceName>Затем пользователь, развертывающий кластер больших данных, должен войти в консоль OpenShift:
oc login -u <deployingUser> -p <password>
Развертывание кластера больших данных
Установите последнюю версию azdata.
Клонируйте один из встроенных файлов конфигурации для OpenShift в зависимости от целевой среды (OpenShift в локальной среде или ARO) и сценария развертывания. Сведения о параметрах, относящихся к OpenShift, см. в разделе "Файлы конфигурации развертывания " ниже для параметров, относящихся к OpenShift в встроенных файлах конфигурации. Дополнительные сведения о доступных файлах конфигурации см. в руководстве по развертыванию.
Список всех доступных встроенных файлов конфигурации.
azdata bdc config listЧтобы клонировать один из встроенных файлов конфигурации, выполните следующую команду (при необходимости можно заменить профиль на основе целевой платформы или сценария):
azdata bdc config init --source openshift-dev-test --target custom-openshiftДля развертывания на ARO начните с одного из
aro-профилей, который включает значения по умолчанию дляserviceTypeиstorageClass, подходящие для этой среды. For example:azdata bdc config init --source aro-dev-test --target custom-openshiftНастройте файлы конфигурации control.json и bdc.json. Ниже приведены некоторые дополнительные ресурсы, которые помогут вам выполнить настройки для различных вариантов использования:
Note
Интеграция с идентификатором Microsoft Entra (ранее Azure Active Directory) для BDC не поддерживается, поэтому этот метод проверки подлинности нельзя использовать при развертывании в ARO.
Задание переменных среды
Развертывание кластера больших данных
azdata bdc create --config custom-openshift --accept-eula yesПосле успешного развертывания можно войти в систему и просмотреть список конечных точек внешнего кластера.
azdata login -n mssql-cluster azdata bdc endpoint list
Определенные параметры OpenShift в файлах конфигурации развертывания
SQL Server 2019 CU5 представляет переключатели функций для управления сбором метрик подов и узлов. Эти параметры устанавливаются false по умолчанию в встроенных профилях OpenShift, так как контейнеры мониторинга требуют привилегированного контекста безопасности, что ослабляет некоторые ограничения безопасности для пространства имен, в котором развернут BDC.
"security": {
"allowNodeMetricsCollection": false,
"allowPodMetricsCollection": false
}
Имя класса хранилища по умолчанию в ARO — managed-premium (в отличие от AKS, где класс хранилища по умолчанию называется default). Это можно найти в control.json, соответствующем aro-dev-test и aro-dev-test-ha.
},
"storage": {
"data": {
"className": "managed-premium",
"accessMode": "ReadWriteOnce",
"size": "15Gi"
},
"logs": {
"className": "managed-premium",
"accessMode": "ReadWriteOnce",
"size": "10Gi"
}
Файл bdc-scc.yaml
Файл SCC для этого развертывания:
Next steps
Руководство. Загрузка примеров данных в кластер больших данных SQL Server