Rozšíření Dapr pro Azure Kubernetes Service (AKS) a Kubernetes s podporou Arc
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í 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
- 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.14.x
- 1.13.x
- 1.12.x
Spuštěním příkazů Azure CLI můžete načíst seznam dostupných verzí v clusteru nebo umístění.
Podpora modulu runtime
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 Application Insights |
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 Dapr
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 Cosmos DB Azure Blob Storage v1 Azure Table Storage Microsoft SQL Server |
state.azure.cosmosdb 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 | secretstores.azure.keyvault |
Komponenty vrstvy 2
rozhraní API | Komponenta | Typ |
---|---|---|
Správa stavu | PostgreSQL MySQL a MariaDB Redis |
state.postgresql state.mysql state.redis |
Publikování a přihlášení k odběru | Apache Kafka Streamy 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?
I když sítě Dapr a sítě 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é 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 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?
- Zjistěte, jak se komponenty Dapr ověřují pomocí ID Microsoft Entra.
- Seznamte se s používáním spravovaných identit s AKS.
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. Můžete také zkontrolovat stávající instalaci Dapr a migrovat ji do AKS.
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
Azure Kubernetes Service