Udostępnij za pośrednictwem


Zainstaluj rozszerzenie Dapr dla usługi Azure Kubernetes Service (AKS) i platformy Kubernetes z obsługą usługi Arc

Dapr upraszcza tworzenie odpornych, bezstanowych i stanowych aplikacji uruchamianych w chmurze i urządzeniach brzegowych oraz wspiera różnorodność języków programowania i frameworków deweloperskich. Dzięki architekturze bocznej Dapr możesz zachować kod niezależny od platformy, a jednocześnie sprostać wyzwaniom związanym z tworzeniem mikrousług, takich jak:

  • Komunikowanie się z innymi usługami w sposób niezawodny i bezpieczny
  • Tworzenie aplikacji opartych na zdarzeniach za pomocą pub/sub
  • Tworzenie aplikacji przenośnych na wielu usługach i hostach w chmurze (na przykład Kubernetes w porównaniu z maszyną wirtualną)

Uwaga

Jeśli planujesz zainstalować Dapr w środowisku produkcyjnym Kubernetes, zapoznaj się ze stroną dokumentacji dotyczącą użycia w środowisku produkcyjnym.

Jak to działa

Rozszerzenie Dapr używa interfejsu wiersza polecenia platformy Azure CLI lub szablonu Bicep do aprowizowania płaszczyzny sterowania Dapr w klastrze AKS lub Kubernetes z obsługą Azure Arc, tworząc następujące usługi Dapr:

Usługa Dapr opis
dapr-operator Zarządza aktualizacjami składników i punktami końcowymi usług Kubernetes dla Dapr (magazyny stanów, pub/sub, itp.)
dapr-sidecar-injector Wstrzykuje Dapr do zasobników wdrożeniowych z adnotacjami i dodaje zmienne środowiskowe DAPR_HTTP_PORT oraz DAPR_GRPC_PORT, aby umożliwić aplikacjom zdefiniowanym przez użytkownika łatwe komunikowanie się z Dapr bez konieczności twardego kodowania wartości portów Dapr.
dapr-placement Używane tylko dla aktorów. Tworzy tabele mapowania wystąpień aktora na pody.
dapr-sentry Zarządza mTLS między usługami i działa jako urząd certyfikacji. Aby uzyskać więcej informacji, przeczytaj omówienie zabezpieczeń.

Po zainstalowaniu języka Dapr w klastrze możesz rozpocząć opracowywanie przy użyciu interfejsów API bloków konstrukcyjnych języka Dapr, dodając kilka adnotacji do wdrożeń. Aby uzyskać bardziej szczegółowe omówienie interfejsów API bloków konstrukcyjnych i sposobu ich najlepszego użycia, zobacz Omówienie bloków konstrukcyjnych języka Dapr.

Ostrzeżenie

Jeśli zainstalujesz Dapr za pośrednictwem rozszerzenia Kubernetes obsługującego AKS lub Arc, zalecamy dalsze używanie rozszerzenia do zarządzania Daprami zamiast używania Dapr CLI. Połączenie tych dwóch narzędzi może powodować konflikty i powodować niepożądane zachowanie.

Wymagania wstępne

Wybierz sposób instalowania, wdrażania i konfigurowania rozszerzenia Dapr.

Zanim rozpoczniesz

Dodaj rozszerzenie Azure CLI dla rozszerzeń klastra

Zainstaluj rozszerzenie interfejsu wiersza polecenia Azure k8s-extension, uruchamiając następujące polecenia:

az extension add --name k8s-extension

k8s-extension Jeśli rozszerzenie jest już zainstalowane, możesz zaktualizować je do najnowszej wersji przy użyciu następującego polecenia:

az extension update --name k8s-extension

Rejestrowanie dostawcy KubernetesConfiguration zasobów

Jeśli jeszcze nie używasz rozszerzeń klastra, może być konieczne zarejestrowanie dostawcy zasobów w ramach subskrypcji. Stan rejestracji dostawcy można sprawdzić przy użyciu polecenia az provider list , jak pokazano w poniższym przykładzie:

az provider list --query "[?contains(namespace,'Microsoft.KubernetesConfiguration')]" -o table

Dostawca Microsoft.KubernetesConfiguration powinien zgłosić wartość Zarejestrowano, jak pokazano w następujących przykładowych danych wyjściowych:

Namespace                          RegistrationState    RegistrationPolicy
---------------------------------  -------------------  --------------------
Microsoft.KubernetesConfiguration  Registered           RegistrationRequired

Jeśli dostawca jest wyświetlany jako NotRegistered, zarejestruj go, używając narzędzia wiersza poleceń az provider register, jak pokazano na poniższym przykładzie.

az provider register --namespace Microsoft.KubernetesConfiguration

Zarejestruj funkcję ExtenstionTypes w subskrypcji Azure

Funkcja ExtensionTypes musi zostać zarejestrowana w subskrypcji Azure. W terminalu sprawdź, czy jesteś w odpowiedniej subskrypcji:

az account set --subscription <YOUR-AZURE-SUBSCRIPTION-ID>

ExtenstionTypes Zarejestruj funkcję.

az feature registration create --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes

Rejestracja funkcji może zająć trochę czasu. Po kilku minutach sprawdź stan rejestracji przy użyciu następującego polecenia:

az feature show --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes

Utwórz rozszerzenie i zainstaluj Dapr na klastrze Kubernetes z obsługą AKS lub Arc

Podczas instalowania rozszerzenia Dapr użyj wartości flagi odpowiadającej typowi klastra:

  • Klaster AKS: --cluster-type managedClusters.
  • Klaster Kubernetes z obsługą usługi Arc:

Uwaga

Jeśli używasz systemu operacyjnego Dapr w klastrze usługi AKS i chcesz zainstalować rozszerzenie Dapr dla usługi AKS, przeczytaj więcej o tym, jak pomyślnie przeprowadzić migrację do rozszerzenia Dapr.

Utwórz rozszerzenie Dapr, które instaluje Dapr w klastrze Kubernetes z obsługą AKS lub z funkcją Arc.

Na przykład zainstaluj najnowszą wersję języka Dapr za pośrednictwem rozszerzenia Dapr w klastrze usługi AKS:

az k8s-extension create --cluster-type managedClusters \
--cluster-name <myAKSCluster> \
--resource-group <myResourceGroup> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false

Aktualizowanie zarządzanego klastra usługi AKS do najnowszej wersji

Na podstawie środowiska (deweloperskiego, testowego lub produkcyjnego) możesz być na bieżąco z najnowszymi stabilnymi wersjami języka Dapr.

Wybieranie pociągu wydania

Podczas konfigurowania rozszerzenia możesz zainstalować środowisko Dapr z określonego cyklu wydań. Określ jedną z dwóch wartości harmonogramu wydania:

Wartość opis
stable Domyślne.
dev Wczesne wersje, które mogą zawierać funkcje eksperymentalne. Nie nadaje się do produkcji.

Na przykład:

--release-train stable

Konfigurowanie automatycznych aktualizacji płaszczyzny sterowania Dapr

Ostrzeżenie

Automatyczne uaktualnianie nie jest odpowiednie dla środowisk produkcyjnych. Włącz automatyczne aktualizacje płaszczyzny kontrolnej Dapr tylko w środowiskach deweloperskich lub testowych. Dowiedz się, jak ręcznie uaktualnić do najnowszej wersji języka Dapr dla środowisk produkcyjnych.

Jeśli zainstalujesz narzędzie Dapr bez określenia wersji, zostanie ona automatycznie włączona, --auto-upgrade-minor-versionkonfigurując płaszczyznę sterowania Dapr, aby automatycznie aktualizować jej drugorzędną wersję przy nowych wydaniach.

Możesz wyłączyć automatyczną --auto-upgrade-minor-version aktualizację, określając parametr i ustawiając wartość na false.

Wersjonowanie Dapr jest w MAJOR.MINOR.PATCH formacie, co oznacza, że 1.11.0 do 1.12.0 to uaktualnienie wersji pomniejszej.

--auto-upgrade-minor-version true

Wyświetlanie najnowszych stabilnych wersji języka Dapr dostępnych

Aby przeprowadzić uaktualnienie do najnowszej wersji języka Dapr w środowisku produkcyjnym, należy ręcznie przeprowadzić uaktualnienie. Zacznij od wyświetlenia listy stabilnych wersji języka Dapr dostępnych dla zarządzanego klastra usługi AKS. Uruchom następujące polecenie:

az k8s-extension extension-types list-versions-by-cluster --resource-group <myResourceGroup> --cluster-name <myCluster> --cluster-type managedClusters --extension-type microsoft.dapr --release-train stable

Aby wyświetlić najnowszą stabilną wersję języka Dapr dostępną dla zarządzanego klastra usługi AKS, uruchom następujące polecenie:

az k8s-extension extension-types list-versions-by-cluster --resource-group <myResourceGroup> --cluster-name <myCluster> --cluster-type managedClusters --extension-type microsoft.dapr  --release-train stable --show-latest

Aby wyświetlić listę stabilnych wersji języka Dapr dostępnych według lokalizacji:

  1. Upewnij się, że funkcja została zarejestrowana ExtenstionTypes w subskrypcji platformy Azure.
  2. Uruchom następujące polecenie.
az k8s-extension extension-types list-versions-by-location --location westus --extension-type microsoft.dapr

Następnie ręcznie zaktualizuj narzędzie Dapr do najnowszej stabilnej wersji.

Wybór konkretnej wersji Dapr

Uwaga

Dapr jest wspierany z zastosowaniem mechanizmu przesuwnego okna, obejmującego tylko bieżące i poprzednie wersje. Twoim zadaniem operacyjnym jest zachowanie aktualności tych obsługiwanych wersji. Jeśli masz starszą wersję języka Dapr, może być konieczne uaktualnienie pośrednie, aby przejść do obsługiwanej wersji.

Ten sam argument linii poleceń jest używany do instalowania określonej wersji Dapr lub cofania się do poprzedniej wersji. Ustaw --auto-upgrade-minor-version na false i --version na wersję Dapr, którą chcesz zainstalować. version Jeśli parametr zostanie pominięty, rozszerzenie instaluje najnowszą wersję języka Dapr. Następujące przykładowe polecenie instaluje wersję 1.14.4-msft.10 języka Dapr w klastrze usługi AKS:

az k8s-extension create --cluster-type managedClusters \
--cluster-name <myAKSCluster> \
--resource-group <myResourceGroup> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false \
--version 1.14.4-msft.10

Rozwiązywanie problemów

Rozwiązywanie problemów z błędami zarządzania rozszerzeniami

Jeśli nie można utworzyć lub zaktualizować rozszerzenia, wypróbuj sugestie i rozwiązania w przewodniku rozwiązywania problemów z rozszerzeniem Dapr.

Rozwiązywanie problemów z błędami funkcjonalnymi języka Dapr

Rozwiązywanie problemów z błędami typu open source języka Dapr niepowiązanymi z rozszerzeniem za pośrednictwem typowych problemów i rozwiązań języka Dapr.

Wsparcie

Jeśli napotykasz na zagrożenia związane z zabezpieczeniami i regresje środowiska wykonawczego Dapr podczas korzystania z rozszerzenia, zgłoś problem w projekcie open source Dapr.

Możesz również rozpocząć dyskusję w projekcie Dapr Discord:

Usuwanie rozszerzenia Dapr z klastra

Proces odinstalowywania rozszerzenia Dapr z usługi AKS nie powoduje usunięcia identyfikatorów CRD utworzonych podczas instalacji. Te CRD pozostają w klastrze jako składniki resztkowe, niezbędne dla rekonsylera podczas instalacji i odinstalowywania rozszerzenia.

Aby wyczyścić klaster tych identyfikatorów CRD, można je ręcznie usunąć po całkowitym odinstalowaniu rozszerzenia Dapr z usługi AKS.

Odinstalowywanie rozszerzenia

Usuń rozszerzenie z klastra usługi AKS przy użyciu następującego polecenia:

az k8s-extension delete --resource-group <myResourceGroup> --cluster-name <myAKSCluster> --cluster-type managedClusters --name dapr

Lub, jeśli używasz szablonu Bicep, możesz usunąć szablon.

Wyświetlanie listy CRD w klastrze

Aby znaleźć CRD, które chcesz usunąć, uruchom następujące polecenie:

kubectl get crds | findstr dapr.io

Następne kroki