Rozwiązywanie problemów z agentem maszyny wirtualnej z systemem Windows platformy Azure
Dotyczy: ✔️ maszyny wirtualne z systemem Windows
Uwaga 16.
Czy ten artykuł był pomocny? Twoje dane wejściowe są dla nas ważne. Użyj przycisku Opinie na tej stronie, aby poinformować nas, jak dobrze działa ten artykuł lub jak możemy go ulepszyć.
Agent maszyny wirtualnej platformy Azure to agent maszyny wirtualnej. Umożliwia ona maszynie wirtualnej komunikowanie się z kontrolerem sieci szkieletowej (bazowym serwerem fizycznym, na którym jest hostowana maszyna wirtualna) na adresie 168.63.129.16
IP. Ten adres jest wirtualnym publicznym adresem IP, który ułatwia komunikację. Aby uzyskać więcej informacji, zobacz Co to jest adres IP 168.63.129.16?.
Maszyna wirtualna migrowana na platformę Azure ze środowiska lokalnego lub utworzona przy użyciu dostosowanego obrazu nie ma zainstalowanego agenta maszyny wirtualnej platformy Azure. W tych scenariuszach należy ręcznie zainstalować agenta maszyny wirtualnej. Aby uzyskać więcej informacji na temat sposobu instalowania agenta maszyny wirtualnej, zobacz Omówienie agenta maszyny wirtualnej platformy Azure.
Po pomyślnym zainstalowaniu agenta maszyny wirtualnej platformy Azure możesz zobaczyć następujące usługi wymienione w pliku services.msc na maszynie wirtualnej.
Usługa | opis |
---|---|
Agent gościa platformy Azure w systemie Windows | Ta usługa jest odpowiedzialna za konfigurowanie różnych rozszerzeń i komunikacji z maszyny wirtualnej gościa do agenta hosta. Odpowiada również za zbieranie dzienników w WaAppAgent.log. |
Telemetria | Ta usługa jest odpowiedzialna za wysyłanie danych telemetrycznych maszyny wirtualnej do serwera zaplecza. |
RdAgent | Ta usługa jest odpowiedzialna za instalację agenta gościa. (Transparent Installer to inny składnik rdAgent, który pomaga uaktualnić inne składniki i usługi agenta gościa). RdAgent jest również odpowiedzialny za wysyłanie pulsów z maszyny wirtualnej gościa do agenta hosta na serwerze fizycznym. |
Uwaga 16.
Począwszy od wersji 2.7.41491.971 agenta gościa, składnik telemetrii jest uwzględniony w usłudze Agent gościa platformy Windows Azure. W związku z tym ta usługa telemetrii może nie być widoczna na liście nowo utworzonych maszyn wirtualnych.
Lista kontrolna rozwiązywania problemów
Aby można było uruchomić dowolne rozszerzenie maszyny wirtualnej, należy zainstalować i pomyślnie uruchomić agenta gościa maszyny wirtualnej platformy Azure. Jeśli widzisz, że agent gościa jest zgłaszany jako Niedostępny lub jeśli rozszerzenie kończy się niepowodzeniem i zwraca komunikat o błędzie, taki jak VMAgentStatusCommunicationError
, wykonaj następujące kroki, aby rozpocząć rozwiązywanie problemów z agentem gościa.
Krok 1. Sprawdzanie, czy maszyna wirtualna jest uruchomiona
Aby sprawdzić, czy maszyna wirtualna jest uruchomiona, wykonaj następujące kroki:
W witrynie Azure Portal wyszukaj i wybierz pozycję Maszyny wirtualne.
Na liście maszyn wirtualnych wybierz nazwę maszyny wirtualnej platformy Azure.
W okienku nawigacji maszyny wirtualnej platformy Azure wybierz pozycję Przegląd.
Jeśli maszyna wirtualna nie jest jeszcze włączona, znajdź listę akcji w górnej części strony Przegląd , a następnie wybierz link Uruchom .
Sprawdź również, czy system operacyjny jest uruchomiony i działa pomyślnie.
Krok 2. Sprawdzanie, czy agent gościa jest gotowy
Mimo że nadal jesteś na stronie przeglądu maszyny wirtualnej w witrynie Azure Portal, wybierz kartę Właściwości. Jeśli pole stanu agenta ma wartość Gotowe, sprawdź, czy wartość pola wersji agenta spełnia wymagania minimalnej obsługiwanej wersję. Poniższy zrzut ekranu przedstawia, gdzie można znaleźć te pola.
Jeśli stan agenta gościa jest gotowy , ale masz problem, który obejmuje rozszerzenie maszyny wirtualnej, zobacz Rozszerzenia i funkcje maszyny wirtualnej platformy Azure, aby zapoznać się z sugestiami dotyczącymi rozwiązywania problemów.
Jeśli stan agenta gościa jest niedostępny lub pusty, agent gościa nie jest zainstalowany lub nie działa poprawnie.
Krok 3. Sprawdzanie, czy usługi agenta gościa są uruchomione
Użyj protokołu RDP (Remote Desktop Protocol), aby nawiązać połączenie z maszyną wirtualną.
Uwaga 16.
Agent gościa nie jest niezbędny do pomyślnego działania łączności RDP. Jeśli wystąpią problemy wpływające na łączność RDP z maszyną wirtualną, zobacz Rozwiązywanie problemów z połączeniami pulpitu zdalnego z maszyną wirtualną platformy Azure.
Na maszynie wirtualnej wybierz pozycję Start, wyszukaj ciąg services.msc, a następnie wybierz aplikację Usługi .
W oknie Usługi wybierz usługę RdAgent.
Wybierz menu Akcja, a następnie wybierz pozycję Właściwości.
Na karcie Ogólne okna dialogowego Właściwości upewnij się, że spełnione są następujące warunki, a następnie wybierz przycisk OK lub Anuluj:
- Lista rozwijana Typ uruchamiania jest ustawiona na Wartość Automatyczna.
- Pole Stan usługi ma wartość Uruchomiono.
W oknie Usługi wybierz usługę WindowsAzureGuestAgent.
Powtórz kroki 4 i 5.
Jeśli usługi nie istnieją, agent gościa prawdopodobnie nie jest zainstalowany. W takim przypadku można ręcznie zainstalować agenta gościa. Przed wykonaniem instalacji ręcznej sprawdź wymagania wstępne instalacji.
Krok 4. Testowanie łączności wireserver
Aby można było pomyślnie uruchomić, agent gościa wymaga łączności z adresem 168.63.129.16
IP serwera WireServer (ip hosta) na portach 80
i 32526
. Aby uzyskać instrukcje dotyczące testowania łączności z tym adresem IP, zobacz sekcję Rozwiązywanie problemów z łącznością w temacie Co to jest adres IP 168.63.129.16?
Jeśli którykolwiek z testów w tej sekcji nie łączy się, sprawdź, czy występują problemy, które mogą spowodować, że którykolwiek z następujących składników blokuje dostęp do adresu 168.63.129.16
IP:
- Zapora
- Serwer proxy
- Aplikacja
Krok 5. Przeglądanie plików dziennika
Sprawdź następujące lokalizacje dziennika pod kątem błędów godnych uwagi:
- C:\WindowsAzure\Logs\WaAppAgent.log
- C:\WindowsAzure\Logs\TransparentInstaller.log
Porównaj wszelkie błędy, które można znaleźć w następujących typowych scenariuszach, które mogą spowodować, że agent maszyny wirtualnej platformy Azure wyświetli stan Nie jest gotowy lub przestanie działać zgodnie z oczekiwaniami.
Przyczyna 1: Maszyny wirtualne z systemem Windows korzystające z agenta maszyny wirtualnej platformy Azure w wersji 2.7.41491.1004 występują problemy z programem Sysprep
Uruchomienie narzędzia Sysprep na tych maszynach wirtualnych może spowodować następujące błędy:
Po pierwszym uruchomieniu narzędzia Sysprep zostanie wyświetlony następujący komunikat o błędzie:
ADMINISTRATOR: Program obsługi błędów
Po uruchomieniu narzędzia Sysprep więcej niż jeden raz zostanie wyświetlony następujący komunikat o błędzie:
Wystąpił błąd krytyczny podczas próby sysprep maszyny wirtualnej
Rozwiązanie 1. Zresetowanie stanu sysprep maszyny wirtualnej, a następnie uaktualnienie agenta maszyny wirtualnej platformy Azure do nowszej wersji
Ważne
W tej sekcji, metodzie lub w tym zadaniu podano informacje dotyczące modyfikowania rejestru. Niepoprawne zmodyfikowanie rejestru może jednak być przyczyną poważnych problemów. Dlatego należy uważnie wykonać poniższe kroki. Aby uzyskać dodatkową ochronę, należy przed rozpoczęciem wykonania tej modyfikacji wykonać kopię zapasową rejestru, aby rejestr mógł zostać przywrócony w przypadku wystąpienia problemu. Aby uzyskać więcej informacji na temat sposobu tworzenia kopii zapasowych, przywracania i modyfikowania rejestru, zobacz artykuł Tworzenie kopii zapasowych i przywracanie rejestru systemu Microsoft Windows.
Najpierw zresetuj stan sysprep maszyny wirtualnej. Resetowanie obejmuje modyfikowanie niektórych kluczy rejestru. Następnie możesz uaktualnić agenta maszyny wirtualnej platformy Azure do nowszej wersji. Ponieważ problem występuje tylko w wersji 2.7.41491.1004, możesz spróbować uaktualnić agenta do najnowszej wersji agenta.
Przyczyna 2: Agent jest zablokowany w procesie "Uruchamianie"
W pliku WaAppAgent.log widać, że agent jest zablokowany w procesie "Uruchamianie" i nie można go uruchomić:
[00000007] [05/28/2019 12:58:50.90] [INFO] WindowsAzureGuestAgent starting. Version 2.7.41491.901
Maszyna wirtualna nadal korzysta ze starszej wersji agenta maszyny wirtualnej platformy Azure. W folderze C:\WindowsAzure można zauważyć, że zainstalowano wiele wystąpień agenta maszyny wirtualnej platformy Azure, w tym kilka wystąpień, które mają tę samą wersję. Ponieważ zainstalowano więcej niż jedno wystąpienie agenta, maszyna wirtualna nie uruchamia najnowszej wersji agenta maszyny wirtualnej platformy Azure.
Rozwiązanie 2. Ręczne odinstalowanie i ponowne zainstalowanie agenta maszyny wirtualnej platformy Azure
Ręcznie odinstaluj agenta maszyny wirtualnej platformy Azure, a następnie zainstaluj go ponownie, wykonując następujące kroki:
Otwórz Panel sterowania> Programy i funkcje i odinstaluj agenta maszyny wirtualnej platformy Azure.
Uruchom Menedżera zadań, a następnie zatrzymaj następujące usługi:
- Usługa agenta maszyny wirtualnej platformy Azure
- Usługa RdAgent
- Usługa telemetrii platformy Windows Azure
- Usługa agenta sieci platformy Azure w systemie Windows
W obszarze C:\WindowsAzure utwórz folder o nazwie OLD.
Przenieś wszystkie foldery o nazwie Packages lub GuestAgent do folderu OLD . Ponadto przenieś dowolne foldery GuestAgent w folderze C:\WindowsAzure\logs , które są uruchamiane jako GuestAgent_x.x.xxxxx do folderu OLD .
Pobierz i zainstaluj najnowszą wersję agenta Instalatora Windows (MSI). Aby ukończyć instalację, musisz mieć uprawnienia administratora.
Zainstaluj agenta gościa, uruchamiając następujące polecenie msiexec :
msiexec.exe /i c:\VMAgentMSI\WindowsAzureVmAgent.2.7.<version>.fre.msi /quiet /L*v c:\VMAgentMSI\msiexec.log
Sprawdź, czy usługi RdAgent, Azure VM Agent i Windows Azure Telemetry są teraz uruchomione.
Sprawdź plik WaAppAgent.log, aby upewnić się, że jest uruchomiona najnowsza wersja agenta maszyny wirtualnej platformy Azure.
Usuń folder OLD w folderze C:\WindowsAzure.
Przyczyna 3: Nie można nawiązać połączenia z adresem IP serwera WireServer (adresem IP hosta)
Zauważysz następujące wpisy błędów w plikach WaAppAgent.log i Telemetry.log :
[ERROR] GetVersions() failed with exception: Microsoft.ServiceModel.Web.WebProtocolException: Server Error: Service Unavailable (ServiceUnavailable) --->
System.Net.WebException: The remote server returned an error: (503) Server Unavailable.
[00000011] [12/11/2018 06:27:55.66] [WARN] (Ignoring) Exception while fetching supported versions from HostGAPlugin: System.Net.WebException: Unable to connect to the remote server
---> System.Net.Sockets.SocketException: An attempt was made to access a socket in a way forbidden by its access permissions 168.63.129.16:32526
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState status, IAsyncResult asyncResult, Exception& exception)
--- End of inner exception stack trace ---
at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
at System.Net.WebClient.DownloadString(Uri address)
at Microsoft.GuestAgentHostPlugin.Client.GuestInformationServiceClient.GetVersions()
at Microsoft.WindowsAzure.GuestAgent.ContainerStateMachine.HostGAPluginUtility.UpdateHostGAPluginAvailability()`
Te wpisy błędów wskazują, że maszyna wirtualna nie może nawiązać połączenia z serwerem hosta WireServer.
Rozwiązanie 3. Włączanie protokołu DHCP i upewnij się, że serwer nie jest blokowany przez zapory, serwery proxy lub inne źródła
Ponieważ serwer WireServer nie jest osiągalny, połącz się z maszyną wirtualną przy użyciu pulpitu zdalnego, a następnie spróbuj uzyskać dostęp do adresu URL
http://168.63.129.16/?comp=versions
w przeglądarce internetowej.Jeśli nie możesz uzyskać dostępu do adresu URL z kroku 1, sprawdź interfejs sieciowy, aby określić, czy jest on włączony do korzystania z protokołu DHCP (Dynamic Host Configuration Protocol) i ma system DNS. Aby sprawdzić stan DHCP interfejsu sieciowego, uruchom następujące polecenie adresu IP interfejsu powłoki sieciowej (
netsh
), aby wyświetlić konfigurację:netsh interface ip show config
Jeśli protokół DHCP jest wyłączony, uruchom następujące
netsh
polecenie IP interfejsu dla ustawionego adresu:netsh interface ip set address name="<name-of-the-interface>" source=dhcp
Uwaga: W tym poleceniu zmień wartość symbolu zastępczego na nazwę interfejsu.
Sprawdź, czy występują problemy z zaporą, serwerem proxy lub innym źródłem, które mogą spowodować zablokowanie dostępu do adresu IP.
168.63.129.16
Sprawdź, czy zapora systemu Windows, czy zapora innej firmy blokuje dostęp do portów
80
i32526
. Aby uzyskać więcej informacji na temat tego, dlaczego ten adres nie powinien być blokowany, zobacz Co to jest adres IP 168.63.129.16?
Przyczyna 4: Agent gościa jest zablokowany w procesie "Zatrzymywanie"
W pliku WaAppAgent.log zauważysz następujące wpisy o błędzie:
[00000007] [07/18/2019 14:46:28.87] [WARN] WindowsAzureGuestAgent stopping.
[00000007] [07/18/2019 14:46:28.89] [INFO] Uninitializing StateExecutor with WaitForTerminalStateReachedOnEnd : True
[00000004] [07/18/2019 14:46:28.89] [WARN] WindowsAzureGuestAgent could not be stopped. Exception: System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.WindowsAzure.GuestAgent.ContainerStateMachine.GoalStateExecutorBase.WaitForExtensionWorkflowComplete(Boolean WaitForTerminalStateReachedOnEnd)
at Microsoft.WindowsAzure.GuestAgent.ContainerStateMachine.GoalStateExecutorBase.Uninitialize(Boolean WaitForTerminalStateReachedOnEnd)
at Microsoft.WindowsAzure.GuestAgent.ContainerStateMachine.GoalStateExecutorForCloud.Uninitialize(Boolean WaitForTerminalStateReachedOnEnd)
at Microsoft.WindowsAzure.GuestAgent.AgentCore.AgentCore.Stop(Boolean waitForTerminalState)
at Microsoft.WindowsAzure.GuestAgent.AgentCore.AgentService.DoStopService()
at Microsoft.WindowsAzure.GuestAgent.AgentCore.AgentService.<>c__DisplayClass2.<OnStopProcessing>b__1()
Te wpisy błędów wskazują, że agent maszyny wirtualnej platformy Azure jest zablokowany w procesie "Zatrzymywanie".
Rozwiązanie 4a: uruchamianie WaAppAgent.exe i zatrzymywanie WindowsAzureGuest.exe
Upewnij się, że WaAppAgent.exe jest uruchomiona na maszynie wirtualnej. Jeśli nie jest uruchomiona, uruchom ponownie usługę RdAgent, a następnie zaczekaj pięć minut. Po uruchomieniu WaAppAgent.exe zakończ proces WindowsAzureGuest.exe.
Rozwiązanie 4b: uaktualnianie do najnowszej wersji agenta maszyny wirtualnej platformy Azure
Jeśli rozwiązanie 4a nie rozwiąże problemu, usuń aktualnie zainstalowaną wersję, a następnie zainstaluj najnowszą wersję agenta ręcznie.
Przyczyna 5. Karta sprzężenia zwrotnego npcap jest zainstalowana
W pliku WaAppAgent.log zauważysz następujące wpisy o błędzie:
[00000006] [06/20/2019 07:44:28.93] [INFO] Attempting to discover fabric address on interface Npcap Loopback Adapter.
[00000024] [06/20/2019 07:44:28.93] [WARN] Empty DHCP option data returned
[00000006] [06/20/2019 07:44:28.93] [ERROR] Did not discover fabric address on interface Npcap Loopback Adapter
Te wpisy błędów wskazują, że program Wireshark zainstalował kartę sprzężenia zwrotnego przechwytywania pakietów (Npcap) projektu mapowania sieciowego (Nmap) na maszynie wirtualnej. Wireshark to narzędzie typu open source do profilowania ruchu sieciowego i analizowania pakietów. Takie narzędzie jest często określane jako analizator sieci, analizator protokołu sieciowego lub sniffer.
Rozwiązanie 5. Wyłączanie karty sprzężenia zwrotnego npcap
Spróbuj wyłączyć kartę sprzężenia zwrotnego npcap, a następnie sprawdź, czy problem został rozwiązany.
Przyczyna 6. Problemy z zdalnym wywołaniem procedury (RPC)
W pliku WaAppAgent.log zauważysz następujące wpisy o błędzie:
[00000004] [01/12/2019 00:30:47.24] [ERROR] RdCrypt Initialization failed. Error Code: -2147023143.
[00000004] [01/12/2019 00:30:47.24] [ERROR] Failed to get TransportCertificate. Error: System.AccessViolationException
Microsoft.Cis.Fabric.CertificateServices.RdCertificateFactory.Shutdown()
[00000004] [01/12/2019 00:30:47.24] [WARN] Could not get transport certificate from agent runtime for subject name: 12345678-d7c8-4387-8cf3-d7ecf62544e5. Installing certificates in the LocalMachine store failed.
[00000004] [01/12/2019 00:30:47.24] [WARN] Fetching certificate blob from the cert URI: http://168.63.129.16/machine/12345678-d7c8-4387-8cf3-d7ecf62544e5/12345678-d447-4b10-a5da-1ba1581cd7d7._VMName?comp=certificates&incarnation=2 failed with exception: System.NullReferenceException
-2147023143 = 0x6d9 = EPT_S_NOT_REGISTERED
Te wpisy błędów są prawdopodobnie spowodowane problemami z zdalnym wywołaniem procedury (RPC). Na przykład punkt końcowy RPC może nie nasłuchiwać lub proces RPC może brakować na przeciwległym końcu.
Rozwiązanie 6. Uruchamianie usługi izolacji kluczy CNG
Sprawdź, czy usługa Izolacja kluczy następnej generacji (CNG) kryptografii (CNGKEYISO
CNG) znajduje się na liście punktów końcowych RPC, uruchamiając następujące polecenie portqry :
portqry -n <VMName> -e 135
Jeśli nie widzisz CNGKEYISO
procesu, uruchom go z konsoli usług systemu Windows (izolacja klucza CNG = KeyIso
), a następnie uruchom ponownie WaAppAgent.exe lub WindowsAzureGuestAgent.exe.
Przyczyna 7: Nie powiodło się wywołanie PInvoke PFXImportCertStore i zwracano dojście o wartości null. Kod błędu: 86
Agent gościa systemu Windows jest uruchomiony, ale rozszerzenia nie działają. W pliku WaAppAgent.log zauważysz następujące wpisy o błędzie:
PInvoke PFXImportCertStore failed and null handle is returned. Error Code: 86
[00000003] [10/21/2020 02:37:45.98] [WARN] Could not get transport certificate from agent runtime for subject name: 12345678-dae3-4c2f-be57-55c0ab7a44e5. Installing certificates in the LocalMachine store failed.
[00000003] [10/21/2020 02:37:45.98] [ERROR] Installing certificates in the LocalMachine store failed with exception: Microsoft.WindowsAzure.GuestAgent.CertificateManager.CryptographyNative+PInvokeException: PInvoke PFXImportCertStore failed and null handle is returned. Error Code: 86.
Te wpisy błędów są prawdopodobnie spowodowane brakiem uprawnień w folderach kryptograficznych dla konta SYSTEM. W przypadku zbierania śledzenia monitora procesów (ProcMon) podczas ponownego uruchamiania usług agenta gościa (RdAgent lub WindowsAzureGuestAgent) powinno być możliwe wyświetlenie niektórych błędów "Odmowa dostępu".
Rozwiązanie 7. Dodawanie pełnej kontroli nad folderami kryptograficznymi do konta SYSTEM
Upewnij się, że konto SYSTEM ma uprawnienia Pełna kontrola w następujących folderach:
C:\ProgramData\Microsoft\Crypto\Keys
C:\ProgramData\Microsoft\Crypto\RSA
C:\ProgramData\Microsoft\Crypto\SystemKeys
Przyczyna 8: System.BadImageFormatException: Podjęto próbę załadowania programu z nieprawidłowym formatem. (Wyjątek od HRESULT: 0x8007000B)
W pliku WaAppAgent.log zauważysz następujące wpisy o błędzie wskazujące, że agent gościa nie odpowiada:
[00000018] 2021-01-12T16:35:45Z [INFO] Test extract the plugin zip file to the temp folder C:\TEMP\12345678-5f85-45dc-9f17-55be1fde7b10
[00000010] 2021-01-12T16:35:45Z [ERROR] InstallPlugins() failed with exception: System.AggregateException: One or more errors occurred. ---> System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
at Microsoft.WindowsAzure.GuestAgent.ExtensionStateMachine.PluginInstaller.PackageExpand(String packageFilePath, String destinationPath)
at Microsoft.WindowsAzure.GuestAgent.ExtensionStateMachine.PluginInstaller.ValidateExtensionZipFile(String pluginName, String pluginVersion, String& pluginZipFile)
Najprawdopodobniej te wpisy błędów występują, ponieważ na maszynie wirtualnej zainstalowano aplikację innej firmy i zmodyfikowała zachowanie 32-bitowych lub 64-bitowych aplikacji platformy .NET.
Błąd BadImageFormatException
występuje, gdy 64-bitowa aplikacja ładuje 32-bitową bibliotekę DLL.
Rozwiązanie 8. Ustaw wpis rejestru Enable64Bit dla programu .NET Framework i uruchom ponownie maszynę wirtualną
Ważne
W tej sekcji, metodzie lub w tym zadaniu podano informacje dotyczące modyfikowania rejestru. Niepoprawne zmodyfikowanie rejestru może jednak być przyczyną poważnych problemów. Dlatego należy uważnie wykonać poniższe kroki. Aby uzyskać dodatkową ochronę, należy przed rozpoczęciem wykonania tej modyfikacji wykonać kopię zapasową rejestru, aby rejestr mógł zostać przywrócony w przypadku wystąpienia problemu. Aby uzyskać więcej informacji na temat sposobu tworzenia kopii zapasowych, przywracania i modyfikowania rejestru, zobacz artykuł Tworzenie kopii zapasowych i przywracanie rejestru systemu Microsoft Windows.
Otwórz rejestr, znajdź HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\. Podklucz rejestru NETFramework, a następnie wyświetl wpis rejestru Enable64Bit.
Jeśli wpis rejestru Enable64Bit ma wartość 0, aplikacje platformy .NET w wersji 64-bitowej są traktowane jako aplikacje 32-bitowe. W związku z tym agent maszyny wirtualnej platformy Azure nie działa.
Rozwiązaniem jest ustawienie klucza Enable64Bit na 1, a następnie ponowne uruchomienie maszyny wirtualnej.
Przyczyna 9: Agent gościa systemu Windows nie uruchamia się z powodu błędu ConfigurationErrorsException lub TypeInitializationException
Agent gościa systemu Windows przestaje odpowiadać podczas uruchamiania, a wyświetlane są następujące wpisy dziennika aplikacji:
Log Name: Application
Source: .NET Runtime
Date: 3/07/2023 10:25:59 AM
Event ID: 1026
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: vm372437823
Description:
Application: WindowsAzureGuestAgent.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Configuration.ConfigurationErrorsException
at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean)
at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(System.Configuration.ConfigurationSchemaErrors)
at System.Configuration.ClientConfigurationSystem.EnsureInit(System.String)
Exception Info: System.Configuration.ConfigurationErrorsException
at System.Configuration.ClientConfigurationSystem.EnsureInit(System.String)
at System.Configuration.ClientConfigurationSystem.PrepareClientConfigSystem(System.String)
at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection(System.String)
at System.Configuration.ConfigurationManager.GetSection(System.String)
at System.Configuration.PrivilegedConfigurationManager.GetSection(System.String)
at System.Diagnostics.DiagnosticsConfiguration.GetConfigSection()
at System.Diagnostics.DiagnosticsConfiguration.Initialize()
at System.Diagnostics.DiagnosticsConfiguration.get_IndentSize()
at System.Diagnostics.TraceInternal.InitializeSettings()
at System.Diagnostics.Trace.set_AutoFlush(Boolean)
at Microsoft.WindowsAzure.GuestAgent.Prime.TraceManager..cctor()
Exception Info: System.TypeInitializationException
at Microsoft.WindowsAzure.GuestAgent.Prime.TraceManager.Write(System.String, System.Object[])
at Microsoft.WindowsAzure.GuestAgent.AgentCore.AgentCore.Start()
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart()
Ten problem może wystąpić, jeśli brakuje pliku C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config .
Rozwiązanie 9. Kopiowanie pliku machine.config działającego na maszynę wirtualną, a następnie ponowne uruchomienie usług agenta gościa
Aby rozwiązać problem, wykonaj następujące kroki:
Skopiuj plik machine.config z działającej maszyny wirtualnej, a następnie wklej go do folderu C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config na problematycznej maszynie wirtualnej.
Uruchom ponownie usługi agenta gościa, uruchamiając
net stop
polecenia inet start
:net stop RdAgent net stop WindowsAzureGuestAgent net start RdAgent net start WindowsAzureGuestAgent
Następne kroki
Inne znane problemy skojarzone z agentem maszyny wirtualnej platformy Azure są wymienione w repozytorium GitHub.
Zastrzeżenie dotyczące innych firm
Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.
Wyłączenie odpowiedzialności za kontakty z osobami trzecimi
Firma Microsoft udostępnia informacje kontaktowe innych firm, aby uzyskać dodatkowe informacje na temat tego tematu. Informacje te mogą zostać zmienione bez powiadomienia. Firma Microsoft nie gwarantuje dokładności informacji kontaktowych innych firm.
Skontaktuj się z nami, aby uzyskać pomoc
Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.