Registrace několika virtuálních počítačů SQL v Azure s rozšířením agenta SQL IaaS
Platí pro: SQL Server na virtuálním počítači Azure
Tento článek popisuje, jak hromadně zaregistrovat virtuální počítače s SQL Serverem v Azure pomocí rozšíření agenta SQL IaaS pomocí rutiny Azure PowerShellu Register-SqlVMs
.
Alternativně můžete ručně zaregistrovat všechny virtuální počítače s SQL Serverem nebo jednotlivé virtuální počítače s SQL Serverem.
Poznámka:
Virtuální počítače s SQL Serverem nasazené přes Azure Marketplace po říjnu 2022 mají ve výchozím nastavení povolený nejméně privilegovaný model . Režimy správy pro rozšíření agenta SQL IaaS byly odebrány v březnu 2023.
Přehled
Tuto Register-SqlVMs
rutinu můžete použít k registraci všech virtuálních počítačů v daném seznamu předplatných, skupin prostředků nebo seznamu konkrétních virtuálních počítačů. Rutina zaregistruje virtuální počítače a pak vygeneruje sestavu i soubor protokolu.
Proces registrace nemá žádné riziko, nemá žádný výpadek a nerestartuje službu SQL Serveru ani virtuální počítač.
Ve výchozím nastavení se virtuální počítače Azure s SQL Serverem 2016 nebo novějším automaticky registrují s rozšířením agenta SQL IaaS při zjištění službou CEIP. Hromadnou registraci můžete použít k registraci všech virtuálních počítačů s SQL Serverem, které služba CEIP nezjistí.
Informace o ochraně osobních údajů najdete v prohlášeních o zásadách ochrany osobních údajů rozšíření agenta SQL IaaS.
Požadavky
K registraci virtuálního počítače s SQL Serverem s rozšířením budete potřebovat následující:
- Předplatné Azure zaregistrované u poskytovatele prostředků Microsoft.SqlVirtualMachine a obsahuje neregistrované virtuální počítače s SQL Serverem.
- Ujistěte se, že je virtuální počítač Azure spuštěný.
- Přihlašovací údaje klienta používané k registraci virtuálních počítačů existují v některé z následujících rolí Azure: Přispěvatel virtuálních počítačů, Přispěvatel nebo Vlastník.
- Az PowerShell 5.0 – verze vyšší než 5.0 aktuálně podporují vícefaktorové ověřování a nejsou kompatibilní se skriptem pro registraci více virtuálních počítačů.
Začínáme
Než budete pokračovat, musíte nejprve vytvořit místní kopii skriptu, importovat ho jako modul PowerShellu a připojit se k Azure.
Vytvoření skriptu
Chcete-li vytvořit skript, zkopírujte celý skript z konce tohoto článku a uložte ho místně jako RegisterSqlVMs.psm1
.
Import skriptu
Po vytvoření skriptu ho můžete importovat jako modul v terminálu PowerShellu.
Otevřete terminál PowerShellu pro správu a přejděte do umístění, kam jste soubor uložili RegisterSqlVMs.psm1
. Pak spuštěním následující rutiny PowerShellu naimportujte skript jako modul:
Import-Module .\RegisterSqlVMs.psm1
Připojení k Azure
Pomocí následující rutiny PowerShellu se připojte k Azure:
Connect-AzAccount
Všechny virtuální počítače v seznamu předplatných
Pomocí následující rutiny zaregistrujte všechny virtuální počítače s SQL Serverem v seznamu předplatných:
Register-SqlVMs -SubscriptionList SubscriptionId1,SubscriptionId2
Příklad výstupu:
Number of subscriptions registration failed for
because you do not have access or credentials are wrong: 1
Total VMs Found: 10
VMs Already registered: 1
Number of VMs registered successfully: 4
Number of VMs failed to register due to error: 1
Number of VMs skipped as VM or the guest agent on VM is not running: 3
Number of VMs skipped as they are not running SQL Server On Windows: 1
Please find the detailed report in file RegisterSqlVMScriptReport1571314821.txt
Please find the error details in file VMsNotRegisteredDueToError1571314821.log
Všechny virtuální počítače v jednom předplatném
Pomocí následující rutiny zaregistrujte všechny virtuální počítače s SQL Serverem v jednom předplatném:
Register-SqlVMs -Subscription SubscriptionId1
Příklad výstupu:
Total VMs Found: 10
VMs Already registered: 1
Number of VMs registered successfully: 5
Number of VMs failed to register due to error: 1
Number of VMs skipped as VM or the guest agent on VM is not running: 2
Number of VMs skipped as they are not running SQL Server On Windows: 1
Please find the detailed report in file RegisterSqlVMScriptReport1571314821.txt
Please find the error details in file VMsNotRegisteredDueToError1571314821.log
Všechny virtuální počítače v několika skupinách prostředků
Pomocí následující rutiny zaregistrujte všechny virtuální počítače s SQL Serverem v několika skupinách prostředků v rámci jednoho předplatného:
Register-SqlVMs -Subscription SubscriptionId1 -ResourceGroupList ResourceGroup1,ResourceGroup2
Příklad výstupu:
Total VMs Found: 4
VMs Already registered: 1
Number of VMs registered successfully: 1
Number of VMs failed to register due to error: 1
Number of VMs skipped as they are not running SQL Server On Windows: 1
Please find the detailed report in file RegisterSqlVMScriptReport1571314821.txt
Please find the error details in file VMsNotRegisteredDueToError1571314821.log
Všechny virtuální počítače ve skupině prostředků
Pomocí následující rutiny zaregistrujte všechny virtuální počítače s SQL Serverem v jedné skupině prostředků:
Register-SqlVMs -Subscription SubscriptionId1 -ResourceGroupName ResourceGroup1
Příklad výstupu:
Total VMs Found: 4
VMs Already registered: 1
Number of VMs registered successfully: 1
Number of VMs failed to register due to error: 1
Number of VMs skipped as VM or the guest agent on VM is not running: 1
Please find the detailed report in file RegisterSqlVMScriptReport1571314821.txt
Please find the error details in file VMsNotRegisteredDueToError1571314821.log
Konkrétní virtuální počítače v jedné skupině prostředků
Pomocí následující rutiny zaregistrujte konkrétní virtuální počítače s SQL Serverem v rámci jedné skupiny prostředků:
Register-SqlVMs -Subscription SubscriptionId1 -ResourceGroupName ResourceGroup1 -VmList VM1,VM2,VM3
Příklad výstupu:
Total VMs Found: 3
VMs Already registered: 0
Number of VMs registered successfully: 1
Number of VMs skipped as VM or the guest agent on VM is not running: 1
Number of VMs skipped as they are not running SQL Server On Windows: 1
Please find the detailed report in file RegisterSqlVMScriptReport1571314821.txt
Please find the error details in file VMsNotRegisteredDueToError1571314821.log
Konkrétní virtuální počítač
K registraci konkrétního virtuálního počítače s SQL Serverem použijte následující rutinu:
Register-SqlVMs -Subscription SubscriptionId1 -ResourceGroupName ResourceGroup1 -Name VM1
Příklad výstupu:
Total VMs Found: 1
VMs Already registered: 0
Number of VMs registered successfully: 1
Please find the detailed report in file RegisterSqlVMScriptReport1571314821.txt
Popis výstupu
Při každém Register-SqlVMs
použití rutiny se vygeneruje sestava i soubor protokolu.
Sestava
Sestava se vygeneruje jako .txt
soubor s názvem RegisterSqlVMScriptReport<Timestamp>.txt
, ve kterém je časové razítko čas, kdy byla rutina spuštěna. Sestava obsahuje následující podrobnosti:
Výstupní hodnota | Popis |
---|---|
Počet neúspěšných registrací předplatných, protože nemáte přístup nebo přihlašovací údaje jsou nesprávné | Tím se zobrazí počet a seznam předplatných, u kterého došlo k problémům s poskytnutým ověřováním. Podrobnou chybu najdete v protokolu vyhledáním ID předplatného. |
Počet předplatných, která se nepodařilo vyzkoušet, protože nejsou zaregistrovaná u poskytovatele prostředků | Tato část obsahuje počet a seznam předplatných, která nebyla zaregistrovaná v rozšíření agenta SQL IaaS. |
Celkový počet nalezených virtuálních počítačů | Počet virtuálních počítačů nalezených v oboru parametrů předaných rutině. |
Už zaregistrované virtuální počítače | Početvirtuálních |
Počet úspěšně zaregistrovaných virtuálních počítačů | Počet virtuálních počítačů, které byly úspěšně zaregistrovány po spuštění rutiny. Zobrazí seznam registrovaných virtuálních počítačů ve formátu SubscriptionID, Resource Group, Virtual Machine . |
Počet virtuálních počítačů se nepodařilo zaregistrovat kvůli chybě | Počet virtuálních počítačů, které se nepodařilo zaregistrovat kvůli nějaké chybě Podrobnosti o chybě najdete v souboru protokolu. |
Počet virtuálních počítačů přeskočených jako virtuální počítač nebo agent gust na virtuálním počítači není spuštěný | Počet a seznam virtuálních počítačů, které se nedaly zaregistrovat jako virtuální počítač nebo agent hosta na virtuálním počítači, nebyly spuštěny. Tyto operace je možné opakovat po spuštění virtuálního počítače nebo agenta hosta. Podrobnosti najdete v souboru protokolu. |
Počet přeskočených virtuálních počítačů, protože nepoužívají SQL Server ve Windows | Počet virtuálních počítačů, které byly vynechány, protože nepoužívají SQL Server nebo nejsou virtuálním počítačem s Windows. Virtuální počítače jsou uvedeny ve formátu SubscriptionID, Resource Group, Virtual Machine . |
Protokol
Chyby se protokolují v souboru protokolu s názvem VMsNotRegisteredDueToError<Timestamp>.log
, kde časové razítko je čas spuštění skriptu. Pokud je chyba na úrovni předplatného, protokol obsahuje ID předplatného oddělené čárkami a chybovou zprávu. Pokud se jedná o chybu s registrací virtuálního počítače, protokol obsahuje ID předplatného, název skupiny prostředků, název virtuálního počítače, kód chyby a zprávu oddělenou čárkami.
Poznámky
Při registraci virtuálních počítačů s SQL Serverem s rozšířením pomocí poskytnutého skriptu zvažte následující:
- Registrace s rozšířením vyžaduje agenta hosta spuštěného na virtuálním počítači s SQL Serverem. Image Windows Serveru 2008 nemají agenta hosta, takže tyto virtuální počítače selžou a musí být zaregistrovány ručně s omezenými funkcemi.
- Existuje integrovaná logika opakování, která umožňuje překonat transparentní chyby. Pokud je virtuální počítač úspěšně zaregistrovaný, jedná se o rychlou operaci. Pokud se však registrace nezdaří, bude se opakovat každý virtuální počítač. Proto byste měli povolit významné množství času k dokončení procesu registrace, i když skutečný časový požadavek závisí na typu a počtu chyb.
Celý skript
Úplný skript na GitHubu najdete v tématu Hromadná registrace virtuálních počítačů s SQL Serverem pomocí Az PowerShellu.
Zkopírujte celý skript a uložte ho jako RegisterSqLVMs.psm1
.
Další kroky
- Projděte si výhody poskytované rozšířením agenta SQL IaaS.
- Ruční registrace jednoho virtuálního počítače
- Automaticky zaregistrujte všechny virtuální počítače v předplatném.
- Řešení známých problémů s rozšířením
- Projděte si prohlášení o zásadách ochrany osobních údajů rozšíření agenta SQL IaaS.
- Projděte si kontrolní seznam osvědčených postupů pro optimalizaci výkonu a zabezpečení.
Další informace najdete v následujících článcích: