Sdílet prostřednictvím


Dapr

Distribuovaná aplikace Runtime (Dapr) nabízí rozhraní API, která vám pomůžou psát a implementovat jednoduché, přenosné, odolné a zabezpečené mikroslužby. Rozhraní DAPR API běží jako proces sajdkáru společně s vašimi aplikacemi a abstrahují běžné složitosti, se kterými se můžete setkat při vytváření distribuovaných aplikací, například:

  • Zjišťování služeb
  • Integrace zprostředkovatele zpráv
  • Šifrování
  • Pozorovatelnost
  • Správa tajných kódů

Dapr je přírůstkově adoptovatelný. Podle potřeby můžete použít libovolný z stavebních bloků rozhraní API. Seznamte se s úrovní podpory, která Microsoft nabízí pro každé rozhraní DAPR API a komponenty.

Možnosti a funkce

Použití rozšíření Dapr ke zřízení Dapr v clusteru Kubernetes s podporou AKS nebo Arc eliminuje režijní náklady:

  • Stažení nástrojů Dapr
  • Ruční instalace a správa modulu runtime Dapr v clusteru AKS

Rozšíření Dapr můžete nainstalovat, nasadit a nakonfigurovat v clusteru pomocí Azure CLI nebo šablony Bicep.

Rozšíření navíc nabízí podporu všech nativních možností konfigurace Dapr prostřednictvím jednoduchých argumentů příkazového řádku.

Dapr poskytuje následující sadu funkcí, které vám pomůžou s vývojem mikroslužeb v AKS:

  • Snadné zřizování Dapr v AKS prostřednictvím rozšíření clusteru
  • Přenositelnost povolená prostřednictvím rozhraní API HTTP a gRPC, která abstrahují možnosti základních technologií
  • Spolehlivá, zabezpečená a odolná volání mezi službami prostřednictvím rozhraní HTTP a gRPC API
  • Snadné publikování a přihlášení k odběru zpráv s podporou filtrování CloudEventu a sémantiky "alespoň jednou" pro doručování zpráv
  • Připojitelná pozorovatelnost a monitorování prostřednictvím kolektoru rozhraní API Open Telemetry
  • Funguje nezávisle na jazyce a současně nabízí sady SDK (Language Specific Software Development Kit)
  • Integrace se sadou Visual Studio Code prostřednictvím rozšíření Dapr
  • Další rozhraní API pro řešení problémů s distribuovanými aplikacemi

Aktuálně podporovaná

Rozšíření Dapr je jediná možnost podporovaná Microsoftem pro Dapr v AKS.

Zpracování problémů

Microsoft kategorizuje problémy vyvolané rozšířením Dapr do dvou částí:

  • Operace rozšíření
  • Modul runtime Dapr (včetně rozhraní API a komponent)

Následující tabulka obsahuje přehled úrovní priority pro každou z těchto kategorií.

Popis Rizika zabezpečení / Regrese Problémy s funkcemi
Operace rozšíření Problémy při operacích rozšíření, jako je instalace nebo odinstalace nebo upgrade rozšíření Dapr Microsoft upřednostňuje okamžité řešení. Microsoft vyšetřuje a řeší je podle potřeby.
Modul runtime Dapr Problémy při použití modulu runtime Dapr, rozhraní API a komponent prostřednictvím rozšíření Microsoft spolupracuje s opensourcovou komunitou a zkoumá problémy s vysokou prioritou. V závislosti na prioritě, závažnosti a velikosti problému je Microsoft buď vyřeší přímo v rozšíření, nebo pracuje s opensourcovým projektem Dapr a vyřeší problém v opravy hotfix nebo budoucí opensourcové verzi Dapr. Jakmile se opravy uvolní ve open source Dapr, zpřístupní se v rozšíření Dapr. Microsoft zkoumá nové funkční problémy spolu s opensourcovým projektem Dapr a spolupracuje s nimi na řešení oprav hotfix nebo budoucí opensourcové verze Dapr. Microsoft v tuto chvíli nezkoušá známé problémy s funkcemi open source.

Verze Dapr

Microsoft poskytuje podporu maximálního úsilí pro nejnovější verzi Dapr a dvě předchozí verze (N-2). Nejnovější verze opravy je jedinou podporovanou verzí každé podverze. Rozšíření Dapr pro AKS nebo Kubernetes s podporou Arc v současné době podporuje následující verze Dapr:

  • 1.13.x
  • 1.12.x
  • 1.11.x

Podpora rozšíření Dapr se liší v závislosti na způsobu správy modulu runtime.

Samosprávné

Místní modul runtime vyžaduje ruční upgrade, aby zůstal v okně podpory. Pokud chcete upgradovat Dapr prostřednictvím rozšíření, postupujte podle pokynů k instanci rozšíření update.

Jakmile verze modulu runtime Dapr dosáhne konce podpory Microsoftu, vaše aplikace budou dál běžet beze změny. Microsoft už ale nemůže poskytovat opravy zabezpečení ani související zákaznickou podporu pro danou verzi modulu runtime. Pokud vaše aplikace narazí na nějaké problémy po datu ukončení podpory této verze, doporučujeme upgradovat na podporovanou verzi, abyste získali nejnovější opravy zabezpečení a funkce.

Automatický upgrade

Povolení automatického upgradu vyžaduje pečlivé zvážení. I když automatické upgrade udržuje rozšíření Dapr aktualizované na nejnovější podverzi, může dojít k zásadním změnám mezi aktualizacemi. Microsoft nezodpovědí za výpadky způsobené zásadními změnami mezi automatickými aktualizacemi.

Komponenty a rozhraní API

Všechny komponenty a rozhraní API Dapr můžete použít prostřednictvím rozšíření Dapr, včetně těch, které jsou ve stavu alfa a beta. Microsoft však poskytuje podporu pouze podmnožině rozhraní API a komponent, a to podle definovaných zásad pro zpracování problémů.

Stabilní rozhraní DAPR API

Rozšíření Dapr podporuje stabilní verze rozhraní API Dapr (stavební bloky).

Dapr API Status Popis
Vyvolání mezi službami Stable Zjišťování služeb a provádění spolehlivých, přímých volání mezi službami s automatickým ověřováním a šifrováním mTLS (#limitations)
Správa stavu Stable Poskytuje možnosti správy stavu pro transakce a operace CRUD.
Pub/sub Stable Umožňuje aplikacím vydavatele a předplatitele interkomunikovat prostřednictvím zprostředkujícího zprostředkovatele zpráv. Můžete také vytvořit deklarativní odběry tématu pomocí souboru JSON externí komponenty.
Vazby Stable Aktivujte aplikace na základě událostí.
Herci Stable Herci Dapr jsou jednotky práce řízené jedním vláknem řízené zprávami navržené tak, aby se rychle škálovaly. Například v situacích náročných na nárazové zatížení.
Pozorovatelnost Stable Odeslání informací o trasování do back-endu aplikace Přehledy
Tajné kódy Stable Získejte přístup k tajným kódům z kódu aplikace nebo odkazujte na zabezpečené hodnoty v komponentách Dapr.
Konfigurace Stable Načtení a přihlášení k odběru položek konfigurace aplikace pro podporovanou konfiguraci Obchody.

Komponenty vrstvy 1 a vrstvy 2

Podporuje se podmnožina komponent Dapr. V této podmnožině jsou komponenty Dapr rozdělené do dvou kategorií podpory: vrstva 1 nebo vrstva 2.

  • Komponenty vrstvy 1: Stabilní komponenty, které přijímají okamžité šetření v kritických scénářích (zabezpečení nebo závažné regrese). V opačném případě Microsoft spolupracuje s opensourcovou verzí na adresu v opravě hotfix nebo v příští pravidelné verzi.
  • Komponenty vrstvy 2: Komponenty, které jsou vyšetřeny na nižší prioritě, protože nejsou ve stabilním stavu nebo jsou u jiného poskytovatele.
Komponenty vrstvy 1
rozhraní API Komponenta Typ
Správa stavu Azure Blob Storage v1
Azure Table Storage
Microsoft SQL Server
state.azure.blobstorage
state.azure.tablestorage
state.sqlserver
Publikování a přihlášení k odběru Fronty služby Azure Service Bus
Téma služby Azure Service Bus
Azure Event Hubs
pubsub.azure.servicebus.queues
pubsub.azure.servicebus.topics
pubsub.azure.eventhubs
Vazba Fronty Azure Storage
Fronty služby Azure Service Bus
Azure Blob Storage
Azure Event Hubs
bindings.azure.storagequeues
bindings.azure.servicebusqueues
bindings.azure.blobstorage
bindings.azure.eventhubs
Správa tajných kódů Azure Key Vault secrets.azure.keyvault
Komponenty vrstvy 2
rozhraní API Komponenta Typ
Správa stavu Azure Cosmos DB
PostgreSQL
MySQL a MariaDB
Redis
state.azure.cosmosdb
state.postgresql
state.mysql
state.redis
Publikování a přihlášení k odběru Apache Kafka
Toky Redis
pubsub.kafka
pubsub.redis
Vazba Azure Event Grid
Azure Cosmos DB
Apache Kafka
PostgreSQL
Redis
Cron
bindings.azure.eventgrid
bindings.azure.cosmosdb
bindings.kafka
bindings.postgresql
bindings.redis
bindings.cron
Konfigurace PostgreSQL
Redis
configuration.postgresql
configuration.redis

Cloudy a oblasti

Globální cloud Azure se podporuje s podporou AKS a Arc v následujících oblastech:

Oblast Podpora AKS Podpora arc pro Kubernetes
australiaeast ✔️ ✔️
australiasoutheast ✔️
brazilsouth ✔️
canadacentral ✔️ ✔️
canadaeast ✔️ ✔️
centralindia ✔️ ✔️
centralus ✔️ ✔️
eastasia ✔️ ✔️
eastus ✔️ ✔️
eastus2 ✔️ ✔️
eastus2euap ✔️
francecentral ✔️ ✔️
francesouth ✔️
germanywestcentral ✔️ ✔️
japaneast ✔️ ✔️
japanwest ✔️
koreacentral ✔️ ✔️
koreasouth ✔️
northcentralus ✔️ ✔️
northeurope ✔️ ✔️
norwayeast ✔️
southafricanorth ✔️
southcentralus ✔️ ✔️
southeastasia ✔️ ✔️
southindia ✔️
swedencentral ✔️ ✔️
switzerlandnorth ✔️ ✔️
uaenorth ✔️
uksouth ✔️ ✔️
ukwest ✔️
westcentralus ✔️ ✔️
westeurope ✔️ ✔️
westus ✔️ ✔️
westus2 ✔️ ✔️
westus3 ✔️ ✔️

Nejčastější dotazy

Jak se porovnávají sítě Dapr a Service?

A: Pokud je síť služeb definovaná jako síťová síťová služba, Dapr není síť služeb. I když sítě dapr a služeb nabízejí některé překrývající se funkce, síť služeb se zaměřuje na sítě, zatímco Dapr se zaměřuje na poskytování stavebních bloků, které vývojářům usnadňují vytváření aplikací jako mikroslužeb. Dapr je orientovaný na vývojáře, zatímco sítě služeb jsou zaměřené na infrastrukturu.

Mezi běžné funkce, které Dapr sdílí se sítěmi služeb, patří:

  • Zabezpečená komunikace mezi službami pomocí šifrování mTLS
  • Shromažďování metrik mezi službami
  • Distribuované trasování mezi službami
  • Odolnost proti chybám prostřednictvím opakování

Dapr navíc poskytuje další stavební bloky na úrovni aplikace pro správu stavu, pub/sub messaging, actors a další. Dapr ale neposkytuje možnosti pro chování provozu, jako je směrování nebo rozdělení provozu. Pokud by vaše řešení využívalo přenosy, které rozdělují síť služeb, zvažte použití Open Service Mesh.

Další informace o sítích Dapr a služeb a jejich společném použití najdete v dokumentaci k Dapr.

Jak se rozhraní API tajných kódů Dapr porovnává s ovladačem CSI úložiště tajných kódů?

Rozhraní API pro tajné kódy Dapr i ovladač csI spravovaného úložiště tajných kódů umožňují integraci tajných kódů uložených v externím úložišti a abstrakci technologie úložiště tajných kódů z kódu aplikace. Ovladač CSI úložiště tajných kódů připojí tajné kódy uložené ve službě Azure Key Vault jako svazek CSI pro spotřebu aplikací. Dapr zveřejňuje tajné kódy prostřednictvím rozhraní RESTful API, které může být následující:

  • Volá se podle kódu aplikace.
  • Nakonfigurováno s seřazenými úložišti tajných kódů

Následující tabulka uvádí možnosti jednotlivých nabídek:

Rozhraní API pro tajné kódy Dapr Ovladač CSI úložiště tajných kódů
Podporovaná úložiště tajných kódů Místní proměnné prostředí (pro vývoj); Místní soubor (pro vývoj); Tajné kódy Kubernetes; AWS Secrets Manager; Úložiště tajných kódů služby Azure Key Vault; Azure Key Vault se spravovanými identitami v Kubernetes; GCP Secret Manager; HashiCorp Vault Úložiště tajných kódů služby Azure Key Vault
Přístup k tajným kódům v kódu aplikace Volání rozhraní API pro tajné kódy Dapr Přístup k připojenému svazku nebo synchronizaci připojeného obsahu jako tajného kódu Kubernetes a nastavení proměnné prostředí
Obměně tajných kódů Nová volání rozhraní API získávají aktualizované tajné kódy. Dotazuje se na tajné kódy a aktualizuje připojení v konfigurovatelném intervalu.
Protokolování a metriky Sajdkár Dapr generuje protokoly, které je možné nakonfigurovat s kolektory, jako je Azure Monitor, generuje metriky prostřednictvím nástroje Prometheus a zveřejňuje koncový bod HTTP pro kontroly stavu. Generuje metriky zprostředkovatele služby Azure Key Vault a ovladače přes Prometheus.

Další informace o správě tajných kódů v Dapr najdete v přehledu správy tajných kódů.

Další informace o ovladači CSI úložiště tajných kódů a poskytovateli služby Azure Key Vault najdete v přehledu ovladačů CSI úložiště tajných kódů.

Jak se spravované rozšíření clusteru Dapr porovnává s opensourcovými nabídkami Dapr?

Spravované rozšíření clusteru Dapr je nejjednodušší metodou zřízení Dapr v clusteru AKS. S rozšířením můžete přesměrovat správu verze modulu runtime Dapr tím, že se přihlásíte k automatickým upgradům. Rozšíření navíc nainstaluje Dapr s inteligentními výchozími nastaveními (například zřízení řídicí roviny Dapr v režimu vysoké dostupnosti).

Při instalaci open source Dapr prostřednictvím helmu nebo rozhraní příkazového řádku Dapr zodpovídají vývojáři a správci clusterů také za verze modulu runtime a možnosti konfigurace.

Rozšíření Dapr je navíc rozšířeníM AKS, takže můžete očekávat stejné zásady podpory jako jiné funkce AKS.

Přečtěte si další informace o migraci z open source Dapr na rozšíření Dapr pro AKS.

Jak můžu ověřovat komponenty Dapr pomocí ID Microsoft Entra pomocí spravovaných identit?

Jak můžu přepnout na použití rozšíření Dapr, pokud jsem už nainstaloval Dapr pomocí metody, jako je Helm?

Doporučené pokyny je zcela odinstalovat Dapr z clusteru AKS a přeinstalovat ho prostřednictvím rozšíření clusteru.

Pokud nainstalujete Dapr prostřednictvím rozšíření AKS, doporučujeme pokračovat v používání rozšíření pro budoucí správu Dapr místo rozhraní příkazového řádku Dapr. Kombinace těchto dvou nástrojů může způsobit konflikty a vést k nežádoucímu chování.

Další kroky

Po seznámení s Dapr a některými problémy, které řeší, zkuste nasadit aplikaci s rozšířením clusteru Dapr.