共用方式為


Azure 監視器 SCOM 受控執行個體自我驗證步驟

本文說明 Operations Manager 系統管理員、Active Directory 系統管理員和網路管理員的自我驗證程式。

注意

若要了解 Azure 監視器 SCOM 受控執行個體結構,請參閱 Azure 監視器 SCOM 受控執行個體

設定必要的參數之後,請執行自我驗證工具。 根據從遙測收集的經驗和資料,Operations Manager 系統管理員花費了相當長的時間驗證參數的正確性。 執行此工具有助於識別環境或參數的任何問題,再繼續進行部署。

許多客戶都受益於此工具,因為它可節省後續針對參數問題進行疑難排解所花費的時間。 建議您在部署之前執行此工具,以避免在未來花費過多時間診斷和疑難解答內部部署參數。

在建立 SCOM 受控執行個體的過程中,涉及三個主要角色。 下列流程是 Operations Manager 系統管理員如何在企業組織中設定步驟的一般流程:

  1. Operations Manager 系統管理員會起始與 Active Directory 系統管理員的通訊,以設定所有 Active Directory 相關設定。

  2. Operations Manager 系統管理員接著會與網路管理員通訊,以建立虛擬網路,並設定必要的防火牆、網路安全群組和 DNS 解析,以連線到指定的 Active Directory 控制器,如網路必要條件中所述。

  3. 實作所有設定之後,Operations Manager 系統管理員會繼續對測試虛擬機器 (VM) 進行徹底測試,以確保一切如預期般運作。 此測試階段可協助主動識別並處理任何潛在問題。

如果 Operations Manager 系統管理員扮演這三個角色,他們可以獨立處理和管理所有工作,而不需要讓每個特定區域的不同人員參與。

透過為每個角色提供的步驟來驗證參數,我們的目標是簡化設定參數的流程,以減少建立 SCOM 受控執行個體所需的時間。

藉由讓每個角色驗證其各自的參數,我們可以加速整體設定流程,並更快部署 SCOM 受控執行個體。

Operations Manager 管理員的步驟自我驗證

執行 Operations Manager 管理員自我驗證對於了解參數的正確性至關重要。

重要

一開始,在為 SCOM 受控執行個體建立所選取的相同子網路中,建立新的測試 Windows Server (2022/2019) VM。 接著,您的 Active Directory 系統管理員和網路管理員都可以單獨利用此 VM 來驗證其各自變更的有效性。 這種方法可節省 Active Directory 系統管理員與網路管理員之間來回通訊所花費的時間。

請遵循下列步驟驗證指令碼:

  1. 在 SCOM 受控執行個體建立所選擇的子網路內產生在 Windows Server 2022 或 2019 上執行的新 VM。 登入 VM,並將其 DNS 伺服器設定為使用建立 SCOM 受控執行個體期間所打算使用的相同 DNS 伺服器 IP。 例如,請參閱下列螢幕擷取畫面來設定 DNS 伺服器 IP。

    顯示 DNS 伺服器 IP 的螢幕擷取畫面。

  2. 將驗證指令碼下載至測試 VM 並解壓縮。 其中包含五個檔案:

    • Readme.txt
    • ScomValidation.ps1
    • RunValidationAsSCOMAdmin.ps1
    • RunValidationAsActiveDirectoryAdmin.ps1
    • RunValidationAsNetworkAdmin.ps1
  3. 遵循 Readme.txt 檔案中所述的步驟來執行 RunValidationAsSCOMAdmin.ps1。 執行之前,請務必先將適當的設定值填入 RunValidationAsSCOMAdmin.ps1

    # $settings = @{
    #   Configuration = @{
    #         DomainName="test.com"                 
    #         OuPath= "DC=test,DC=com"           
    #         DNSServerIP = "000.00.0.00"           
    #         UserName="test\testuser"              
    #         Password = "password"                 
    #         SqlDatabaseInstance= "test-sqlmi-instance.023a29518976.database.windows.net" 
    #         ManagementServerGroupName= "ComputerMSG"      
    #         GmsaAccount= "test\testgMSA$"
    #         DnsName= "lbdsnname.test.com"
    #         LoadBalancerIP = "00.00.00.000"
    #     }
    # }
    # Note : Before running this script, please make sure you have provided all the parameters in the settings
    $settings = @{
    Configuration = @{
    DomainName="<domain name>"
    OuPath= "<OU path>"
    DNSServerIP = "<DNS server IP>"
    UserName="<domain user name>"
    Password = "<domain user password>"
    SqlDatabaseInstance= "<SQL MI Host name>"
    ManagementServerGroupName= "<Computer Management server group name>"
    GmsaAccount= "<GMSA account>"
    DnsName= "<DNS name associated with the load balancer IP address>"
    LoadBalancerIP = "<Load balancer IP address>"
    }
    }
    
  4. 一般而言,RunValidationAsSCOMAdmin.ps1 會執行所有驗證。 如果您想要執行特定檢查,請開啟 ScomValidation.ps1,並批注檔案結尾的所有其他檢查。 您也可以在特定檢查中新增中斷點,以偵錯檢查並進一步了解問題。

         # Default mode is - SCOMAdmin, by default if mode is not passed then it will run all the validations 
         # adding all the checks to result set
         try {
             # Connectivity checks
             $validationResults += Invoke-ValidateStorageConnectivity $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidateSQLConnectivity $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidateDnsIpAddress $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidateDomainControllerConnectivity $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             # Parameter validations
             $validationResults += Invoke-ValidateDomainJoin $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidateStaticIPAddressAndDnsname $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidateComputerGroup $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidategMSAAccount $settings
             $results = ConvertTo-Json $validationResults -Compress
    
             $validationResults += Invoke-ValidateLocalAdminOverideByGPO $settings
             $results = ConvertTo-Json $validationResults -Compress
         }
         catch {
             Write-Verbose -Verbose  $_
     }
    

    注意

    Operations Manager 系統管理員驗證包括檢查覆寫本機系統管理員群組的任何 GPO 原則。 因為檢查會查詢所有要評估的原則,所以可能需要很長的時間才能完成。

  5. 驗證指令碼會顯示所有驗證檢查及其各自的錯誤,這有助於解決驗證問題。 為了快速解析,請在 PowerShell ISE 中使用中斷點執行指令碼,以加速偵錯流程。

    如果所有檢查都順利通過,請返回上線頁面,並重新啟動上線流程。

Active Directory 管理員的步驟自我驗證

若要將與 Operations Manager 管理員的來回通訊降到最低,Active Directory 系統管理員最好獨立評估 Active Directory 參數。 如有需要,您可以向 Operations Manager 系統管理員尋求協助,以執行驗證工具,確保參數評估流程更加順暢且更有效率。

執行 Active Directory 系統管理員自我驗證是選用步驟。 我們為每個組織提供彈性,可根據其便利性和特定需求來決定是否進行此流程。

請遵循下列步驟驗證指令碼:

  1. 在 SCOM 受控執行個體建立所選擇的子網路內產生在 Windows Server 2022 或 2019 上執行的新 VM。 登入 VM,並將其 DNS 伺服器設定為使用建立 SCOM 受控執行個體期間所打算使用的相同 DNS 伺服器 IP。 如果 Operations Manager 系統管理員已經建立測試 VM,請使用測試 VM。 例如,請參閱下列螢幕擷取畫面來設定 DNS 伺服器 IP。

    顯示 DNS 伺服器 IP 的螢幕擷取畫面。

  2. 將驗證指令碼下載至測試 VM 並解壓縮。 其中包含五個檔案:

    • Readme.txt
    • ScomValidation.ps1
    • RunValidationAsSCOMAdmin.ps1
    • RunValidationAsActiveDirectoryAdmin.ps1
    • RunValidationAsNetworkAdmin.ps1
  3. 遵循 Readme.txt 檔案中所述的步驟來執行 RunValidationAsActiveDirectoryAdmin.ps1。 執行之前,請務必先將適當的設定值填入 RunValidationAsActiveDirectoryAdmin.ps1

    # $settings = @{
    #   Configuration = @{
    #         DomainName="test.com"                 
    #         OuPath= "DC=test,DC=com"           
    #         DNSServerIP = "000.00.0.00"           
    #         UserName="test\testuser"              
    #         Password = "password"                 
    #         ManagementServerGroupName= "ComputerMSG"      
    #         GmsaAccount= "test\testgMSA$"
    #         DnsName= "lbdsnname.test.com"
    #         LoadBalancerIP = "00.00.00.000"
    #     }
    # }
    # Note : Before running this script, please make sure you have provided all the parameters in the settings
    $settings = @{
    Configuration = @{
    DomainName="<domain name>"
    OuPath= "<OU path>"
    DNSServerIP = "<DNS server IP>"
    UserName="<domain user name>"
    Password = "<domain user password>"
    ManagementServerGroupName= "<Computer Management server group name>"
    GmsaAccount= "<GMSA account>"
    DnsName= "<DNS name associated with the load balancer IP address>"
    LoadBalancerIP = "<Load balancer IP address>"
    }
    }
    
  4. 一般而言,RunValidationAsActiveDirectoryAdmin.ps1 會執行所有驗證。 如果您想要執行特定檢查,請開啟 ScomValidation.ps1,並批注 Active Directory 系統管理員檢查之下的所有其他檢查。 您也可以在特定檢查中新增中斷點,以偵錯檢查並進一步了解問題。

    # Mode is AD admin then following validations/test will be performed
    if ($mode -eq "ADAdmin") {
    
        try {
            # Mode is AD admin then following validations/test will be performed
            $validationResults += Invoke-ValidateDnsIpAddress $settings
            $results = ConvertTo-Json $validationResults -Compress
    
            $validationResults += Invoke-ValidateDomainControllerConnectivity $settings
            $results = ConvertTo-Json $validationResults -Compress
    
            # Parameter validations
            $validationResults += Invoke-ValidateDomainJoin $settings
            $results = ConvertTo-Json $validationResults -Compress
    
            $validationResults += Invoke-ValidateStaticIPAddressAndDnsname $settings
            $results = ConvertTo-Json $validationResults -Compress
    
            $validationResults += Invoke-ValidateComputerGroup $settings
            $results = ConvertTo-Json $validationResults -Compress
    
            $validationResults += Invoke-ValidategMSAAccount $settings
            $results = ConvertTo-Json $validationResults -Compress
    
            $validationResults += Invoke-ValidateLocalAdminOverideByGPO $settings
            $results = ConvertTo-Json $validationResults -Compress
        }
        catch {
            Write-Verbose -Verbose  $_
        }
    }
    

    注意

    Active Directory 系統管理員驗證包括檢查覆寫本機系統管理員群組的任何 GPO 原則。 因為檢查會查詢所有要評估的原則,所以可能需要很長的時間才能完成。

  5. 驗證指令碼會顯示所有驗證檢查及其各自的錯誤,這有助於解決驗證問題。 為了快速解析,請在 PowerShell ISE 中使用中斷點執行指令碼,以加速偵錯流程。

    如果所有檢查都成功通過,Active Directory 參數就沒有任何問題。

Network 管理員的步驟自我驗證

若要將與 Operations Manager 系統管理員的來回通訊降到最低,網路管理員必須獨立評估網路設定。 如有需要,可以向 Operations Manager 系統管理員尋求協助,以執行驗證工具,確保參數評估流程更加順暢且更有效率。

執行網路系統管理員自我驗證是選用步驟。 我們為每個組織提供彈性,可根據其便利性和特定需求來決定是否進行此流程。

請遵循下列步驟驗證指令碼:

  1. 在 SCOM 受控執行個體建立所選擇的子網路內產生在 Windows Server 2022 或 2019 上執行的新 VM。 登入 VM,並將其 DNS 伺服器設定為使用建立 SCOM 受控執行個體期間所打算使用的相同 DNS 伺服器 IP。 如果 Operations Manager 系統管理員已經建立測試 VM,請使用測試 VM。 例如,請參閱下列螢幕擷取畫面來設定 DNS 伺服器 IP。

    DNS 伺服器 IP 的螢幕擷取畫面。

  2. 將驗證指令碼下載至測試 VM 並解壓縮。 其中包含五個檔案:

    • Readme.txt
    • ScomValidation.ps1
    • RunValidationAsSCOMAdmin.ps1
    • RunValidationAsActiveDirectoryAdmin.ps1
    • RunValidationAsNetworkAdmin.ps1
  3. 遵循 Readme.txt 檔案中所述的步驟來執行 RunValidationAsNetworkAdmin.ps1。 執行之前,請務必先將適當的設定值填入 RunValidationAsNetworkAdmin.ps1

    # $settings = @{
    #   Configuration = @{
    #         DomainName="test.com"                 
    #         DNSServerIP = "000.00.0.00"
    #	     SqlDatabaseInstance= "<SQL MI Host name>"           
    #     }
    # }
    # Note : Before running this script, please make sure you have provided all the parameters in the settings
    $settings = @{
    Configuration = @{
    DomainName="<domain name>"
    DNSServerIP = "<DNS server IP>"
    SqlDatabaseInstance= "<SQL MI Host name>"
    }
    }
    
  4. 一般而言,RunValidationAsNetworkAdmin.ps1 會執行與網路設定相關的所有驗證。 如果您想要執行特定檢查,請開啟 ScomValidation.ps1,並批注網路系統管理員檢查之下的所有其他檢查。 您也可以在特定檢查中新增中斷點,以偵錯檢查並進一步了解問題。

            # Mode is Network admin then following validations/test will be performed
            try {
                $validationResults += Invoke-ValidateStorageConnectivity $settings
                $results = ConvertTo-Json $validationResults -Compress
    
                $validationResults += Invoke-ValidateSQLConnectivity $settings
                $results = ConvertTo-Json $validationResults -Compress
    
                $validationResults += Invoke-ValidateDnsIpAddress $settings
                $results = ConvertTo-Json $validationResults -Compress
    
                $validationResults += Invoke-ValidateDomainControllerConnectivity $settings
                $results = ConvertTo-Json $validationResults -Compress
            }
            catch {
                Write-Verbose -Verbose  $_
        }
    
  5. 驗證指令碼會顯示所有驗證檢查及其各自的錯誤,這有助於解決驗證問題。 為了快速解析,請在 PowerShell ISE 中使用中斷點執行指令碼,以加速偵錯流程。

    如果所有檢查都成功通過,網路設定參數就沒有任何問題。

下一步