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

Język Dapr upraszcza tworzenie odpornych, bezstanowych i stanowych aplikacji uruchamianych w chmurze i brzegu oraz obejmuje różnorodność języków i struktur deweloperskich. Dzięki architekturze przyczepki dapr możesz zachować niezależną od platformy kodu, a jednocześnie sprostać wyzwaniom związanym z tworzeniem mikrousług, takich jak:

  • Niezawodne i bezpieczne wywoływanie innych usług
  • Tworzenie aplikacji opartych na zdarzeniach za pomocą pub/sub
  • Tworzenie aplikacji przenośnych między wieloma usługami i hostami w chmurze (na przykład Kubernetes a maszyną wirtualną)

Uwaga

Jeśli planujesz zainstalowanie języka Dapr w środowisku produkcyjnym Kubernetes, zapoznaj się ze stroną dokumentacji dotyczącej użycia produkcyjnego w języku Dapr.

Jak to działa

Rozszerzenie Dapr używa interfejsu wiersza polecenia platformy Azure lub szablonu Bicep do aprowizowania płaszczyzny sterowania dapr w klastrze AKS lub Kubernetes z obsługą usługi 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 języka Dapr (magazyny stanów, pub/podsieci itp.)
dapr-sidecar-injector Wprowadza język Dapr do zasobników wdrożenia z adnotacjami i dodaje zmienne DAPR_HTTP_PORT środowiskowe oraz DAPR_GRPC_PORT umożliwia aplikacjom zdefiniowanym przez użytkownika łatwe komunikowanie się z językiem Dapr bez kodowania wartości portów dapr.
dapr-placement Używane tylko dla aktorów. Tworzy tabele mapowania mapujące wystąpienia aktora na zasobniki.
dapr-sentry Zarządza usługami mTLS 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 język Dapr za pośrednictwem rozszerzenia Kubernetes z obsługą usługi AKS lub arc, zalecamy dalsze używanie rozszerzenia do przyszłego zarządzania usługą Dapr zamiast interfejsu wiersza polecenia języka Dapr. 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 Języka Dapr.

Konfigurowanie rozszerzenia interfejsu wiersza polecenia platformy Azure dla rozszerzeń klastra

Zainstaluj rozszerzenie interfejsu wiersza polecenia platformy k8s-extension Azure, 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 rozszerzenia klastra nie były wcześniej używane, może być konieczne zarejestrowanie dostawcy zasobów w ramach subskrypcji. Stan rejestracji dostawcy można sprawdzić przy użyciu polecenia [az provider list][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 dostawcę przy użyciu polecenia az provider register , jak pokazano w poniższym przykładzie:

az provider register --namespace Microsoft.KubernetesConfiguration

Tworzenie rozszerzenia i instalowanie narzędzia Dapr w klastrze Kubernetes z obsługą usługi 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: --cluster-type connectedClusters.

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 środowisko Dapr w klastrze Kubernetes z obsługą usługi AKS lub 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

Konfigurowanie automatycznych aktualizacji na płaszczyźnie sterowania języka Dapr

Ostrzeżenie

Aktualizacje automatyczne można włączyć na płaszczyźnie sterowania języka Dapr tylko w środowiskach deweloperskich lub testowych. Automatyczne uaktualnianie nie jest odpowiednie dla środowisk produkcyjnych.

Jeśli zainstalujesz narzędzie Dapr bez określenia wersji, zostanie automatycznie włączone, --auto-upgrade-minor-versionskonfigurowanie płaszczyzny sterowania Dapr w celu automatycznej aktualizacji jej wersji pomocniczej w nowych wersjach.

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

Przechowywanie wersji języka Dapr jest w MAJOR.MINOR.PATCH formacie, co oznacza 1.12.01.11.0, że jest to uaktualnienie wersji pomocniczej.

--auto-upgrade-minor-version true

Określanie określonej wersji języka Dapr

Uwaga

Język Dapr jest obsługiwany w oknie kroczącym, w tym 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 wiersza polecenia jest używany do instalowania określonej wersji języka Dapr lub wycofywania z poprzedniej wersji. Ustaw --auto-upgrade-minor-version wartość false i --version na wersję narzędzia Dapr, którą chcesz zainstalować. version Jeśli parametr zostanie pominięty, rozszerzenie instaluje najnowszą wersję języka Dapr. Aby na przykład użyć języka Dapr 1.11.2:

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.11.2

Wybieranie pociągu wydania

Podczas konfigurowania rozszerzenia możesz zainstalować środowisko Dapr z określonego szkolenia wydania. Określ jedną z dwóch wartości pociągu wydania:

Wartość Opis
stable Domyślne.
dev Wczesne wersje mogą zawierać funkcje eksperymentalne. Nie nadaje się do produkcji.

Na przykład:

--release-train stable

Rozwiązywanie problemów z błędami rozszerzenia

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 dapr

Rozwiązywanie problemów z błędami języka Dapr za pośrednictwem typowych problemów i rozwiązań języka Dapr.

Usuwanie rozszerzenia

Jeśli musisz usunąć rozszerzenie i usunąć środowisko Dapr z klastra usługi AKS, możesz użyć następującego polecenia:

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

Lub po prostu usuń szablon Bicep.

Następne kroki