Megosztás a következőn keresztül:


Az Azure Kubernetes Service-hez készült, Istio-alapú szolgáltatásháló-bővítmény

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-üzemelő példányokat, a sebességkorlátozást, a hozzáférés-vezérlést, a titkosítást és a teljes körű 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, mint amikor coredns az Istio engedélyezve van.
  • 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övő forgalom beállítása.
  • A Prometheushoz és az Azure Managed Grafana-hoz készült Azure Monitor felügyelt szolgáltatással való együttműködés ellenőrzése.
  • 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 az AKS-hez Open Service Mesh-bővítményt használó AKS-fürtökön.
  • A bővítmény nem működik az Istio ön által felügyelt telepítésű 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 a kimenő forgalomvezérlés kimenő átjáróit.
  • 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 alatt járul hozzá a környezeti munkafolyamathoz. A környezeti mód termékintegrációja az ütemterven van, és folyamatosan kiértékelik a környezeti munkafolyamat fejlődésével.
  • 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, mivel ez jelenleg nem érhető el nyílt forráskód Istio-ban. A funkcióval kapcsolatos kérdés nyomon követésével kapcsolatos probléma itt található.
  • A mesh testreszabása az alábbi egyéni erőforrásokon keresztül egyelőre le van tiltva – ProxyConfig, WorkloadEntry, WorkloadGroup, Telemetry, IstioOperator, WasmPlugin, EnvoyFilter.
  • Mert EnvoyFiltera bővítmény egyelőre csak a Lua típusú szűrőt támogatja (type.googleapis.com/envoy.extensions.filters.http.lua.v3.Lua). Bár ez az EnvoyFilter engedélyezett, a Lua-szkriptből eredő problémák nem támogatottak. Más EnvoyFilter típusok jelenleg le vannak tiltva.
  • Az Istio bejövő átjáróhoz vagy a hálóforgalom (GAMMA) kezeléséhez készült Átjáró API jelenleg még nem támogatott az Istio-bővítményben. A bővítmény átjáró API-implementációjának részeként a jövőben engedélyezni szeretné az olyan testreszabásokat, mint a bejövő statikus IP-címkonfiguráció.

Visszajelzések és funkcióval kapcsolatos kérdések

Az Istio bővítményre vonatkozó visszajelzések és funkciók az AKS GitHub-adattár "service-mesh" címkével kapcsolatos problémáinak létrehozásával adhatók meg.

Következő lépések