Integrowanie usługi Azure Machine Edukacja z narzędziami DevOps

Ukończone

Wyobraź sobie, że pracujesz z zespołem ds. nauki o danych w projekcie uczenia maszynowego. Twój zespół może zdecydować się na użycie usługi Azure DevOps lub GitHub do planowania pracy, przechowywania repozytorium kodu i automatyzowania przepływów pracy.

W przypadku dowolnego zestawu narzędzi istnieją zazwyczaj dwie role:

  • Administracja istrator: konfiguruje środowisko DevOps i zarządza narzędziami.
  • Użytkownik końcowy: współtworzy projekt przez współpracę nad programowaniem. Połączenie do narzędzi, ale ma ograniczony dostęp do konfiguracji środowiska DevOps.

Administrator jest odpowiedzialny za łączenie usługi Azure Machine Edukacja z usługą Azure DevOps lub GitHub. Aby dowiedzieć się, jak skonfigurowana jest integracja z usługą Azure Machine Edukacja, zobaczmy, jak administrator bezpiecznie połączy usługi Azure DevOps i GitHub z usługą Azure Machine Edukacja.

Konfigurowanie usług Azure DevOps

Aby połączyć usługę Azure DevOps z usługą Azure Machine Edukacja, najpierw musisz utworzyć organizację i projekt. Użyjesz organizacji do grupowania projektów i zarządzania nimi.

Zacznij od zalogowania się do usługi Azure DevOps przy użyciu konta Microsoft lub GitHub.

Po zalogowaniu możesz utworzyć organizację.

New organization in Azure DevOps

W organizacji można utworzyć wiele projektów.

New project in Azure DevOps

Dla każdego projektu będziesz mieć dostęp do narzędzi, takich jak Boards, Repos i Pipelines , aby zastosować zasady Metodyki DevOps w projekcie.

Połączenie usługi Azure DevOps do usługi Azure Machine Edukacja

Aby bezpiecznie uzyskać dostęp do obszaru roboczego usługi Azure Machine Edukacja z poziomu usługi Azure DevOps, musisz utworzyć połączenie usługi.

Podczas tworzenia połączenia z usługą należy zdefiniować sposób uwierzytelniania usługi Azure DevOps w celu nawiązania połączenia z inną usługą. Podczas pracy z usługą Azure Machine Edukacja zalecaną opcją jest możliwość utworzenia jednostki usługi przez usługę Azure DevOps.

Jednostka usługi jest tworzona jako tożsamość w identyfikatorze Entra firmy Microsoft. Zamiast używać poświadczeń członka zespołu do nawiązywania połączenia z usługą Azure Machine Edukacja, usługa Azure DevOps używa poświadczeń jednostki usługi.

Po utworzeniu projektu usługi Azure DevOps możesz nawiązać połączenie z istniejącym obszarem roboczym usługi Azure Machine Edukacja:

  1. W projekcie przejdź do pozycji Projekt Ustawienia.
  2. Wybierz pozycję Połączenia z usługą i utwórz nową.
  3. Wybierz pozycję Azure Resource Manager.
  4. Wybierz opcję uwierzytelniania za pomocą automatycznej jednostki usługi.
  5. Ustaw poziom zakresu na Machine Edukacja Workspace i połącz się z istniejącym obszarem roboczym usługi Azure Machine Edukacja, do którego masz dostęp.
  6. Udziel uprawnień dostępu do wszystkich potoków.
  7. Nadaj połączeniu usługi nazwę. Użyjesz nazwy zawsze, gdy musisz uwierzytelnić usługę Azure DevOps, aby zarządzać obszarem roboczym usługi Azure Machine Edukacja.

New service connection in Azure DevOps

Po utworzeniu połączenia z usługą zauważysz, że nowo utworzona jednostka usługi ma dostęp Współautor do obszaru roboczego usługi Azure Machine Edukacja.

Konfigurowanie usługi GitHub

Aby połączyć usługę GitHub z usługą Azure Machine Edukacja, najpierw musisz utworzyć repozytorium GitHub.

Zacznij od zalogowania się do usługi GitHub.

Po zalogowaniu się do usługi GitHub możesz wybrać, czy jesteś właścicielem repozytorium jako użytkownik indywidualny, czy też powinien być własnością organizacji usługi GitHub.

New repo in GitHub

Połączenie GitHub przy użyciu usługi Azure Machine Edukacja

Aby zautomatyzować przepływy pracy uczenia maszynowego przy użyciu usługi GitHub, możesz uwierzytelnić usługę GitHub w celu nawiązania połączenia z usługą Azure Machine Edukacja. Aby skonfigurować bezpieczne połączenie, musisz:

  • Utwórz jednostkę usługi na platformie Azure.
  • Dodaj poświadczenia jednostki usługi do wpisów tajnych repozytorium.

Aby utworzyć jednostkę usługi, możesz użyć interfejsu wiersza polecenia platformy Azure. Aby pracować z interfejsem wiersza polecenia, jedną z opcji jest przesyłanie poleceń w usłudze Azure Cloud Shell.

Możesz utworzyć jednostkę usługi o nazwie github-aml-sp , która będzie mieć dostęp współautora do obszaru roboczego usługi Azure Machine Edukacja za pomocą następującego polecenia:

az ad sp create-for-rbac --name "github-aml-sp" --role contributor \
                            --scopes /subscriptions/<subscription-id>/resourceGroups/<group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name> \
                            --sdk-auth

Po utworzeniu jednostki usługi zostanie zwrócony tekst JSON jako dane wyjściowe zawierające poświadczenia usługi GitHub, które będą musiały połączyć się z grupą zasobów platformy Azure. Skopiuj tekst JSON i zapisz go w następnym kroku.

Aby przechowywać te poświadczenia w usłudze GitHub:

  1. Przejdź do Ustawienia repozytorium.
  2. Przejdź do strony Wpisy tajne .
  3. Wybierz Akcje.
  4. Dodaj nowy wpis tajny repozytorium.
  5. Wprowadź AZURE_CREDENTIALS jako nazwę.
  6. Wklej wyjściowy kod JSON przy użyciu poświadczeń i dodaj wpis tajny.

New secret in GitHub

Po dodaniu wpisu tajnego do usługi GitHub możesz użyć wpisu tajnego AZURE_CREDENTIALS zawsze, gdy konieczne jest uwierzytelnienie usługi GitHub w celu pracy z obszarem roboczym usługi Azure Machine Edukacja.

Napiwek

Kontynuuj naukę dotyczącą integrowania usługi GitHub z usługą Azure Machine Edukacja i dowiedz się, jak używać funkcji GitHub Actions z usługą Azure Machine Edukacja. Samouczek używa wpisu tajnego do nawiązywania AZURE_CREDENTIALS połączenia z platformą Azure.