kkolk.mssql

kkolk.mssql

Beschreibung

Diese Ansible-Rolle installiert eine SQL Server Developer Edition 2017-Instanz auf unterstützten Windows-Plattformen. Diese Rolle kann angepasst werden, um jede unterstützte SQL Server-Installation zu installieren. Ich habe Varianten davon verwendet, um SQL Server 2012/2014 zu installieren.

Diese Rolle kümmert sich auch um Änderungen der lokalen Firewall nach Bedarf und zeigt, wie man Konfigurationseinstellungen für die SQL-Instanz anpasst.

Mit den Standardwerten ist sie so konzipiert, dass sie als Rolle funktioniert, die zum Mitgliedsserver in der von mir über eine Reihe von Beiträgen auf http://frostbyte.us/configure-an-ansible-testing-system-on-windows-part-1/ dargestellten Windows-Testumgebung hinzugefügt werden kann.

Anforderungen

Powershell 5.0 / WMF 5.1 sollte auf dem Zielhost installiert sein.

Dies kann in zwei Schritten durchgeführt werden mit:

# Die neueste Powershell gibt uns mehr Flexibilität bei der Verwendung von Windows DSC-Elementen
- name: Windows | Powershell 5.0 installieren
  win_chocolatey:
    name: "powershell"
  register: check_powershell5
  become: yes
  become_user: Administrator
  become_method: runas
  retries: 3
  delay: 10

# Powershell 5.0 erfordert einen Neustart, also lassen Sie uns das erledigen, wenn es notwendig ist.
- name: Windows | Neustart, um die Installation von Powershell 5.0 abzuschließen
  win_reboot:
    # Wir geben Windows eine volle Stunde zum Neustarten.
    reboot_timeout: 3600
    post_reboot_delay: 60
  when: check_powershell5.changed

Rollenvariablen

# Quelle der Installationsdateien 
mssql_installation_source: https://go.microsoft.com/fwlink/?linkid=853016

# Pfad zum Herunterladen des Installationsmediums
mssql_installation_path: C:\SQLInstall

# Temporärer Pfad zum Speichern des Downloads
mssql_temp_download_path: C:\tmp

# Instanzdetails
mssql_instance_name: Test
mssql_drive: C
mssql_userdbvol_name: Userdbvol01
mssql_port: 1433

### Speicherkonfiguration ###
# Speicher in MB
# Werte müssen durch 512 teilbar sein

# Maximaler Speicher, der dieser Instanz zugewiesen werden soll
mssql_max_server_memory: 1024

# Speicher, der für das Betriebssystem reserviert werden soll
mssql_os_memory_reservation: 512

# Gesamter Systemspeicher 
mssql_total_system_memory: "{{ mssql_max_server_memory + mssql_os_memory_reservation }}"

# Unterdrücken von Neustarts, die während der SQL-Setup-Aufgaben auftreten können
# Sie sollten dies auf True setzen, wenn Sie an einem sensiblen System arbeiten:
mssql_suppress_reboot: False

### Dienstkonten ###

# SQL-Dienstkonto
# Regex-Aussagen, die in einigen Schritten verwendet werden, erwarten das Format CONTOSO\
# Verwenden Sie kein @CONTOSO.com für diese Konten, da die SQL-Installation fehlschlägt
mssql_sqlsvc_account: CONTOSO\sql_svc
mssql_sqlsvc_account_pass: MyPlainTextPassWord01

# SQL-Agent-Dienstkonto
mssql_agentsvc_account: CONTOSO\sql_agt
mssql_agentsvc_account_pass: MyPlainTextPassWord01

# SQL-Analysetools-Konto
mssql_assvc_account: "{{ mssql_sqlsvc_account }}"
mssql_assvc_account_pass: "{{ mssql_sqlsvc_account_pass }}"

### Datei- und Ordnerpfade ###

# Volumenpfade
mssql_userdbvol_path: "{{ mssql_drive }}:\\{{ mssql_userdbvol_name }}"
mssql_db_accesspath: "{{ mssql_userdbvol_path }}\\DatabaseFiles"
mssql_logs_accesspath: "{{ mssql_userdbvol_path }}\\DatabaseLogs"

# Gemeinsame Dateipfade
mssql_installshared_path: C:\Program Files\Microsoft SQL Server
mssql_installsharedwow_path: C:\Program Files (x86)\Microsoft SQL Server

# Instanzpfad
mssql_instance_path: "C:\\Program Files\\Microsoft SQL Server\\{{ mssql_instance_name }}"

# SQL DB- und Protokollpfade
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 }}"

# Sicherheitsmodus - SQL steht für gemischte Authentifizierung, während Windows Windows-Authentifizierung bedeutet.
mssql_security_mode: sql

# SA-Benutzerpasswort, wenn der Sicherheitsmodus auf 'SQL' gesetzt ist
# Standardmäßig für Tests verwenden wir faul das Passwort des Dienstkontos,
# aber in produktiven Systemen sollten Sie etwas anderes verwenden:
mssql_sa_password: "{{ mssql_sqlsvc_account_pass }}"

# Funktionen - Komma-getrennte Liste der zu installierenden Funktionen
#
# Beispiel:   
# mssql_features: SQLENGINE,AS
# 
# Die folgende Liste von Funktionen wurde nicht getestet, einige funktionieren möglicherweise nicht mit DSC
#
# Funktionenliste: 
#
# Datenbank-Engine = SQLENGINE
# Replikation = REPLICATION
# Volltext- und semantische Extraktionen für die Suche = FULLTEXT
# Datenqualitätsdienste = DQ
# Analysedienste = AS
# Berichterstattungsdienste - nativ = RS
# Berichterstattungsdienste – SharePoint = RS_SHP
# Berichterstattungsdienste-Add-In für SharePoint-Produkte = RS_SHPWFE
# Datenqualitäts-Client = DQC
# SQL Server-Datenwerkzeuge = BIDS
# Clientwerkzeuge-Konnektivität = CONN
# Integrationsdienste = IS
# Clientwerkzeuge-Rückwärtskompatibilität = BC
# Clientwerkzeuge-SDK = SDK
# Dokumentationskomponenten = BOL
# Verwaltungswerkzeuge – Basis = SSMS
# Verwaltungswerkzeuge – Erweitert = ADV_SSMS
# Verteilte Wiedergabe-Controller = DREPLAY_CTLR
# Verteilte Wiedergabe-Client = DREPLAY_CLT
# SQL-Client-Konnektivität-SDK = SNAC_SDK
# Master-Daten-Dienste = MDS
# ADVANCEDANALYTICS 	Installiert R-Dienste, benötigt die Datenbank-Engine. Unattended-Installationen erfordern den Parameter /IACCEPTROPENLICENSETERMS.   

mssql_features: SQLENGINE,FULLTEXT,CONN

# Sortierung
mssql_collation: SQL_Latin1_General_CP1_CI_AS

# Startmodus des Browserservices
# Gibt den Startmodus für den SQL Server Browserservice an. { Automatisch | Deaktiviert | 'Manuell' }
mssql_browsersvc_mode: Automatisch

# Zugriff auf Standardkonten
# Ansible_Admin muss enthalten sein, damit das Playbook nach der Installation Konfigurationsänderungen vornehmen kann
mssql_sysadmin_accounts: 
  - CONTOSO\Domain Admins
  - CONTOSO\Administrator

# Verwaltungsdienste (wenn installiert)
mssql_asadmin_accounts: "{{ mssql_sysadmin_accounts }}"

# Optimierungsoptionen

# Wenn eine Instanz von SQL Server auf einem Computer mit mehr als einem Mikroprozessor oder CPU läuft, 
# erkennt sie den besten Grad der Parallelität, das heißt, die Anzahl der Prozessoren, die zum Ausführen einer einzelnen Anweisung verwendet werden, 
# für jede parallele Plan-Ausführung. Sie können die maximale Grad-der-Parallelitätsoption verwenden, um die Anzahl der Prozessoren 
# zu begrenzen, die in der parallelen Plan-Ausführung verwendet werden. 
#
# Wenn die Affinitätsmaske nicht auf den Standardwert gesetzt ist, kann dies die Anzahl der Prozessoren einschränken, die 
# SQL Server auf symmetrischen Multiprocessing (SMP)-Systemen zur Verfügung hat. 
#
# Um dem Server zu ermöglichen, den maximalen Grad der Parallelität zu bestimmen, setzen Sie diese Option auf 0, den Standardwert. 
#
# Siehe: 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

# Minimaler Speicher, der SQL zugewiesen werden soll
#
# Sollte in den meisten Fällen 0 bleiben.
#
# siehe: Optimierung der Serverleistung mit Speicheroptionen
# https://technet.microsoft.com/en-us/library/ms177455(v=sql.105).aspx
#
# Die minimale Serverspeicherkonfigurationsoption kann verwendet werden, um sicherzustellen, dass 
# SQL Server keinen Speicher unterhalb des konfigurierten minimalen Serverspeichers freigibt, 
# sobald dieser Schwellenwert erreicht ist. Diese Konfigurationsoption kann auf einen bestimmten Wert gesetzt werden 
# basierend auf der Größe und Aktivität Ihres SQL Servers. Wenn Sie entscheiden, diesen Wert festzulegen, 
# setzen Sie ihn auf einen angemessenen Wert, um sicherzustellen, dass das Betriebssystem SQL Server nicht zu viel 
# Speicher anfordert, was die Leistung von SQL Server beeinträchtigen kann.
mssql_min_server_memory: 0

Beispiel-Playbook

- name: SQL Server
  hosts: sql_server
  tags: mssql

  roles:
  - { role: kkolk.mssql }

Lizenz

BSD / MIT

Autoreninformation

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

Über das Projekt

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

Installieren
ansible-galaxy install kkolk.mssql
Lizenz
Unknown
Downloads
515
Besitzer