gebeurtenis
31 mrt, 23 - 2 apr, 23
De grootste SQL-, Fabric- en Power BI-leerevenement. 31 maart – 2 april. Gebruik code FABINSIDER om $ 400 te besparen.
Zorg dat u zich vandaag nog registreertDeze browser wordt niet meer ondersteund.
Upgrade naar Microsoft Edge om te profiteren van de nieuwste functies, beveiligingsupdates en technische ondersteuning.
van toepassing op:SQL Server- - Linux
In deze quickstart doorloopt u de stappen voor het automatiseren van een SQL Server op Linux-implementatie op virtuele Azure-machines met behulp van een Ansible--playbook.
Ansible- is een opensource-product waarmee cloudinrichting, configuratiebeheer en toepassingsimplementaties worden geautomatiseerd.
Ansible playbooks stellen u in staat Ansible te instrueren om uw omgeving te configureren. Playbooks worden gecodeerd met YAML, zodat ze leesbaar zijn voor mensen.
Een Azure-abonnement. Als u geen Azure-abonnement hebt, kunt u een gratis account maken.
Maak een nieuwe resourcegroep met behulp van Azure CLI, die drie virtuele Azure-machines (VM's) bevat:
een Azure VM-maken, waarop Red Hat Enterprise Linux (RHEL) 8.5 of hoger wordt uitgevoerd. Deze VM wordt het controllerknooppunt.
Een Azure-VM maken, waarop RHEL wordt uitgevoerd, om te fungeren als het eerste beheerde knooppunt.
een Azure VM-maken, waarop Ubuntu Server wordt uitgevoerd, om te fungeren als het tweede beheerde knooppunt.
De eerste VM, waar u Ansible Core configureert, is het controllerknooppunt. Op dit knooppunt installeert u de SQL Server-systeemrol.
De resterende VM's zijn de doelmachines, ook wel bekend als beheerde knooppunten, voor het implementeren en configureren van SQL Server met behulp van de systeemrol.
Vanaf RHEL 8.x op Virtuele Azure-machines kan het ansible-core
-pakket worden geïnstalleerd vanuit de vooraf geconfigureerde AppStream-opslagplaats. U kunt Ansible Core installeren op het controllerknooppunt met behulp van de volgende opdracht:
sudo yum install ansible-core
U kunt controleren of de installatie is geslaagd met de volgende opdracht:
ansible --version
U ziet uitvoer die vergelijkbaar is met het volgende voorbeeld:
ansible [core 2.12.2]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/<user>/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.8/site-packages/ansible
ansible collection location = /home/<user>/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.8.12 (default, Sep 16 2021, 10:46:05) [GCC 8.5.0 20210514 (Red Hat 8.5.0-3)]
jinja version = 2.10.3
libyaml = true
Ansible maakt een hosts
bestand in de map /etc/ansible
. Bewerk dit bestand met behulp van uw favoriete editor om de details van het beheerde knooppunt toe te voegen, hetzij als groepsvermelding of als niet-gegroepeerde vermeldingen. Zie How to build your inventoryvoor meer informatie over het maken van uw eigen inventaris.
In dit voorbeeld, met gebruik van het hosts
-bestand, is het IP-adres voor het eerste beheerde knooppunt 10.0.0.12 en het IP-adres voor het tweede beheerde knooppunt 10.0.0.14.
# This is the default ansible 'hosts' file.
#
# It should live in /etc/ansible/hosts
#
# - Comments begin with the '#' character
# - Blank lines are ignored
# - Groups of hosts are delimited by [header] elements
# - You can enter hostnames or ip addresses
# - A hostname/ip can be a member of multiple groups
10.0.0.12
10.0.0.14
U moet een SSH-verbinding (Secure Shell) configureren tussen het controllerknooppunt en alle beheerde knooppunten waarop SQL Server moet worden geïnstalleerd.
Als SSH al is geconfigureerd, kunt u deze stap overslaan.
Gebruik de opdracht ssh-keygen
om SSH-sleutels te genereren. Wanneer u de opdracht uitvoert, wordt u gevraagd de standaardwaarden te accepteren. Als u klaar bent, hebt u een persoonlijk en openbaar sleutelpaar.
Op elk beheerd knooppunt moet u de openbare sleutel kopiëren van het controllerknooppunt dat u zojuist hebt gemaakt, met behulp van de opdracht ssh-copy-id
. Als u de doelmap op het beheerde knooppunt wilt opgeven, kunt u de parameter -i
gebruiken.
In de volgende opdracht kan het user
-account hetzelfde account zijn dat u voor elk beheerd knooppunt hebt geconfigureerd bij het maken van de virtuele machine. U kunt ook het root
-account gebruiken, maar dit wordt niet aanbevolen in een productieomgeving.
sudo ssh-copy-id user@10.0.0.12
sudo ssh-copy-id user@10.0.0.14
Gebruik de opdracht ssh
van het controllerknooppunt om te bevestigen dat de openbare SSH-sleutel naar elk knooppunt is gekopieerd. Als u de sleutels correct hebt gekopieerd, wordt u niet om een wachtwoord gevraagd en is de verbinding geslaagd.
ssh user@10.0.0.12
ssh user@10.0.0.14
De Ansible-systeemrol wordt ansible-collection-microsoft-sql
genoemd. Voer op het controllerknooppunt de volgende opdracht uit om de SQL Server-systeemrol te installeren:
sudo yum install ansible-collection-microsoft-sql
Met deze opdracht wordt de SQL Server-rol naar /usr/share/ansible/collections
geïnstalleerd, met de onderstaande bestanden:
-rw-r--r--. 1 user user 7592 Jul 2 20:22 FILES.json
-rw-r--r--. 1 user user 1053 Jul 2 20:22 LICENSE-server
-rw-r--r--. 1 user user 854 Jul 2 20:22 MANIFEST.json
-rw-r--r--. 1 user user 1278 Jul 2 20:22 README.md
drwxr-xr-x. 1 user user 20 Jul 2 20:22 roles
drwxr-xr-x. 1 user user 20 Jul 2 20:22 tests
Nadat u de systeemrol hebt geïnstalleerd, maakt u het YAML-bestand van het SQL Server-playbook. Raadpleeg de documentatie of de README.md opgenomen in de sql Server-systeemrol voor meer informatie over de verschillende rolvariabelen.
In het volgende voorbeeld ziet u een playbookbestand met rolvariabelen die zijn gedefinieerd om SQL Server te configureren en extra functionaliteit in te schakelen:
- hosts: all
vars:
mssql_accept_microsoft_odbc_driver_17_for_sql_server_eula: true
mssql_accept_microsoft_cli_utilities_for_sql_server_eula: true
mssql_accept_microsoft_sql_server_standard_eula: true
mssql_password: "YourP@ssw0rd"
mssql_edition: Evaluation
mssql_enable_sql_agent: true
mssql_install_fts: true
mssql_install_powershell: true
mssql_tune_for_fua_storage: true
roles:
- microsoft.sql.server
Als u SQL Server wilt implementeren op beheerde knooppunten met behulp van het Ansible-playbook, voert u de volgende opdracht uit vanaf het controllerknooppunt.
sudo ansible-playbook -u user playbook.yaml
Met dit proces wordt de uitrol gestart. Aan het einde ziet u een samenvatting van de uitvoering die er ongeveer zo uitziet:
PLAY RECAP *******
10.0.0.12 : ok=31 changed=42 unreachable=0 failed=0 skipped=0 rescued=1 ignored=0
10.0.0.14 : ok=31 changed=42 unreachable=0 failed=0 skipped=0 rescued=1 ignored=0
Als u uw Virtuele Azure-machines niet meer gaat gebruiken, moet u deze verwijderen. Als u de drie VM's in een nieuwe resourcegroep hebt gemaakt, kunt u alle resources in die resourcegroep verwijderen met behulp van Azure CLI-.
gebeurtenis
31 mrt, 23 - 2 apr, 23
De grootste SQL-, Fabric- en Power BI-leerevenement. 31 maart – 2 april. Gebruik code FABINSIDER om $ 400 te besparen.
Zorg dat u zich vandaag nog registreertTraining
Module
SQL Server implementeren in Linux - Training
Meer informatie over vereisten voor het uitvoeren van SQL Server in Linux en de stappen voor het installeren van SQL Server op Linux. Meer informatie over het installeren van opdrachtregelprogramma's.
Certificering
Microsoft Certified: Azure Database Administrator Associate - Certifications
Beheer een SQL Server-databaseinfrastructuur voor cloud-, on-premises en hybride relationele databases met behulp van de relationele Microsoft PaaS-databaseaanbiedingen.
Documentatie
RHEL: Install SQL Server on Linux - SQL Server
This quickstart shows how to install SQL Server on Red Hat Enterprise Linux (RHEL) and then create and query a database with sqlcmd.
Overview of SQL Server on Linux - SQL Server
This article describes how SQL Server runs on Linux and provides information on how to learn more.
Unattended Install for SQL Server on RHEL - SQL Server
Use a sample bash script to install SQL Server on Red Hat Enterprise Linux (RHEL) without interactive input.