Operacje konserwacji dostawcy zasobów SQL

Ważne

Począwszy od kompilacji usługi Azure Stack Hub 2108, dostawcy zasobów SQL i MySQL są oferowani subskrypcjom, którym udzielono dostępu. Jeśli chcesz rozpocząć korzystanie z tej funkcji lub jeśli chcesz uaktualnić poprzednią wersję, otwórz zgłoszenie do pomocy technicznej , a nasi inżynierowie pomocy technicznej przeprowadzi Cię przez proces wdrażania lub uaktualniania.

Dostawca zasobów SQL działa na zablokowanej maszynie wirtualnej. Aby włączyć operacje konserwacji, należy zaktualizować zabezpieczenia maszyny wirtualnej. Aby to zrobić przy użyciu zasady najmniejszych uprawnień, użyj punktu końcowego DBAdapterMaintenancew programie PowerShell Just Enough Administration (JEA). Pakiet instalacyjny dostawcy zasobów zawiera skrypt dla tej akcji.

Stosowanie poprawek i aktualizowanie

Dostawca zasobów SQL nie jest serwisowany w ramach usługi Azure Stack Hub, ponieważ jest to składnik dodatku. Firma Microsoft udostępnia aktualizacje dostawcy zasobów SQL w razie potrzeby.

W przypadku dostawcy usług SQL RP w wersji 1 po wydaniu zaktualizowanego dostawcy zasobów SQL Server jest udostępniany skrypt umożliwiający zastosowanie aktualizacji. Ten skrypt tworzy nową maszynę wirtualną dostawcy zasobów, migrując stan starej maszyny wirtualnej dostawcy do nowej maszyny wirtualnej.

W przypadku usługi SQL RP w wersji 2 dostawcy zasobów są aktualizowani przy użyciu tej samej funkcji aktualizacji, która jest używana do stosowania aktualizacji usługi Azure Stack Hub.

Aby uzyskać więcej informacji, zobacz Aktualizowanie dostawcy zasobów SQL.

Aktualizowanie maszyny wirtualnej dostawcy

Usługa SQL RP w wersji 1 działa na maszynie wirtualnej użytkownika , należy zastosować wymagane poprawki i aktualizacje po ich wydaniu. Podczas instalacji lub aktualizacji dostawcy zasobów można zainstalować pakiet Windows Update.

Program SQL RP v2 działa w zarządzanym systemie Windows Server, który jest ukryty. Nie musisz poprawiać ani aktualizować maszyny wirtualnej dostawcy zasobów. Zostanie on automatycznie zaktualizowany po zaktualizowaniu dostawcy usług.

Aktualizowanie definicji Windows Defender maszyny wirtualnej

Te instrukcje dotyczą tylko usługi SQL RP V1 działającej w zintegrowanych systemach usługi Azure Stack Hub.

Aby zaktualizować definicje Windows Defender:

  1. Pobierz aktualizacje definicji Windows Defender z aktualizacji analizy zabezpieczeń dla Windows Defender.

    Na stronie aktualizacji definicji przewiń w dół do pozycji "Ręcznie pobierz aktualizację". Pobierz plik 64-bitowy "Windows Defender Antivirus for Windows 10 and Windows 8.1".

    Możesz również użyć tego bezpośredniego linku , aby pobrać/uruchomić plik fpam-fe.exe.

  2. Utwórz sesję programu PowerShell w punkcie końcowym konserwacji maszyny wirtualnej karty dostawcy zasobów SQL.

  3. Skopiuj plik aktualizacji definicji do maszyny wirtualnej przy użyciu sesji punktu końcowego konserwacji.

  4. W sesji programu PowerShell obsługi uruchom polecenie Update-DBAdapterWindowsDefenderDefinitions .

  5. Po zainstalowaniu definicji zalecamy usunięcie pliku aktualizacji definicji przy użyciu polecenia Remove-ItemOnUserDrive .

Przykładowy skrypt programu PowerShell służący do aktualizowania definicji

Możesz edytować i uruchomić następujący skrypt, aby zaktualizować definicje usługi Defender. Zastąp wartości w skrypcie wartościami ze środowiska.

# Set credentials for local admin on the resource provider VM.
$vmLocalAdminPass = ConvertTo-SecureString '<local admin user password>' -AsPlainText -Force
$vmLocalAdminUser = "<local admin user name>"
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential `
    ($vmLocalAdminUser, $vmLocalAdminPass)

# Provide the public IP address for the adapter VM.
$databaseRPMachine  = "<RP VM IP address>"
$localPathToDefenderUpdate = "C:\DefenderUpdates\mpam-fe.exe"

# Download the Windows Defender update definitions file from https://www.microsoft.com/wdsi/definitions.
Invoke-WebRequest -Uri 'https://go.microsoft.com/fwlink/?LinkID=121721&arch=x64' `
    -Outfile $localPathToDefenderUpdate

# Create a session to the maintenance endpoint.
$session = New-PSSession -ComputerName $databaseRPMachine `
    -Credential $vmLocalAdminCreds -ConfigurationName DBAdapterMaintenance `
    -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
# Copy the defender update file to the adapter VM.
Copy-Item -ToSession $session -Path $localPathToDefenderUpdate `
     -Destination "User:\"
# Install the update definitions.
Invoke-Command -Session $session -ScriptBlock `
    {Update-AzSDBAdapterWindowsDefenderDefinition -DefinitionsUpdatePackageFile "User:\mpam-fe.exe"}
# Cleanup the definitions package file and session.
Invoke-Command -Session $session -ScriptBlock `
    {Remove-AzSItemOnUserDrive -ItemPath "User:\mpam-fe.exe"}
$session | Remove-PSSession

Konfigurowanie rozszerzenia Diagnostyka Azure dla dostawcy zasobów SQL

Te instrukcje dotyczą tylko usługi SQL RP V1 działającej w zintegrowanych systemach usługi Azure Stack Hub.

rozszerzenie Diagnostyka Azure jest instalowane na maszynie wirtualnej karty dostawcy zasobów SQL domyślnie. Poniższe kroki pokazują, jak dostosować rozszerzenie do zbierania dzienników zdarzeń operacyjnych dostawcy zasobów SQL i dzienników usług IIS na potrzeby rozwiązywania problemów i inspekcji.

  1. Zaloguj się do portalu administratora usługi Azure Stack Hub.

  2. Wybierz pozycję Maszyny wirtualne w okienku po lewej stronie, wyszukaj maszynę wirtualną karty dostawcy zasobów SQL i wybierz maszynę wirtualną.

  3. W obszarze Ustawienia diagnostyczne maszyny wirtualnej przejdź do karty Dzienniki i wybierz pozycję Niestandardowe , aby dostosować zbierane dzienniki zdarzeń. Przejdź do ustawień diagnostycznych

  4. Dodaj pozycję Microsoft-AzureStack-DatabaseAdapter/Operational!* w celu zbierania dzienników zdarzeń operacyjnych dostawcy zasobów SQL. Dodawanie dzienników zdarzeń

  5. Aby włączyć zbieranie dzienników usług IIS, sprawdź dzienniki usług IIS i dzienniki żądań niepowodzenie. Dodawanie dzienników usług IIS

  6. Na koniec wybierz pozycję Zapisz, aby zapisać wszystkie ustawienia diagnostyki.

Po skonfigurowaniu dzienników zdarzeń i zbierania dzienników usług IIS dla dostawcy zasobów SQL dzienniki można znaleźć na koncie magazynu systemowego o nazwie sqladapterdiagaccount.

Aby dowiedzieć się więcej na temat rozszerzenia Diagnostyka Azure, zobacz Co to jest rozszerzenie Diagnostyka Azure.

Aktualizowanie poświadczeń SQL

Odpowiadasz za tworzenie i konserwowanie kont administratora systemu na serwerach SQL. Dostawca zasobów potrzebuje konta z tymi uprawnieniami do zarządzania bazami danych dla użytkowników, ale nie potrzebuje dostępu do danych użytkowników. Jeśli musisz zaktualizować hasła administratora systemu na serwerach SQL, możesz użyć interfejsu administratora dostawcy zasobów, aby zmienić przechowywane hasło. Te hasła są przechowywane w Key Vault w wystąpieniu usługi Azure Stack Hub.

Aby zmodyfikować ustawienia, wybierz pozycję Przeglądaj>ZASOBY ADMINISTRACYJNE USŁUGI>SQL Hosting Server>SQL Logins i wybierz nazwę użytkownika. Zmiana musi zostać wprowadzona najpierw w wystąpieniu SQL (i w razie potrzeby wszelkie repliki). W obszarze Ustawienia wybierz pozycję Hasło.

Aktualizowanie hasła administratora SQL

Rotacja wpisów tajnych

Te instrukcje dotyczą tylko usługi SQL RP V1 działającej w zintegrowanych systemach usługi Azure Stack Hub.

W przypadku korzystania z dostawców zasobów SQL i MySQL z zintegrowanymi systemami usługi Azure Stack Hub operator usługi Azure Stack Hub jest odpowiedzialny za rotację następujących wpisów tajnych infrastruktury dostawcy zasobów, aby upewnić się, że nie wygasają:

  • Zewnętrzny certyfikat SSL udostępniany podczas wdrażania.
  • Hasło konta administratora lokalnego dostawcy zasobów podane podczas wdrażania.
  • Hasło użytkownika diagnostycznego dostawcy zasobów (dbadapterdiag).
  • (wersja >= 1.1.47.0) Key Vault certyfikat wygenerowany podczas wdrażania.

Przykłady programu PowerShell dotyczące rotacji wpisów tajnych

Ważne

Pomyślna rotacja wpisów tajnych wymaga usunięcia wszystkich istniejących wersji modułów programu PowerShell usługi Azure Stack Hub przed uruchomieniem poniższego skryptu.

Zmień wszystkie wpisy tajne w tym samym czasie.

.\SecretRotationSQLProvider.ps1 `
    -Privilegedendpoint $Privilegedendpoint `
    -CloudAdminCredential $cloudCreds `
    -AzCredential $adminCreds `
    -DiagnosticsUserPassword $passwd `
    -DependencyFilesLocalPath $certPath `
    -DefaultSSLCertificatePassword $certPasswd  `
    -VMLocalCredential $localCreds `
    -KeyVaultPfxPassword $keyvaultCertPasswd

Zmień hasło użytkownika diagnostycznego.

.\SecretRotationSQLProvider.ps1 `
    -Privilegedendpoint $Privilegedendpoint `
    -CloudAdminCredential $cloudCreds `
    -AzCredential $adminCreds `
    -DiagnosticsUserPassword  $passwd

Zmień hasło konta administratora lokalnego maszyny wirtualnej.

.\SecretRotationSQLProvider.ps1 `
    -Privilegedendpoint $Privilegedendpoint `
    -CloudAdminCredential $cloudCreds `
    -AzCredential $adminCreds `
    -VMLocalCredential $localCreds

Obracanie certyfikatu SSL

.\SecretRotationSQLProvider.ps1 `
    -Privilegedendpoint $Privilegedendpoint `
    -CloudAdminCredential $cloudCreds `
    -AzCredential $adminCreds `
    -DependencyFilesLocalPath $certPath `
    -DefaultSSLCertificatePassword $certPasswd

Obracanie certyfikatu Key Vault

.\SecretRotationSQLProvider.ps1 `
    -Privilegedendpoint $Privilegedendpoint `
    -CloudAdminCredential $cloudCreds `
    -AzCredential $adminCreds `
    -KeyVaultPfxPassword $keyvaultCertPasswd

parametry SecretRotationSQLProvider.ps1

Parametr Opis Komentarz
AzureEnvironment Środowisko platformy Azure konta administratora usługi używane do wdrażania usługi Azure Stack Hub. Wymagane tylko w przypadku wdrożeń Microsoft Entra. Obsługiwane nazwy środowisk to AzureCloud, AzureUSGovernment lub jeśli używasz identyfikatora Microsoft Entra Chiny, AzureChinaCloud. Opcjonalne
AzCredential Poświadczenia konta administratora usługi Azure Stack Hub. Skrypt zakończy się niepowodzeniem, jeśli konto używane z modułem AzCredential wymaga uwierzytelniania wieloskładnikowego (MFA). Obowiązkowy
CloudAdminCredential Poświadczenia konta domeny administratora chmury usługi Azure Stack Hub. Obowiązkowy
PrivilegedEndpoint Uprzywilejowany punkt końcowy w celu uzyskania dostępu do polecenia Get-AzureStackStampInformation. Obowiązkowy
DiagnosticsUserPassword Hasło konta użytkownika diagnostycznego. Opcjonalne
VMLocalCredential Konto administratora lokalnego na maszynie wirtualnej MySQLAdapter. Opcjonalne
DefaultSSLCertificatePassword Domyślne hasło certyfikatu SSL (*.pfx). Opcjonalne
DependencyFilesLocalPath Ścieżka lokalna plików zależności. Opcjonalne
KeyVaultPfxPassword Hasło używane do generowania certyfikatu Key Vault dla karty bazy danych. Opcjonalne

Te instrukcje dotyczą tylko usługi SQL RP w wersji 2 działającej w zintegrowanych systemach usługi Azure Stack Hub.

Uwaga

Rotacja wpisów tajnych dla dostawców zasobów dodawania wartości jest obecnie obsługiwana tylko za pośrednictwem programu PowerShell.

Podobnie jak infrastruktura usługi Azure Stack Hub, dostawcy zasobów dodawania wartości używają wpisów tajnych wewnętrznych i zewnętrznych. Jako operator odpowiadasz za:

  • Udostępnianie zaktualizowanych wpisów tajnych zewnętrznych, takich jak nowy certyfikat TLS używany do zabezpieczania punktów końcowych dostawcy zasobów.
  • Regularne zarządzanie rotacją wpisów tajnych dostawcy zasobów.

Gdy wpisy tajne zbliżają się do wygaśnięcia, w portalu administratora są generowane następujące alerty. Ukończenie rotacji wpisów tajnych rozwiąże następujące alerty:

  • Oczekiwanie na wygaśnięcie certyfikatu wewnętrznego
  • Oczekiwanie na wygaśnięcie certyfikatu zewnętrznego

Wymagania wstępne

W ramach przygotowań do procesu rotacji:

  1. Jeśli jeszcze tego nie zrobiono, przed kontynuowaniem zainstaluj moduł Az programu PowerShell dla usługi Azure Stack Hub . Do rotacji wpisów tajnych usługi Azure Stack Hub jest wymagana wersja 2.0.2-preview lub nowsza. Aby uzyskać więcej informacji, zobacz Migrowanie z modułu AzureRM do modułu Azure PowerShell Az w usłudze Azure Stack Hub.

  2. Zainstaluj moduł Azs.Deployment. moduły Administracja 1.0.0: Galeria programu PowerShell | Azs.Deployment. Administracja 1.0.0

Install-Module -Name Azs.Deployment.Admin
  1. Jeśli certyfikat zewnętrzny zbliża się do wygaśnięcia, zapoznaj się z wymaganiami dotyczącymi certyfikatu infrastruktury kluczy publicznych (PKI) usługi Azure Stack Hub , aby uzyskać ważne informacje dotyczące wymagań wstępnych przed uzyskaniem/odnowieniem certyfikatu X509, w tym szczegółowe informacje na temat wymaganego formatu PFX. Zapoznaj się również z wymaganiami określonymi w sekcji Opcjonalne certyfikaty PaaS dla określonego dostawcy zasobów dodającego wartość.

Przygotowywanie nowego certyfikatu TLS do rotacji certyfikatów zewnętrznych

Uwaga

Jeśli tylko certyfikat wewnętrzny zbliża się do wygaśnięcia, możesz pominąć tę sekcję.

Następnie utwórz lub odnów certyfikat TLS na potrzeby zabezpieczania punktów końcowych dostawcy zasobów dodającego wartość:

  1. Wykonaj kroki opisane w temacie Generowanie żądań podpisania certyfikatu (CRS) w celu odnowienia certyfikatu dla dostawcy zasobów. W tym miejscu utworzysz żądanie CSR za pomocą narzędzia do sprawdzania gotowości usługi Azure Stack Hub. Pamiętaj, aby uruchomić poprawne polecenie cmdlet dla dostawcy zasobów w kroku "Generowanie żądań certyfikatów dla innych usług Azure Stack Hub". Na przykład New-AzsDbAdapterCertificateSigningRequest jest używany dla adresów IP SQL i MySQL. Po zakończeniu prześlij wygenerowany element . Plik REQ do urzędu certyfikacji dla nowego certyfikatu.

  2. Po otrzymaniu pliku certyfikatu z urzędu certyfikacji wykonaj kroki opisane w temacie Przygotowywanie certyfikatów do wdrożenia lub rotacji. Ponownie użyj narzędzia sprawdzania gotowości, aby przetworzyć plik zwrócony z urzędu certyfikacji.

  3. Na koniec wykonaj kroki opisane w temacie Weryfikowanie certyfikatów infrastruktury kluczy publicznych usługi Azure Stack Hub. Narzędzie sprawdzania gotowości jest jeszcze raz używane do przeprowadzania testów weryfikacyjnych na nowym certyfikacie.

Obracanie certyfikatu wewnętrznego

Otwórz konsolę programu PowerShell z podwyższonym poziomem uprawnień i wykonaj następujące kroki, aby obrócić zewnętrzne wpisy tajne dostawcy zasobów:

  1. Zaloguj się do środowiska usługi Azure Stack Hub przy użyciu poświadczeń operatora. Zobacz Connect to Azure Stack Hub with PowerShell for PowerShell sign-in script (Nawiązywanie połączenia z usługą Azure Stack Hub przy użyciu programu PowerShell dla skryptu logowania programu PowerShell). Pamiętaj, aby użyć poleceń cmdlet Az programu PowerShell (zamiast modułu AzureRM) i zastąpić wszystkie wartości symboli zastępczych, takie jak adresy URL punktu końcowego i nazwa dzierżawy katalogu.

  2. Określ identyfikator produktu dostawcy zasobów. Uruchom polecenie cmdlet, Get-AzsProductDeployment aby pobrać listę najnowszych wdrożeń dostawcy zasobów. Zwrócona "value" kolekcja zawiera element dla każdego wdrożonego dostawcy zasobów. Znajdź interesującego dostawcę zasobów i zanotuj wartości tych właściwości:

    • "name" — zawiera identyfikator produktu dostawcy zasobów w drugim segmencie wartości.

    Na przykład wdrożenie dostawcy usługi SQL może mieć identyfikator "microsoft.sqlrp"produktu .

  3. Uruchom polecenie cmdlet, Invoke-AzsProductRotateSecretsAction aby obrócić certyfikat wewnętrzny:

    Invoke-AzsProductRotateSecretsAction -ProductId $productId
    

Obracanie certyfikatu zewnętrznego

Najpierw zanotuj wartości następujących parametrów.

Symbol zastępczy Opis Przykładowa wartość
<product-id> Identyfikator produktu najnowszego wdrożenia dostawcy zasobów. microsoft.sqlrp
<installed-version> Wersja najnowszego wdrożenia dostawcy zasobów. 2.0.0.2
<package-id> Identyfikator pakietu jest kompilowany przez połączenie identyfikatora produktu i zainstalowanej wersji. microsoft.sqlrp.2.0.0.2
<cert-secret-name> Nazwa, w ramach której jest przechowywany klucz tajny certyfikatu. SSLCert
<cert-pfx-file-path> Ścieżka do pliku PFX certyfikatu. C:\dir\dbadapter-cert-file.pfx
<pfx-password> Hasło przypisane do certyfikatu . Plik PFX. strong@CertSecret6

Otwórz konsolę programu PowerShell z podwyższonym poziomem uprawnień i wykonaj następujące kroki:

  1. Zaloguj się do środowiska usługi Azure Stack Hub przy użyciu poświadczeń operatora. Zobacz Connect to Azure Stack Hub with PowerShell for PowerShell sign-in script (Nawiązywanie połączenia z usługą Azure Stack Hub przy użyciu programu PowerShell dla skryptu logowania programu PowerShell). Pamiętaj, aby użyć poleceń cmdlet Az programu PowerShell (zamiast modułu AzureRM) i zastąpić wszystkie wartości symboli zastępczych, takie jak adresy URL punktu końcowego i nazwa dzierżawy katalogu.

  2. Pobierz wartość parametru product-id. Uruchom polecenie cmdlet, Get-AzsProductDeployment aby pobrać listę najnowszych wdrożeń dostawcy zasobów. Zwrócona "value" kolekcja zawiera element dla każdego wdrożonego dostawcy zasobów. Znajdź interesującego dostawcę zasobów i zanotuj wartości tych właściwości:

    • "name" — zawiera identyfikator produktu dostawcy zasobów w drugim segmencie wartości.
    • "properties"."deployment"."version" — zawiera aktualnie wdrożony numer wersji.

Na przykład wdrożenie dostawcy usługi SQL może mieć identyfikator "microsoft.sqlrp"produktu , i wersję "2.0.0.2".

  1. Skompiluj identyfikator pakietu dostawcy zasobów, łącząc identyfikator i wersję produktu dostawcy zasobów. Na przykład przy użyciu wartości uzyskanych w poprzednim kroku identyfikator pakietu dostawcy usługi SQL to microsoft.sqlrp.2.0.0.2.

  2. Korzystając z identyfikatora pakietu uzyskanego w poprzednim kroku, uruchom polecenie Get-AzsProductSecret -PackageId , aby pobrać listę typów wpisów tajnych używanych przez dostawcę zasobów. W zwróconej value kolekcji znajdź element zawierający wartość "Certificate" właściwości "properties"."secretKind" . Ten element zawiera właściwości wpisu tajnego certyfikatu dostawcy usług. Zanotuj nazwę przypisaną do tego wpisu tajnego certyfikatu, który jest identyfikowany przez ostatni segment "name" właściwości tuż powyżej "properties".

Na przykład kolekcja wpisów tajnych zwrócona dla dostawcy zasobów SQL zawiera "Certificate" wpis tajny o nazwie SSLCert.

  1. Za pomocą polecenia cmdlet zaimportuj Set-AzsProductSecret nowy certyfikat do Key Vault, który będzie używany przez proces rotacji. Przed uruchomieniem skryptu zastąp odpowiednie wartości symboli zastępczych zmiennej.

    $productId = '<product-id>'
    $packageId = $productId + '.' + '<installed-version>'
    $certSecretName = '<cert-secret-name>' 
    $pfxFilePath = '<cert-pfx-file-path>'
    $pfxPassword = ConvertTo-SecureString '<pfx-password>' -AsPlainText -Force   
    Set-AzsProductSecret -PackageId $packageId -SecretName $certSecretName -PfxFileName $pfxFilePath -PfxPassword $pfxPassword -Force
    
  2. Na koniec użyj Invoke-AzsProductRotateSecretsAction polecenia cmdlet , aby obrócić wpisy tajne:

    Invoke-AzsProductRotateSecretsAction -ProductId $productId
    

Monitorowanie postępu rotacji wpisów tajnych

Postęp rotacji wpisów tajnych można monitorować w konsoli programu PowerShell lub w portalu administratora, wybierając dostawcę zasobów w usłudze Marketplace:

Ekran rotacji wpisów tajnych w toku.

Uwaga

Czas rotacji wpisu tajnego może kosztować ponad 10 minut. Po zakończeniu stan dostawcy zasobów zmieni się na "Zainstalowane".

Zbieranie dzienników diagnostycznych

Usługa Azure Stack Hub ma wiele sposobów zbierania, zapisywania i wysyłania dzienników diagnostycznych do pomoc techniczna firmy Microsoft. Począwszy od wersji 1.1.93, dostawca zasobów SQL obsługuje standardowy sposób zbierania dzienników ze środowiska usługi Azure Stack Hub. Aby uzyskać więcej informacji, zobacz Zbieranie dzienników diagnostycznych.

Począwszy od wersji 1.1.93, dostawca zasobów SQL obsługuje standardowy sposób zbierania dzienników ze środowiska usługi Azure Stack Hub. Jeśli używasz starszej wersji, zaleca się zaktualizowanie dostawcy zasobów SQL do najnowszej wersji.

Aby zbierać dzienniki z zablokowanej maszyny wirtualnej, użyj punktu końcowego programu PowerShell Just Enough Administration (JEA) DBAdapterDiagnostics. Ten punkt końcowy udostępnia następujące polecenia:

  • Get-AzsDBAdapterLog. To polecenie tworzy pakiet zip dzienników diagnostycznych dostawcy zasobów i zapisuje plik na dysku użytkownika sesji. To polecenie można uruchomić bez żadnych parametrów, a ostatnie cztery godziny dzienników są zbierane.
  • Remove-AzsDBAdapterLog. To polecenie usuwa istniejące pakiety dzienników na maszynie wirtualnej dostawcy zasobów.

Wymagania i proces punktu końcowego

Po zainstalowaniu lub zaktualizowaniu dostawcy zasobów zostanie utworzone konto użytkownika dbadapterdiag . To konto będzie używane do zbierania dzienników diagnostycznych.

Uwaga

Hasło konta dbadapterdiag jest takie samo jak hasło używane dla administratora lokalnego na maszynie wirtualnej utworzonej podczas wdrażania lub aktualizacji dostawcy.

Aby użyć poleceń DBAdapterDiagnostics , utwórz zdalną sesję programu PowerShell dla maszyny wirtualnej dostawcy zasobów i uruchom polecenie Get-AzsDBAdapterLog .

Przedział czasu dla zbierania dzienników jest ustawiany przy użyciu parametrów FromDate i ToDate . Jeśli nie określisz jednego lub obu tych parametrów, zostaną użyte następujące wartości domyślne:

  • Wartość FromDate wynosi cztery godziny przed bieżącą godziną.
  • ToDate to bieżący czas.

Przykładowy skrypt programu PowerShell do zbierania dzienników

Poniższy skrypt pokazuje, jak zbierać dzienniki diagnostyczne z maszyny wirtualnej dostawcy zasobów.

# Create a new diagnostics endpoint session.
$databaseRPMachineIP = '<RP VM IP address>'
$diagnosticsUserName = 'dbadapterdiag'
$diagnosticsUserPassword = '<Enter Diagnostic password>'

$diagCreds = New-Object System.Management.Automation.PSCredential `
        ($diagnosticsUserName, (ConvertTo-SecureString -String $diagnosticsUserPassword -AsPlainText -Force))
$session = New-PSSession -ComputerName $databaseRPMachineIP -Credential $diagCreds `
        -ConfigurationName DBAdapterDiagnostics `
        -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)

# Sample that captures logs from the previous hour.
$fromDate = (Get-Date).AddHours(-1)
$dateNow = Get-Date
$sb = {param($d1,$d2) Get-AzSDBAdapterLog -FromDate $d1 -ToDate $d2}
$logs = Invoke-Command -Session $session -ScriptBlock $sb -ArgumentList $fromDate,$dateNow

# Copy the logs to the user drive.
$sourcePath = "User:\{0}" -f $logs
$destinationPackage = Join-Path -Path (Convert-Path '.') -ChildPath $logs
Copy-Item -FromSession $session -Path $sourcePath -Destination $destinationPackage

# Clean up the logs.
$cleanup = Invoke-Command -Session $session -ScriptBlock {Remove-AzsDBAdapterLog}
# Close the session.
$session | Remove-PSSession

Znane ograniczenia dostawcy zasobów SQL Server w wersji 1

Ograniczenie:
Gdy wdrożenie, uaktualnienie lub skrypt rotacji wpisu tajnego nie powiodło się, niektóre dzienniki nie mogą być zbierane przez standardowy mechanizm zbierania dzienników.

Obejście:
Oprócz korzystania ze standardowego mechanizmu zbierania dzienników przejdź do folderu Logs w wyodrębnionym folderze, w którym znajduje się skrypt, aby znaleźć więcej dzienników.

Następne kroki

Dodawanie serwerów hostingu SQL Server