Ocena serwerów z obsługą usługi Azure Arc na maszynie wirtualnej platformy Azure

Uwaga

W tym artykule odwołuje się do systemu CentOS — dystrybucji systemu Linux, która zbliża się do stanu zakończenia życia (EOL). Rozważ odpowiednie użycie i planowanie. Aby uzyskać więcej informacji, zobacz wskazówki dotyczące zakończenia życia systemu CentOS.

Serwery z obsługą usługi Azure Arc ułatwiają łączenie serwerów działających lokalnie lub w innych chmurach z platformą Azure. Zwykle nie można połączyć maszyny wirtualnej platformy Azure z usługą Azure Arc, ponieważ wszystkie te same możliwości są natywnie dostępne dla tych maszyn wirtualnych. Maszyny wirtualne platformy Azure mają już reprezentację w usłudze Azure Resource Manager, rozszerzeniach maszyn wirtualnych, tożsamościach zarządzanych i usłudze Azure Policy. Jeśli spróbujesz zainstalować serwery z obsługą usługi Azure Arc na maszynie wirtualnej platformy Azure, zostanie wyświetlony komunikat o błędzie z informacją, że nie jest obsługiwany.

Chociaż nie można zainstalować serwerów z obsługą usługi Azure Arc na maszynie wirtualnej platformy Azure na potrzeby scenariuszy produkcyjnych, można skonfigurować serwery z obsługą usługi Azure Arc do uruchamiania na maszynie wirtualnej platformy Azure tylko do celów ewaluacyjnych i testowych. W tym artykule opisano sposób przygotowania maszyny wirtualnej platformy Azure do wyglądu serwera lokalnego na potrzeby testowania.

Uwaga

Kroki opisane w tym artykule są przeznaczone dla maszyn wirtualnych hostowanych w chmurze platformy Azure. Serwery z obsługą usługi Azure Arc nie są obsługiwane na maszynach wirtualnych uruchomionych w usłudze Azure Stack Hub lub Azure Stack Edge.

Wymagania wstępne

  • Twoje konto jest przypisane do roli Współautor maszyny wirtualnej.
  • Maszyna wirtualna platformy Azure korzysta z systemu operacyjnego obsługiwanego przez serwery z obsługą usługi Azure Arc. Jeśli nie masz maszyny wirtualnej platformy Azure, możesz wdrożyć prostą maszynę wirtualną z systemem Windows lub prostą maszynę wirtualną z systemem Ubuntu Linux 18.04 LTS.
  • Maszyna wirtualna platformy Azure może komunikować się wychodząco, aby pobrać pakiet agenta maszyny platformy Azure Połączenie ed dla systemu Windows z Centrum pobierania Microsoft i systemu Linux z repozytorium pakietów firmy Microsoft. Jeśli łączność wychodząca z Internetem jest ograniczona zgodnie z zasadami zabezpieczeń IT, możesz pobrać pakiet agenta ręcznie i skopiować go do folderu na maszynie wirtualnej platformy Azure.
  • Konto z podwyższonym poziomem uprawnień (czyli administratorem lub głównym) na maszynie wirtualnej oraz dostępem RDP lub SSH do maszyny wirtualnej.
  • Aby zarejestrować maszynę wirtualną platformy Azure i zarządzać nią za pomocą serwerów z włączoną usługą Azure Arc, jesteś członkiem roli Administracja istratora lub współautora zasobu platformy Azure Połączenie ed Machine w grupie zasobów.

Planowanie

Aby rozpocząć zarządzanie maszyną wirtualną platformy Azure jako serwer z obsługą usługi Azure Arc, przed zainstalowaniem i skonfigurowaniem serwerów z obsługą usługi Azure Arc należy wprowadzić następujące zmiany w maszynie wirtualnej platformy Azure.

  1. Usuń wszystkie rozszerzenia maszyn wirtualnych wdrożone na maszynie wirtualnej platformy Azure, takie jak agent usługi Log Analytics. Chociaż serwery z obsługą usługi Azure Arc obsługują wiele tych samych rozszerzeń co maszyny wirtualne platformy Azure, agent maszyny Połączenie ed platformy Azure nie może zarządzać rozszerzeniami maszyny wirtualnej, które zostały już wdrożone na maszynie wirtualnej.

  2. Wyłącz agenta gościa systemu Windows lub Linux platformy Azure. Agent gościa maszyny wirtualnej platformy Azure służy do podobnego celu do agenta maszyny Połączenie platformy Azure. Aby uniknąć konfliktów między nimi, należy wyłączyć agenta maszyny wirtualnej platformy Azure. Po wyłączeniu nie można używać rozszerzeń maszyn wirtualnych ani niektórych usług platformy Azure.

  3. Utwórz regułę zabezpieczeń, aby odmówić dostępu do usługi Azure Instance Metadata Service (IMDS). IMDS to interfejs API REST, który aplikacje mogą wywoływać w celu uzyskania informacji o reprezentacji maszyny wirtualnej na platformie Azure, w tym jego identyfikatora zasobu i lokalizacji. Usługa IMDS zapewnia również dostęp do wszystkich tożsamości zarządzanych przypisanych do maszyny. Serwery z obsługą usługi Azure Arc udostępniają własną implementację usługi IMDS i zwracają informacje o reprezentacji maszyny wirtualnej w usłudze Azure Arc. Aby uniknąć sytuacji, w których dostępne są oba punkty końcowe usługi IMDS, a aplikacje muszą wybrać między nimi, należy zablokować dostęp do imDS maszyn wirtualnych platformy Azure, aby implementacja IMDS serwera z włączoną usługą Azure Arc był jedyną dostępną.

Po wprowadzeniu tych zmian maszyna wirtualna platformy Azure zachowuje się jak każda maszyna lub serwer spoza platformy Azure i jest niezbędna do zainstalowania i oceny serwerów z obsługą usługi Azure Arc.

Po skonfigurowaniu serwerów z obsługą usługi Azure Arc na maszynie wirtualnej zobaczysz dwie reprezentacje na platformie Azure. Jednym z nich jest zasób maszyny wirtualnej platformy Azure z typem Microsoft.Compute/virtualMachines zasobu, a drugi to zasób usługi Azure Arc z typem Microsoft.HybridCompute/machines zasobu. W wyniku zapobiegania zarządzaniu systemem operacyjnym gościa z udostępnionego serwera hosta fizycznego najlepszym sposobem, aby myśleć o tych dwóch zasobach, jest zasób maszyny wirtualnej platformy Azure to sprzęt wirtualny dla maszyny wirtualnej, a ty kontrolujesz stan zasilania i wyświetlasz informacje o jego jednostce SKU, sieci i konfiguracji magazynu. Zasób usługi Azure Arc zarządza systemem operacyjnym gościa na tej maszynie wirtualnej i może służyć do instalowania rozszerzeń, wyświetlania danych zgodności dla usługi Azure Policy i wykonywania innych obsługiwanych zadań przez serwery z obsługą usługi Azure Arc.

Ponowne konfigurowanie maszyny wirtualnej platformy Azure

Uwaga

W przypadku systemu Windows ustaw zmienną środowiskową, aby zastąpić usługę ARC w instalacji maszyny wirtualnej platformy Azure.

[System.Environment]::SetEnvironmentVariable("MSFT_ARC_TEST",'true', [System.EnvironmentVariableTarget]::Machine)
  1. Usuń wszystkie rozszerzenia maszyn wirtualnych na maszynie wirtualnej platformy Azure.

    W witrynie Azure Portal przejdź do zasobu maszyny wirtualnej platformy Azure, a następnie w okienku po lewej stronie wybierz pozycję Rozszerzenia. Jeśli na maszynie wirtualnej są zainstalowane jakiekolwiek rozszerzenia, wybierz każde rozszerzenie indywidualnie, a następnie wybierz pozycję Odinstaluj. Przed przejściem do kroku 2 poczekaj na zakończenie odinstalowywania wszystkich rozszerzeń.

  2. Wyłącz agenta gościa maszyny wirtualnej platformy Azure.

    Aby wyłączyć agenta gościa maszyny wirtualnej platformy Azure, połącz się z maszyną wirtualną przy użyciu pulpitu zdalnego Połączenie ion (Windows) lub SSH (Linux) i uruchom następujące polecenia, aby wyłączyć agenta gościa.

    W systemie Windows uruchom następujące polecenia programu PowerShell:

    Set-Service WindowsAzureGuestAgent -StartupType Disabled -Verbose
    Stop-Service WindowsAzureGuestAgent -Force -Verbose
    

    W przypadku systemu Linux uruchom następujące polecenia:

    sudo systemctl stop walinuxagent
    sudo systemctl disable walinuxagent
    
  3. Blokuj dostęp do punktu końcowego usługi Azure IMDS.

    Mimo że połączenie jest nadal połączone z serwerem, uruchom następujące polecenia, aby zablokować dostęp do punktu końcowego usługi Azure IMDS. W systemie Windows uruchom następujące polecenie programu PowerShell:

    New-NetFirewallRule -Name BlockAzureIMDS -DisplayName "Block access to Azure IMDS" -Enabled True -Profile Any -Direction Outbound -Action Block -RemoteAddress 169.254.169.254
    

    W przypadku systemu Linux zapoznaj się z dokumentacją dystrybucji, aby uzyskać najlepszy sposób blokowania dostępu wychodzącego do 169.254.169.254/32 portu TCP 80. Zwykle dostęp wychodzący jest blokowany za pomocą wbudowanej zapory, ale można również tymczasowo zablokować go za pomocą tabel iptable lub nftables.

    Jeśli maszyna wirtualna platformy Azure korzysta z systemu Ubuntu, wykonaj następujące kroki, aby skonfigurować nieskomplikowaną zaporę (UFW):

    sudo ufw --force enable
    sudo ufw deny out from any to 169.254.169.254
    sudo ufw default allow incoming
    

    Jeśli na maszynie wirtualnej platformy Azure działa system CentOS, Red Hat lub SUSE Linux Enterprise Server (SLES), wykonaj następujące kroki, aby skonfigurować zaporę:

    sudo firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -d 169.254.169.254 -j REJECT
    sudo firewall-cmd --reload
    

    W przypadku innych dystrybucji zapoznaj się z dokumentami zapory lub skonfiguruj ogólną regułę iptables za pomocą następującego polecenia:

    sudo iptables -I OUTPUT 1 -d 169.254.169.254 -j REJECT
    

    Uwaga

    Konfiguracja iptables musi być ustawiona po każdym ponownym uruchomieniu, chyba że jest używane trwałe rozwiązanie iptables.

  4. Zainstaluj i skonfiguruj agenta usługi Azure Połączenie ed Machine.

    Maszyna wirtualna jest teraz gotowa do rozpoczęcia oceny serwerów z obsługą usługi Azure Arc. Aby zainstalować i skonfigurować agenta usługi Azure Połączenie ed Machine, zobacz Połączenie maszyn hybrydowych przy użyciu witryny Azure Portal i wykonaj kroki generowania skryptu instalacji i instalowania przy użyciu metody skryptowej.

    Uwaga

    Jeśli łączność wychodząca z Internetem jest ograniczona z maszyny wirtualnej platformy Azure, możesz pobrać pakiet agenta ręcznie. Skopiuj pakiet agenta do maszyny wirtualnej platformy Azure i zmodyfikuj skrypt instalacji serwerów z obsługą usługi Azure Arc, aby odwoływać się do folderu źródłowego.

Jeśli pominięto jeden z kroków, skrypt instalacji wykryje, że jest uruchomiony na maszynie wirtualnej platformy Azure i kończy działanie z powodu błędu. Sprawdź, czy wykonano kroki od 1 do 3, a następnie uruchom ponownie skrypt.

Weryfikowanie połączenia z usługą Azure Arc

Po zainstalowaniu i skonfigurowaniu agenta do zarejestrowania się na serwerach z obsługą usługi Azure Arc przejdź do witryny Azure Portal, aby sprawdzić, czy serwer został pomyślnie połączony. Wyświetl maszynę w witrynie Azure Portal.

Pomyślne połączenie z serwerem

Następne kroki