SQL Server в контейнерах Linux

Применимо к:SQL Server в Linux

Контейнеры предоставляют упрощенный и переносимый способ выполнения SQL Server на Linux. По сравнению с виртуальными машинами контейнеры запускаются быстрее и упрощают управление жизненным циклом, обеспечивая изоляцию для рабочих нагрузок базы данных.

Почему используются контейнеры

Контейнеры совместно используют операционную систему узла вместо того, чтобы запустить полную гостевую ОС, что снижает нагрузку и обеспечивает быструю подготовку. На узлах Linux можно запускать SQL Server 2017 (14.x) или более поздних версий в качестве контейнеров. Эти контейнеры можно запускать с помощью Docker или других поддерживаемых сред выполнения контейнеров как в автономном режиме, так и под управлением оркестратора.

Контейнеры хорошо подходят для сценариев, требующих быстрого развертывания, согласованности в средах и упрощенных операций.

  • Контейнеры запускаются и масштабируются быстрее, чем виртуальные машины.
  • Одна ОС узла уменьшает административные издержки.
  • Идентичные образы обеспечивают единообразное развертывание в средах разработки, тестирования и эксплуатации.
  • Меньший размер позволяет повысить плотность в совместно используемой инфраструктуре.

Распространенные сценарии использования включают разработку и тестирование, конвейеры CI/CD и облачные или масштабируемые архитектуры.

Get started

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

Установка и настройка

Безопасность и проверка подлинности

Высокая доступность

Orchestration

Для рабочих развертываний используйте оркестратор, например Kubernetes, Azure Kubernetes Service (AKS) или Red Hat OpenShift для управления контейнерами. Оркестраторы отвечают за планирование, масштабирование, мониторинг состояния и восстановление.

Microsoft предоставляет рекомендации и инструменты для запуска контейнеров SQL Server в Kubernetes, включая поддерживаемые образы контейнеров и примеры развертывания.

Рекомендации по хранению

Для баз данных, работающих в контейнерах, требуется постоянное хранилище , которое существует вне жизненного цикла контейнера. В Kubernetes для предоставления такого хранилища обычно используются постоянные тома и запросы на постоянные тома (PVC).

Обычное развертывание включает в себя:

  • Постоянный том для хранения файлов базы данных.
  • Развертывание или StatefulSet, использующее образ контейнера Microsoft SQL Server Linux.
  • Служба или подсистема балансировки нагрузки, которая обеспечивает стабильный сетевой доступ.

При такой конфигурации оркестратор может автоматически перезапускать или заменять контейнеры при сбое узла, а ваши данные сохраняются.