Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Istio az elosztott vagy mikroszolgáltatás-architektúrával szembesülő fejlesztők és operátorok előtt álló kihívásokra is megoldást kínál. Az Istio-alapú service mesh bővítmény hivatalosan támogatott és tesztelt integrációt biztosít az Azure Kubernetes Service -hez (AKS).
Mi az a Service Mesh?
A modern alkalmazásokat jellemzően mikroszolgáltatások elosztott gyűjteményeiként építik ki, és mindegyik mikroszolgáltatás-gyűjtemény különálló üzleti funkciót hajt végre. A szolgáltatásháló egy dedikált infrastruktúraréteg, amelyet hozzáadhat az alkalmazásokhoz. Lehetővé teszi az olyan képességek transzparens hozzáadását, mint a megfigyelhetőség, a forgalomkezelés és a biztonság, anélkül, hogy hozzáadja őket a saját kódjához. A service mesh kifejezés leírja a minta implementálásához használt szoftverek típusát, valamint a szoftver használatakor létrehozott biztonsági vagy hálózati tartományt.
Ahogy az elosztott szolgáltatások, például a Kubernetes-alapú rendszerek üzembe helyezése egyre nagyobb és összetettebbé válik, nehezebbé válik a megértés és a kezelés. Előfordulhat, hogy olyan képességeket kell implementálnia, mint a felderítés, a terheléselosztás, a hiba helyreállítása, a metrikák és a figyelés. A szolgáltatásháló összetettebb üzemeltetési követelményeket is képes kezelni, például az A/B-tesztelést, a kanári telepítéseket, a sebességkorlátozást, a hozzáférés-vezérlést, a titkosítást és a végpontok közötti hitelesítést.
A szolgáltatásközi kommunikáció teszi lehetővé az elosztott alkalmazásokat. A szolgáltatások számának növekedésével egyre összetettebbé válik a kommunikáció mind az alkalmazásfürtökön belül, mind az alkalmazások között. Az Istio segít csökkenteni ezt a bonyolultságot, miközben enyhíti a fejlesztői csapatok terhelését.
Mi az Istio?
Az Istio egy nyílt forráskódú szolgáltatásháló, amely transzparensen rétegz a meglévő elosztott alkalmazásokra. Az Istio hatékony funkciói egységes és hatékonyabb módot biztosítanak a szolgáltatások biztonságossá tételéhez, csatlakoztatásához és monitorozásához. Az Istio lehetővé teszi a terheléselosztást, a szolgáltatások közötti hitelesítést és a monitorozást – kevés vagy semmilyen szolgáltatáskód-módosítással. A nagy teljesítményű vezérlősík alapvető funkciókat kínál, többek között a következőket:
- Biztonságos szolgáltatásközi kommunikáció egy fürtben TLS (Transport Layer Security) titkosítással, erős identitásalapú hitelesítéssel és engedélyezéssel.
- Automatikus terheléselosztás HTTP-, gRPC-, WebSocket- és TCP-forgalomhoz.
- A forgalom viselkedésének részletes szabályozása részletes útválasztási szabályokkal, újrapróbálkozással, feladatátvételekkel és hibainjektálással.
- Egy csatlakoztatható szabályzatréteg és konfigurációs API, amely támogatja a hozzáférés-vezérlést, a sebességkorlátokat és a kvótákat.
- Automatikus metrikák, naplók és nyomkövetések a fürtön belüli összes forgalomhoz, beleértve a fürt bejövő és kimenő forgalmát is.
Miben különbözik a bővítmény a nyílt forráskódú Istio-tól?
Ez a service mesh-bővítmény a nyílt forráskódú Istio-ra épül és használ. A bővítmény íze a következő extra előnyöket nyújtja:
- Az Istio-verziók tesztelése és ellenőrzése az Azure Kubernetes Service támogatott verzióival való kompatibilitás érdekében történik.
- A Microsoft kezeli az Istio vezérlősík skálázását és konfigurációját
- A Microsoft úgy módosítja az AKS-összetevők skálázását, amikor az Istio engedélyezett, mint a
coredns
. - A Microsoft felügyelt életciklust (frissítéseket) biztosít az Istio-összetevőkhöz, amikor a felhasználó aktiválja.
- Ellenőrzött külső és belső bejárati beállítás.
- Biztosított működés a Prometheushoz készült Azure Monitor felügyelt szolgáltatással és az Azure Managed Grafana-val.
- A bővítményhez megadott hivatalos Azure-támogatás.
Korlátozások
Az AKS-hez készült, Istio-alapú szolgáltatásháló-bővítmény a következő korlátozásokkal rendelkezik:
A bővítmény nem működik olyan AKS-fürtökön, amelyek Open Service Mesh-bővítményt használnak az AKS-hez.
A bővítmény nem működik az Istio saját kezelésű telepítéseivel rendelkező AKS-fürtökön.
A bővítmény nem támogatja a virtuális csomópontokhoz társított podok hozzáadását a háló alá.
A bővítmény még nem támogatja az oldalkocsi nélküli környezeti módot. A Microsoft jelenleg az Istio nyílt forráskódú projektben járul hozzá az Ambient munkafolyamathoz. Az Ambient mód termékintegrációja az ütemterven szerepel, és folyamatosan kiértékelik az Ambient munkafolyamat fejlődésével együtt.
A bővítmény még nem támogatja a többfürtes telepítéseket.
A bővítmény még nem támogatja a Windows Server-tárolókat. A Windows Server-tárolók jelenleg nem támogatottak nyílt forráskód Istio-ban. A funkciókéréssel kapcsolatos probléma nyomon követése itt található.
A mesh testreszabása a következő egyéni erőforrásokon keresztül jelenleg le van tiltva –
ProxyConfig, WorkloadEntry, WorkloadGroup, IstioOperator, WasmPlugin
.A bővítmény a következő
EnvoyFilter
szűrőtípusok használatát teszi lehetővé, más szűrőtípusok letiltva:- Lua (
type.googleapis.com/envoy.extensions.filters.http.lua.v3.Lua
) - Kompresszor (
type.googleapis.com/envoy.extensions.filters.http.compressor.v3.Compressor
) - Helyi sebességkorlát (
type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
)
Feljegyzés
Bár ezek
EnvoyFilter
engedélyezettek, az ezekből eredő problémák (például a Lua-szkriptből vagy a tömörítési kódtárból) kívül esik az Istio bővítmény támogatási hatókörén. Az Istio bővítményfunkcióinak és konfigurációs beállításainak támogatási kategóriáiról további információt a támogatási szabályzat dokumentumában talál.- Lua (
Az Istio bejövő átjáróhoz vagy a hálózati forgalom kezeléséhez készült Átjáró API (GAMMA) jelenleg nem támogatott az Istio bővítményben. Az Istio bejövő forgalomkezeléséhez készült Gateway API jelenleg aktív fejlesztés alatt áll a bővítményhez. Bár a bővítmény támogatja az Istio bejövő átjáróinak megjegyzéseit és
externalTrafficPolicy
testreszabását, a port- vagy protokollkonfiguráció jelenleg nem támogatott.A bővítmény támogatja a MeshConfig mezőinek egy részhalmazának testreszabását. Más testreszabások is engedélyezhetők, de nem támogatottak vagy nem engedélyezettek teljes mértékben, az itt leírtak szerint.
Visszajelzés és funkció kérése
Az Istio bővítményhez kapcsolódó visszajelzéseket és funkciók iránti kéréseket az AKS GitHub-adattárban a 'service-mesh' címkével ellátott problémák létrehozásával lehet megadni.
Következő lépések
Azure Kubernetes Service