kkolk.mssql

kkolk.mssql

Opis

Ta rola Ansible zainstaluje instancję SQL Server Developer Edition 2017 na obsługiwanych platformach Windows. Można ją dostosować do instalacji dowolnej wspieranej wersji SQL Server. Użyłem jej wariantów do instalacji SQL Server 2012/2014.

Ta rola także zajmuje się lokalnymi zmianami w zaporze, jeśli jest to wymagane, oraz pokazuje, jak dostosować konfigurację instancji SQL.

Używając domyślnych wartości, jest zaprojektowana do działania jako rola, którą można dodać do serwera członkowskiego w środowisku testowym Windows, które opisałem w serii postów na http://frostbyte.us/configure-an-ansible-testing-system-on-windows-part-1/

Wymagania

Na docelowym hoście powinien być zainstalowany PowerShell 5.0 / WMF 5.1.

Można to zrobić w dwóch krokach:

# Najnowszy PowerShell daje nam większą elastyczność w używaniu elementów Windows DSC
- name: Windows | Zainstaluj 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 wymaga restartu, więc zróbmy to, jeśli jest potrzebny.
- name: Windows | Restartuj, aby zakończyć instalację PowerShell 5.0
  win_reboot:
    # Dajemy Windows godzinę na ponowne uruchomienie.
    reboot_timeout: 3600
    post_reboot_delay: 60
  when: check_powershell5.changed

Zmienne roli

# źródło plików instalacyjnych
mssql_installation_source: https://go.microsoft.com/fwlink/?linkid=853016

# Ścieżka do pobrania mediów instalacyjnych
mssql_installation_path: C:\SQLInstall

# Tymczasowa ścieżka do przechowywania pobranych plików
mssql_temp_download_path: C:\tmp

# szczegóły instancji
mssql_instance_name: Test
mssql_drive: C
mssql_userdbvol_name: Userdbvol01
mssql_port: 1433

### Konfiguracja pamięci ###
# pamięć w MB
# wartości muszą być podzielne przez 512

# Maksymalna pamięć przydzielona tej instancji
mssql_max_server_memory: 1024

# Pamięć rezerwowana dla systemu operacyjnego
mssql_os_memory_reservation: 512

# Całkowita pamięć systemowa 
mssql_total_system_memory: "{{ mssql_max_server_memory + mssql_os_memory_reservation }}"

# Wstrzymaj ponowne uruchomienia, które mogą wystąpić podczas zadań instalacji SQL
# chcesz ustawić to na True, jeśli pracujesz na wrażliwym systemie:
mssql_suppress_reboot: False

### Konta serwisowe ###

# Konto serwisowe SQL
# wyrażenia regex używane w niektórych krokach oczekują formatu CONTOSO\
# nie używaj @CONTOSO.com dla tych kont, ponieważ instalacja SQL się nie powiedzie
mssql_sqlsvc_account: CONTOSO\sql_svc
mssql_sqlsvc_account_pass: MyPlainTextPassWord01

# Konto serwisowe SQL Agenta
mssql_agentsvc_account: CONTOSO\sql_agt
mssql_agentsvc_account_pass: MyPlainTextPassWord01

# Konto usługi analizy SQL
mssql_assvc_account: "{{ mssql_sqlsvc_account }}"
mssql_assvc_account_pass: "{{ mssql_sqlsvc_account_pass }}"

### Ścieżki do plików i folderów ###

# ścieżki wolumenów
mssql_userdbvol_path: "{{ mssql_drive }}:\\{{ mssql_userdbvol_name }}"
mssql_db_accesspath: "{{ mssql_userdbvol_path }}\\DatabaseFiles"
mssql_logs_accesspath: "{{ mssql_userdbvol_path }}\\DatabaseLogs"

# ścieżki plików wspólnych
mssql_installshared_path: C:\Program Files\Microsoft SQL Server
mssql_installsharedwow_path: C:\Program Files (x86)\Microsoft SQL Server

# ścieżka instancji
mssql_instance_path: "C:\\Program Files\\Microsoft SQL Server\\{{ mssql_instance_name }}"

# Ścieżki do danych DB i logowania
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 }}"

# tryb zabezpieczeń - SQL oznacza uwierzytelnianie mieszane, a Windows oznacza uwierzytelnianie Windows.
mssql_security_mode: sql

# hasło użytkownika SA, jeśli tryb zabezpieczeń jest ustawiony na 'SQL'
# domyślnie do testów będziemy leniwi i użyjemy hasła konta serwisowego,
# ale w systemach na żywo powinieneś użyć czegoś innego:
mssql_sa_password: "{{ mssql_sqlsvc_account_pass }}"

# funkcje - lista funkcji do zainstalowania oddzielona przecinkami
# przykład:   
# mssql_features: SQLENGINE,AS
# Lista funkcji poniżej nie została przetestowana, niektóre mogą nie działać z DSC
#
# Lista funkcji: 
#
# Silnik bazy danych = SQLENGINE
# Replikacja = REPLICATION
# Pełnotekstowe i semantyczne ekstrakcje dla wyszukiwania = FULLTEXT
# Usługi jakości danych = DQ
# Usługi analizy = AS
# Usługi raportowe – natywne = RS
# Usługi raportowe – sharepoint = RS_SHP
# Dodatek dla produktów SharePoint = RS_SHPWFE
# Klient do jakości danych = DQC
# Narzędzia do danych SQL = BIDS
# Narzędzia klienckie łączności = CONN
# Usługi integracyjne = IS
# Narzędzia klienckie zgodność wstecz = BC
# Narzędzia SDK = SDK
# Komponenty dokumentacji = BOL
# Narzędzia zarządzające – podstawowe = SSMS
# Narzędzia zarządzające – zaawansowane = ADV_SSMS
# Kontroler odtwarzania rozproszonego = DREPLAY_CTLR
# Klient odtwarzania rozproszonego = DREPLAY_CLT
# SDK łączności klienta SQL = SNAC_SDK
# Usługi danych głównych = MDS
# ADVANCEDANALYTICS  Instalacja usług R, wymaga silnika bazy danych. W automatycznych instalacjach wymaga parametru /IACCEPTROPENLICENSETERMS.

mssql_features: SQLENGINE,FULLTEXT,CONN

# Kolaacja
mssql_collation: SQL_Latin1_General_CP1_CI_AS

# Tryb uruchamiania usługi przeglądarki
# Określa tryb uruchamiania dla usługi przeglądarki SQL Server. { Automatyczny | Wyłączony | 'Ręczny' }
mssql_browsersvc_mode: Automatyczny

# Dostęp do konta domyślnego
# Ansible_Admin musi być uwzględniony, aby skrypt mógł wprowadzać zmiany konfiguracyjne po instalacji
mssql_sysadmin_accounts: 
  - CONTOSO\Domain Admins
  - CONTOSO\Administrator

# Administratorzy usługi analizy (jeśli zainstalowane)
mssql_asadmin_accounts: "{{ mssql_sysadmin_accounts }}"

# Opcje strojenia

# Kiedy instancja SQL Server działa na komputerze, który ma więcej niż jeden mikroprocesor lub CPU,
# wykrywa najlepszy stopień równoległości, czyli liczbę procesorów używanych do uruchamiania pojedynczego zapytania,
# dla każdego równoległego wykonania planu. Możesz użyć opcji maksymalnego stopnia równoległości, aby ograniczyć liczbę procesorów
# używanych w równoległym wykonaniu planu.
#
# Jeśli opcja maski affinności nie jest ustawiona na domyślną, może ograniczyć liczbę procesorów dostępnych dla
# SQL Server w systemach przetwarzania symetrycznego (SMP).
#
# Aby umożliwić serwerowi określenie maksymalnego stopnia równoległości, ustaw tę opcję na 0, domyślną wartość.
#
# Zobacz: 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

# Minimalna pamięć do przydzielania SQL
#
# Powinna pozostać 0 w większości przypadków.
#
# zobacz: Optymalizacja wydajności serwera przy użyciu opcji konfiguracji pamięci
# https://technet.microsoft.com/en-us/library/ms177455(v=sql.105).aspx
#
# Opcja konfiguracji pamięci minimalnej serwera może być użyta, aby zapewnić, że
# SQL Server nie zwolni pamięci poniżej skonfigurowanej minimalnej pamięci serwera
# po osiągnięciu tego progu. Ta opcja konfiguracyjna może być ustawiona na określoną wartość
# w zależności od rozmiaru i aktywności twojego SQL Server. Jeśli zdecydujesz się ustawić tę wartość,
# ustaw ją na jakąś rozsądną wartość, aby upewnić się, że system operacyjny nie żąda zbyt
# dużo pamięci od SQL Server, co może wpłynąć na wydajność SQL Server.
mssql_min_server_memory: 0

Przykładowy skrypt

- name: SQL Server
  hosts: sql_server
  tags: mssql

  roles:
  - { role: kkolk.mssql }

Licencja

BSD / MIT

Informacje o autorze

Kevin Kolk - http://www.frostbyte.us

O projekcie

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

Zainstaluj
ansible-galaxy install kkolk.mssql
Licencja
Unknown
Pobrania
515
Właściciel