Udostępnij przez


Konfigurowanie punktów końcowych rejestru

Ważne

Ta strona zawiera instrukcje dotyczące zarządzania składnikami operacji usługi Azure IoT przy użyciu manifestów wdrażania platformy Kubernetes, które są w wersji zapoznawczej. Ta funkcja jest udostępniana z kilkoma ograniczeniami i nie powinna być używana w przypadku obciążeń produkcyjnych.

Zobacz dodatkowe warunki użytkowania dla wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta, wersji zapoznawczej lub w inny sposób nie zostały jeszcze wydane w wersji ogólnodostępnej.

Wykresy przepływu danych i łącznik HTTP/REST używają punktów końcowych rejestru do ściągania modułów WebAssembly (WASM) i definicji grafów z rejestrów kontenerów. Operacje usługi Azure IoT ściągają wszystkie szablony łączników niestandardowych opracowywanych na podstawie rejestrów kontenerów. Możesz skonfigurować ustawienia punktu końcowego, uwierzytelnianie i inne ustawienia, aby nawiązać połączenie z usługą Azure Container Registry (ACR) lub innymi rejestrami zgodnymi z protokołem OCI, takimi jak:

  • Docker Hub
  • Port
  • AWS Elastic Container Registry
  • Google Container Registry

W przykładach w tym artykule pokazano, jak skonfigurować punkt końcowy rejestru przy użyciu usługi ACR.

Wymagania wstępne

Omówienie punktu końcowego rejestru

Punkt końcowy rejestru definiuje szczegóły połączenia i metodę uwierzytelniania na potrzeby uzyskiwania dostępu do rejestru kontenerów. Punkty końcowe rejestru są używane przez:

  • Wykresy przepływu danych: aby ściągnąć moduły WASM i definicje grafu na potrzeby przetwarzania niestandardowego
  • Łącznik HTTP/REST: aby ściągnąć moduły WASM i definicje grafu na potrzeby przetwarzania niestandardowego
  • Łączniki Akri: aby ściągnąć szablony łączników niestandardowych

Punkty końcowe rejestru obsługują uwierzytelnianie za pośrednictwem:

  • Zarządzana tożsamość przypisana przez system
  • Tożsamość zarządzana przypisana użytkownikowi
  • Wpisy tajne ściągania artefaktu (nazwa użytkownika i hasło)
  • Dostęp anonimowy (w przypadku rejestrów publicznych)

Tworzenie punktu końcowego rejestru

Punkt końcowy rejestru definiuje połączenie z rejestrem kontenerów. Wykresy przepływu danych używają punktów końcowych rejestru do ściągania modułów WASM i definicji grafów z rejestrów kontenerów. Operacje Azure IoT używają punktów końcowych rejestru do pobierania szablonów łączników niestandardowych z rejestrów kontenerów. Punkt końcowy rejestru można utworzyć przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, Bicep lub Kubernetes. Po utworzeniu punktu końcowego rejestru:

Użyj witryny Azure Portal, aby utworzyć punkty końcowe rejestru. Środowisko portalu zachęca do określenia i podania szczegółowych danych hosta ACR oraz opcjonalnego podania danych uwierzytelniających. Przed rozpoczęciem upewnij się, że masz następujące informacje:

  • Nazwa punktu końcowego rejestru.
  • Nazwa hosta dla ACR.
  • Obsługiwane są cztery typy uwierzytelniania:
    • Anonim
    • System zarządzania tożsamością
    • Tożsamość zarządzana przez użytkownika
    • Sekret artefaktu

Aby utworzyć punkt końcowy rejestru w witrynie Azure Portal, wykonaj następujące kroki.

Tworzenie punktów końcowych rejestru z uwierzytelnianiem anonimowym

Utwórz nowy punkt końcowy rejestru, określając szczegóły hosta usługi ACR. Włącz dostęp anonimowy do pobierania obrazu publicznego i zapisz konfigurację do ponownego użycia. Najpierw wybierz typ uwierzytelniania, którego chcesz użyć. W tym przykładzie użyj uwierzytelniania anonimowego:

Zrzut ekranu przedstawiający formularz wyboru uwierzytelniania.

Zrzut ekranu przedstawiający ukończoną konfigurację uwierzytelniania anonimowego dla punktu końcowego rejestru.

Tworzenie punktów końcowych rejestru przy użyciu uwierzytelniania tożsamości zarządzanej przez system

Utwórz nowy punkt końcowy rejestru, określając szczegóły hosta usługi ACR. Uwierzytelnianie przy użyciu tożsamości zarządzanej przypisanej przez system na potrzeby bezpiecznego dostępu i przechowywanie konfiguracji do ponownego użycia.

Zrzut ekranu przedstawiający ukończoną konfigurację uwierzytelniania tożsamości zarządzanej systemu dla punktu końcowego rejestru.

Tworzenie punktów końcowych rejestru przy użyciu tożsamości zarządzanej przez użytkownika

Utwórz nowy punkt końcowy rejestru, określając szczegóły hosta usługi ACR. Uwierzytelnianie przy użyciu tożsamości zarządzanej przypisanej przez użytkownika w celu zapewnienia bezpiecznego dostępu. Zapisz konfigurację do ponownego użycia.

Uwaga / Notatka

Identyfikatory klienta i dzierżawy są wymagane do włączenia tożsamości zarządzanej przez użytkownika.

Zrzut ekranu przedstawiający ukończoną konfigurację uwierzytelniania tożsamości zarządzanej przez użytkownika dla punktu końcowego rejestru.

Twórz punkty końcowe rejestru z sekretami artefaktów

Użyj tajnych danych artefaktów do uwierzytelniania się za pomocą prywatnych rejestrów kontenerów, takich jak ACR, Docker Hub lub MCR, podczas pobierania obrazów kontenerów. Wpisy tajne są niezbędne, gdy rejestr wymaga poświadczeń, a obraz nie jest publicznie dostępny. Ten scenariusz umożliwia zarządzanie grafami przepływu danych w ramach operacji usługi Azure IoT i środowiska operacji. Tajne dane artefaktów można skonfigurować z usługi Microsoft Azure Key Vault, wybierając istniejące tajne dane.

Utwórz nowy punkt końcowy rejestru, określając szczegóły hosta usługi ACR. Uwierzytelnij się przy użyciu tajnych danych artefaktów w celu bezpiecznego dostępu i zapisz konfigurację do ponownego użycia.

Zrzut ekranu przedstawiający interfejs wyboru wpisów tajnych usługi Azure Key Vault dla wpisów tajnych artefaktów.

Skonfiguruj sekrety artefaktów z usługi Azure Key Vault, tworząc nowe sekrety i przechowując je w usłudze Azure Key Vault.

Zrzut ekranu formularza tworzenia nowego sekretu w Azure Key Vault dla sekretów artefaktów.

Opcje konfiguracji

W tej sekcji opisano opcje konfiguracji dostępne dla punktów końcowych rejestru.

Host

Właściwość host określa nazwę hosta rejestru kontenerów. W przypadku usługi ACR użyj formatu <registry-name>.azurecr.io. Właściwość hosta obsługuje adresy URL HTTPS lub tylko nazwę hosta.

Przykłady:

  • myregistry.azurecr.io
  • https://myregistry.azurecr.io

Wzorzec: musi być zgodny ze wzorcem ^(https:\/\/)?[a-zA-Z0-9\-]+\.azurecr\.io$ usługi ACR.

Metody uwierzytelniania

Punkty końcowe rejestru obsługują kilka metod uwierzytelniania w celu bezpiecznego uzyskiwania dostępu do rejestrów kontenerów.

Zarządzana tożsamość przypisana przez system

Tożsamość zarządzana przypisana przez system używa wbudowanej tożsamości wystąpienia operacji usługi Azure IoT do uwierzytelniania w rejestrze. Użyj tego podejścia dla usługi ACR, ponieważ eliminuje potrzebę zarządzania poświadczeniami.

Przed skonfigurowaniem punktu końcowego rejestru upewnij się, że tożsamość zarządzana przypisana przez system operacji usługi Azure IoT ma niezbędne uprawnienia:

  1. W portalu Azure przejdź do instancji Azure IoT Operations i wybierz opcję Przegląd.
  2. Skopiuj nazwę rozszerzenia wymienioną po rozszerzeniu Azure IoT Operations Arc. Na przykład azure-iot-operations-xxxx7.
  3. Przejdź do rejestru > kontenerów Kontrola dostępu (IAM)>Dodaj przypisanie roli.
  4. Na karcie Rola wybierz pozycję AcrPull Rola.
  5. Na karcie Członkowie w polu Przypisz dostęp do wybierz pozycję Użytkownik, grupa lub jednostka usługi, a następnie wybierz pozycję + Wybierz członków i wyszukaj nazwę rozszerzenia Arc operacji usługi Azure IoT. Wybierz rozszerzenie i wybierz pozycję Wybierz.
  6. Wybierz Przejrzyj i przypisz, aby zakończyć przypisanie roli.

Poniższy fragment kodu przedstawia sposób konfigurowania uwierzytelniania tożsamości zarządzanej przypisanej przez system w pliku Bicep, który konfiguruje punkt końcowy rejestru:

authentication: {
  method: 'SystemAssignedManagedIdentity'
  systemAssignedManagedIdentitySettings: {
    audience: 'https://management.azure.com/'
    extensionName: null  // Optional: specific extension name
    tenantId: null       // Optional: specific tenant ID
  }
}

Ustawienia tożsamości zarządzanej przypisanej przez system:

Majątek Description Wymagane Typ
audience Odbiorcy usługi do uwierzytelniania. Nie. Sznurek
extensionName Określona nazwa rozszerzenia do użycia. Nie. Sznurek
tenantId Identyfikator dzierżawy na potrzeby uwierzytelniania. Nie. Sznurek

Operator próbuje wywnioskować odbiorców z punktu końcowego, jeśli go nie podasz. W przypadku usługi ACR odbiorcy zazwyczaj https://management.azure.com/.

Tożsamość zarządzana przypisana użytkownikowi

Tożsamość zarządzana przypisana przez użytkownika umożliwia użycie określonej tożsamości zarządzanej utworzonej i skonfigurowanej przy użyciu niezbędnych uprawnień.

Przed skonfigurowaniem punktu końcowego rejestru upewnij się, że tożsamość zarządzana przypisana przez użytkownika ma AcrPull rolę w rejestrze kontenerów.

Poniższy fragment kodu pokazuje, jak skonfigurować uwierzytelnianie zarządzanej tożsamości przypisanej przez użytkownika w pliku Bicep, który konfiguruje punkt końcowy rejestru:

authentication: {
  method: 'UserAssignedManagedIdentity'
  userAssignedManagedIdentitySettings: {
    clientId: '<CLIENT_ID>'
    tenantId: '<TENANT_ID>'
    scope: null  // Optional: specific scope
  }
}

Ustawienia tożsamości zarządzanej przypisanej przez użytkownika:

Majątek Description Wymagane Typ
clientId Identyfikator klienta tożsamości zarządzanej przypisanej przez użytkownika. Tak Sznurek
tenantId Identyfikator dzierżawy, w którym znajduje się tożsamość zarządzana. Tak Sznurek
scope Zakres zasobu z sufiksem .default . Nie. Sznurek

Operator próbuje wywnioskować zakres z punktu końcowego, jeśli go nie podasz.

Klucz tajny ściągania artefaktu

Sekrety pobierania artefaktów umożliwiają używanie uwierzytelniania za pomocą nazwy użytkownika i hasła dla rejestrów, które nie obsługują uwierzytelniania za pomocą zarządzanej tożsamości.

Najpierw utwórz tajny zasób Kubernetes zawierający dane uwierzytelniające do rejestru:

kubectl create secret docker-registry my-registry-secret \
  --docker-server=myregistry.azurecr.io \
  --docker-username=<USERNAME> \
  --docker-password=<PASSWORD> \
  -n azure-iot-operations

Poniższy fragment kodu pokazuje, jak skonfigurować uwierzytelnianie sekretem pobierania artefaktu w pliku Bicep, który konfiguruje punkt końcowy rejestru.

authentication: {
  method: 'ArtifactPullSecret'
  artifactPullSecretSettings: {
    secretRef: 'my-registry-secret'
  }
}

Uwierzytelnianie anonimowe

Uwierzytelnianie anonimowe jest używane w publicznych rejestrach, które nie wymagają uwierzytelniania.

Poniższy fragment kodu przedstawia sposób konfigurowania uwierzytelniania anonimowego w pliku Bicep, który konfiguruje punkt końcowy rejestru:

authentication: {
  method: 'Anonymous'
  anonymousSettings: {}
}

Integracja usługi Azure Container Registry

Usługa ACR jest zalecanym rejestrem kontenerów dla operacji usługi Azure IoT. Usługa ACR zapewnia bezpieczne, prywatne rejestry kontenerów platformy Docker ze zintegrowanym uwierzytelnianiem za pośrednictwem identyfikatora Entra firmy Microsoft (Entra ID).

Wymagania wstępne dotyczące usługi ACR

  1. Utwórz wystąpienie usługi ACR: jeśli go nie masz, utwórz wystąpienie usługi ACR w ramach subskrypcji.
  2. Konfigurowanie uprawnień: Upewnij się, że tożsamość zarządzana operacji usługi Azure IoT ma AcrPull uprawnienia do rejestru.
  3. Artefakty wypychania: przekaż moduły WASM i definicje grafu do rejestru przy użyciu narzędzi, takich jak interfejs wiersza polecenia ORAS.

Inne rejestry kontenerów

Punkty końcowe rejestru obsługują również inne rejestry kontenerów zgodne z protokołem OCI, takie jak:

  • Docker Hub
  • Port
  • Usługa AWS Elastic Container Registry (ECR)
  • Google Container Registry (GCR)

W przypadku tych rejestrów zazwyczaj do uwierzytelniania są używane wpisy tajne ściągania artefaktów, chyba że obsługują one tożsamość zarządzaną platformy Azure.

Dalsze kroki