Rozwiązywanie problemów z maszyną wirtualną usługi Azure Nauka o danych

W tym artykule wyjaśniono, jak znaleźć i poprawić błędy lub błędy, które mogą wystąpić podczas korzystania z maszyny wirtualnej usługi Azure Nauka o danych.

Ubuntu

Naprawianie procesora GPU na procesorze GPU NVIDIA A100 — Seria Azure NDasrv4

Maszyna wirtualna z serii ND A100 v4 jest flagowym dodatkiem do rodziny procesorów GPU platformy Azure. Obsługuje wysokiej klasy głębokie Edukacja trenowanie i ściśle powiązane, skalowane w górę i skalowane w poziomie obciążenia HPC.

Ze względu na unikatową architekturę potrzebuje innej konfiguracji dla obciążeń o wysokim zapotrzebowaniu, aby korzystać z przyspieszania procesora GPU przy użyciu platform TensorFlow lub PyTorch.

Tworzymy wbudowaną obsługę procesorów GPU ND A100. W międzyczasie procesor GPU może obsługiwać system Ubuntu, jeśli dodasz menedżera sieci szkieletowej NVIDIA i zaktualizujesz sterowniki. Wykonaj następujące kroki w terminalu:

  1. Dodawanie repozytorium NVIDIA do instalowania lub aktualizowania sterowników — znajdź instrukcje krok po kroku w tym zasobie

  2. [OPCJONALNIE] Możesz również zaktualizować sterowniki CUDA z tego repozytorium

  3. Zainstaluj sterowniki programu NVIDIA Fabric Manager:

    sudo apt-get install cuda-drivers-460
    sudo apt-get install cuda-drivers-fabricmanager-460
    
  4. Uruchom ponownie maszynę wirtualną (aby przygotować sterowniki)

  5. Włącz i uruchom nowo zainstalowaną usługę NVIDIA Fabric Manager:

    sudo systemctl enable nvidia-fabricmanager
    sudo systemctl start nvidia-fabricmanager
    

Uruchom ten przykładowy kod, aby sprawdzić, czy procesor GPU i sterowniki działają:

systemctl status nvidia-fabricmanager.service

Ten zrzut ekranu przedstawia uruchomioną usługę Menedżera sieci szkieletowej:

Zrzut ekranu przedstawiający uruchomioną usługę Fabric Manager.

Połączenie ion do środowiska pulpitu kończy się niepowodzeniem

Jeśli możesz nawiązać połączenie z maszyną DSVM za pośrednictwem terminalu SSH, ale nie możesz nawiązać połączenia za pośrednictwem platformy x2go, ustawienie x2go może mieć nieprawidłowe ustawienie typu sesji. Aby nawiązać połączenie ze środowiskiem pulpitu DSVM, ustaw typ sesji w preferencjach x2go/sesji/sesji na XFCE. Inne środowiska pulpitu nie są obecnie obsługiwane.

Czcionki wyglądają źle podczas nawiązywania połączenia z maszyną DSVM przy użyciu platformy x2go

Określone ustawienie sesji x2go może spowodować, że niektóre czcionki wyglądają źle podczas nawiązywania połączenia z x2go. Przed nawiązaniem połączenia z maszyną DSVM usuń zaznaczenie pola wyboru "Ustaw wyświetlanie DPI" na karcie "Dane wejściowe/wyjściowe" okna dialogowego preferencji sesji.

Monitowany o nieznane hasło

Ustawienie Typ uwierzytelniania maszyny DSVM można ustawić na klucz publiczny SSH. Jest to zalecane zamiast uwierzytelniania za pomocą hasła. Nie otrzymujesz hasła, jeśli używasz klucza publicznego SSH. Jednak w niektórych scenariuszach niektóre aplikacje nadal żądają hasła. Uruchom polecenie sudo passwd <user_name> , aby utworzyć nowe hasło dla określonego użytkownika. Za pomocą sudo passwdpolecenia możesz utworzyć nowe hasło dla użytkownika głównego.

Uruchomienie tego polecenia nie powoduje zmiany konfiguracji protokołu SSH, a dozwolone mechanizmy logowania pozostają takie same.

Monitowany o hasło podczas uruchamiania polecenia sudo

Po uruchomieniu sudo polecenia na maszynie z systemem Ubuntu może zostać wyświetlone żądanie wielokrotnego wprowadzenia hasła w celu sprawdzenia, czy jesteś zalogowanym użytkownikiem. Jest to oczekiwane domyślne zachowanie systemu Ubuntu. Jednak w niektórych sytuacjach wielokrotne uwierzytelnianie nie jest konieczne i raczej irytujące.

Aby wyłączyć ponowne uwierzytelnianie w większości przypadków, możesz uruchomić to polecenie w terminalu:

echo -e "\n$USER ALL=(ALL) NOPASSWD: ALL\n" | sudo tee -a /etc/sudoers

Po ponownym uruchomieniu terminalu program sudo nie poprosi o kolejne logowanie i będzie uwzględniać uwierzytelnianie z logowania sesji jako wystarczające.

Nie można używać platformy Docker jako użytkownika niebędącego użytkownikiem katalogu głównego

Aby użyć platformy Docker jako użytkownika niebędącego użytkownikiem głównym, użytkownik musi należeć do grupy platformy Docker. Polecenie getent group docker zwraca listę użytkowników należących do tej grupy. Aby dodać użytkownika do grupy platformy Docker, uruchom polecenie sudo usermod -aG docker $USER.

Kontenery platformy Docker nie mogą wchodzić w interakcje z zewnątrz za pośrednictwem sieci

Domyślnie platforma Docker dodaje nowe kontenery do tak zwanej "sieci mostka": 172.17.0.0/16. Podsieć tej sieci mostka może nakładać się na podsieć maszyny WIRTUALNEJ DSVM lub z inną podsiecią prywatną, którą masz w subskrypcji. W takim przypadku nie jest możliwa żadna komunikacja sieciowa między hostem a kontenerem. Ponadto nie można uzyskać dostępu do aplikacji internetowych uruchamianych w kontenerze, a kontener nie może aktualizować pakietów z narzędzia apt.

Aby rozwiązać ten problem, należy ponownie skonfigurować platformę Docker, aby używać przestrzeni adresowej IP dla sieci mostka, która nie nakłada się na inne sieci subskrypcji. Na przykład w przypadku dodania

"default-address-pools": [
        {
            "base": "10.255.248.0/21",
            "size": 21
        }
    ]

/etc/docker/daemon.json do pliku JSON platforma Docker przypisuje inną podsieć do sieci mostka. Musisz edytować plik za pomocą polecenia sudo, na przykład uruchamiając polecenie sudo nano /etc/docker/daemon.json.

Po zmianie uruchom polecenie service docker restart , aby ponownie uruchomić usługę Platformy Docker. Aby określić, czy zmiany zaszły w życie, można uruchomić polecenie docker network inspect bridge. Wartość w obszarze IPAM. Config.Subnet powinien odpowiadać określonej wcześniej puli adresów.

Procesory GPU nie są dostępne w kontenerze platformy Docker

Zasób platformy Docker zainstalowany na maszynie DSVM domyślnie obsługuje procesory GPU. Jednak ta obsługa wymaga pewnych wymagań wstępnych.

  • Rozmiar maszyny wirtualnej maszyny wirtualnej DSVM musi zawierać co najmniej jeden procesor GPU.
  • Po uruchomieniu kontenera docker runplatformy Docker za pomocą polecenia należy dodać parametr --gpus : na przykład --gpus all.
  • Rozmiary maszyn wirtualnych, które obejmują procesory GPU NVIDIA A100, wymagają zainstalowania innych pakietów oprogramowania, zwłaszcza menedżera sieci szkieletowej NVIDIA. Te pakiety mogą nie być wstępnie zainstalowane na obrazie.

Windows

Maszyna wirtualna Generacja 2 (Gen 2) nie działa

Podczas próby utworzenia maszyny wirtualnej Nauka o danych na podstawie maszyny wirtualnej generacji 2 (Gen 2) kończy się niepowodzeniem.

Obecnie utrzymujemy i udostępniamy obrazy maszyn wirtualnych Nauka o danych (DSVM) na podstawie systemu Windows 2019 Server, tylko dla maszyn DSVM generacji 1. Gen 2 nie jest jeszcze obsługiwany, ale planujemy je wspierać w najbliższej przyszłości.

Uzyskiwanie dostępu do programu SQL Server

Podczas próby nawiązania połączenia ze wstępnie zainstalowanym wystąpieniem programu SQL Server może wystąpić błąd "Logowanie nie powiodło się". Aby pomyślnie nawiązać połączenie z wystąpieniem programu SQL Server, należy uruchomić program, z którym chcesz nawiązać połączenie — na przykład SQL Server Management Studio (SSMS) — w trybie administratora. Tryb administratora jest wymagany, ponieważ przez domyślne zachowanie maszyny DSVM tylko administratorzy mogą nawiązać połączenie.

Funkcja Hyper-V nie działa

Zgodnie z oczekiwaniami funkcja Hyper-V początkowo nie działa w systemie Windows. Aby uzyskać najlepszą wydajność, wyłączyliśmy niektóre usługi. Aby włączyć funkcję Hyper-V:

  1. Otwórz pasek wyszukiwania na maszynie DSVM systemu Windows
  2. Wpisz "Usługi",
  3. Ustaw wszystkie usługi funkcji Hyper-V na wartość "Manual"
  4. Ustaw wartość "Zarządzanie maszynami wirtualnymi funkcji Hyper-V" na "Automatyczne"

Ekran końcowy powinien wyglądać następująco:

Zrzut ekranu przedstawiający uruchomioną usługę funkcji Hyper-V.