mssql

kkolk.mssql

Описание

Эта роль Ansible установит экземпляр SQL Server Developer Edition 2017 на поддерживаемых платформах Windows. Эту роль можно настроить для установки любой поддерживаемой версии SQL Server. Я использовал ее изменённые варианты для установки SQL Server 2012/2014.

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

Используя значения по умолчанию, она предназначена для работы как роль, которую можно добавить к серверу-члену в тестовой среде Windows, описанной в серии постов на http://frostbyte.us/configure-an-ansible-testing-system-on-windows-part-1/

Требования

На целевом хосте должна быть установлена Powershell 5.0 / WMF 5.1.

Вы можете сделать это в два шага:

# Последняя версия Powershell дает нам больше гибкости в использовании элементов Windows DSC
- name: Windows | Установить Powershell 5.0
  win_chocolatey:
    name: "powershell"
  register: check_powershell5
  become: yes
  become_user: Administrator
  become_method: runas
  retries: 3
  delay: 10

# Powershell 5.0 требует перезагрузки, поэтому сделаем это, если необходимо.
- name: Windows | Перезагрузить для завершения установки Powershell 5.0
  win_reboot:
    # Мы дадим Windows полный час для перезагрузки.
    reboot_timeout: 3600
    post_reboot_delay: 60
  when: check_powershell5.changed

Переменные роли

# источник установочных файлов 
mssql_installation_source: https://go.microsoft.com/fwlink/?linkid=853016

# Путь для загрузки установочных медиа
mssql_installation_path: C:\SQLInstall

# Временный путь для хранения загрузчика
mssql_temp_download_path: C:\tmp

# детали экземпляра
mssql_instance_name: Test
mssql_drive: C
mssql_userdbvol_name: Userdbvol01
mssql_port: 1433

### Конфигурация памяти ###
# память в МБ
# значения должны быть кратны 512

# Максимальная память, выделенная для этого экземпляра
mssql_max_server_memory: 1024

# Память, резервируемая для ОС
mssql_os_memory_reservation: 512

# Общая память системы 
mssql_total_system_memory: "{{ mssql_max_server_memory + mssql_os_memory_reservation }}"

# Скрытие перезагрузок, которые могут произойти во время задач настройки SQL
# вы захотите установить это значение в True, если работаете на чувствительной системе:
mssql_suppress_reboot: False

### Учетные записи служб ###

# Учетная запись службы SQL
# в некоторых шагах используются регулярные выражения, ожидающие формат CONTOSO\
# не используйте @CONTOSO.com для этих учетных записей, так как установка SQL завершится с ошибкой
mssql_sqlsvc_account: CONTOSO\sql_svc
mssql_sqlsvc_account_pass: MyPlainTextPassWord01

# Учетная запись службы агента SQL
mssql_agentsvc_account: CONTOSO\sql_agt
mssql_agentsvc_account_pass: MyPlainTextPassWord01

# Учетная запись служб аналитики SQL
mssql_assvc_account: "{{ mssql_sqlsvc_account }}"
mssql_assvc_account_pass: "{{ mssql_sqlsvc_account_pass }}"

### Пути к файлам и папкам ###

# пути к разделам
mssql_userdbvol_path: "{{ mssql_drive }}:\\{{ mssql_userdbvol_name }}"
mssql_db_accesspath: "{{ mssql_userdbvol_path }}\\DatabaseFiles"
mssql_logs_accesspath: "{{ mssql_userdbvol_path }}\\DatabaseLogs"

# пути к общим файлам
mssql_installshared_path: C:\Program Files\Microsoft SQL Server
mssql_installsharedwow_path: C:\Program Files (x86)\Microsoft SQL Server

# путь к экземпляру
mssql_instance_path: "C:\\Program Files\\Microsoft SQL Server\\{{ mssql_instance_name }}"

# Пути к SQL DB и логированию
mssql_sqlinstalldata_path: "{{ mssql_db_accesspath }}\\{{mssql_instance_name }}"
mssql_sqluserdata_path: "{{ mssql_db_accesspath }}\\{{ mssql_instance_name }}"
mssql_sqluserlog_path: "{{ mssql_logs_accesspath }}\\{{ mssql_instance_name }}"
mssql_sqltempDB_path: "C:\\TempDBFiles\\Data\\{{mssql_instance_name }}"
mssql_sqltempDBlog_path: "C:\\TempDBFiles\\Log\\{{ mssql_instance_name }}"

# режим безопасности - SQL указывает на совместимую с Службой аутентификацию, в то время как Windows указывает на аутентификацию Windows.
mssql_security_mode: sql

# пароль пользователя SA, если режим безопасности установлен на 'SQL'
# по умолчанию для тестирования мы будем использовать пароль учетной записи службы,
# но на рабочих системах вы должны использовать что-то другое:
mssql_sa_password: "{{ mssql_sqlsvc_account_pass }}"

# функции - Список функций, которые нужно установить через запятую
#
# пример:   
# mssql_features: SQLENGINE,AS
# 
# Список функций ниже не протестирован, некоторые могут не работать с DSC
#
# Список функций: 
#
# Двигатель базы данных = SQLENGINE
# Репликация = REPLICATION
# Полнотекстовый и семантический анализ для поиска = FULLTEXT
# Службы качества данных = DQ
# Службы анализа = AS
# Службы отчетности – родные = RS
# Отчеты – SharePoint = RS_SHP
# Дополления служб отчетности для продуктов SharePoint = RS_SHPWFE
# Клиент качества данных = DQC
# Инструменты данных SQL = BIDS
# Инструменты подключения клиента = CONN
# Интеграционные службы = IS
# Инструменты подключения клиента для обратной совместимости = BC
# Инструменты SDK = SDK
# Компоненты документации = BOL
# Инструменты управления – базовые = SSMS
# Инструменты управления – расширенные = ADV_SSMS
# Дистрибутивный контроль переработки = DREPLAY_CTLR
# Дистрибутивный клиент переработки = DREPLAY_CLT
# SDK подключения клиента SQL = SNAC_SDK
# Службы мастер-данных = MDS
# ADVANCEDANALYTICS 	Устанавливает R Services, требует двигателя базы данных. Установки без наблюдения требуют параметр /IACCEPTROPENLICENSETERMS.

mssql_features: SQLENGINE,FULLTEXT,CONN

# Сортировка
mssql_collation: SQL_Latin1_General_CP1_CI_AS

# Режим запуска службы браузера
# Указывает режим запуска службы браузера SQL Server. { Автоматически | Отключено | 'Вручную' }
mssql_browsersvc_mode: Automatic

# Доступ по умолчанию
# Ansible_Admin должен быть включен, чтобы плейбук мог вносить изменения в конфигурацию после установки
mssql_sysadmin_accounts: 
  - CONTOSO\Domain Admins
  - CONTOSO\Administrator

# Администраторы служб анализа (если установлены)
mssql_asadmin_accounts: "{{ mssql_sysadmin_accounts }}"

# Опции настройки

# Когда экземпляр SQL Server работает на компьютере с несколькими процессорами или ЦП, 
# он автоматически определяет наилучший уровень параллелизма, то есть количество процессоров, используемых для выполнения 
# отдельного оператора в каждой параллельной планировке. Вы можете использовать параметр максимального уровня параллелизма, 
# чтобы ограничить количество процессоров, которые будут использоваться в параллельном выполнении плана. 
#
# Если параметр маски аффинности не установлен по умолчанию, он может ограничить количество доступных процессоров 
# для SQL Server на системах с симметричной многопроцессорностью (SMP). 
#
# Для того чтобы сервер мог определить максимальный уровень параллелизма, установите этот параметр на 0 — значение по умолчанию. 
#
# См: https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/configure-the-max-degree-of-parallelism-server-configuration-option
mssql_max_degree_of_parallelism: 0

# Минимальная память для выделения SQL
#
# В большинстве случаев должно оставаться равным 0.
#
# см: Оптимизация производительности сервера с помощью параметров настройки памяти
# https://technet.microsoft.com/en-us/library/ms177455(v=sql.105).aspx
#
# Параметр конфигурации минимальной памяти сервера можно использовать, чтобы 
# гарантировать, что SQL Server не освободит память ниже установленного минимума 
# после достижения этого порога. Этот параметр можно установить на конкретное значение 
# в зависимости от размера и активности вашего SQL Server. Если вы решите установить это значение, 
# установите его на какое-то разумное значение, чтобы гарантировать, что операционная система не запрашивает слишком 
# много памяти у SQL Server, что может повлиять на производительность SQL Server.
mssql_min_server_memory: 0

Пример плейбука

- name: SQL Server
  hosts: sql_server
  tags: mssql

  roles:
  - { role: kkolk.mssql }

Лицензия

BSD / MIT

Информация об авторе

Кевин Колк - http://www.frostbyte.us

О проекте

Ansible role will install a SQL Server Developer Edition 2017 instance on supported Windows platforms.

Установить
ansible-galaxy install kkolk/mssql
Лицензия
Unknown
Загрузки
505
Владелец