A Flux 2.9 GA bejelentése
Megosztás
Összefoglalót olvas. A teljes tartalom itt érhető el: fluxcd.io.
Örömmel értesítünk mindenkit, hogy megjelent a Flux v2.9.0! Ebben a bejegyzésben kiemeljük az új funkciókat és fejlesztéseket, amelyek e kiadásban megtalálhatók. Főbb jellemzők A Flux v2.9 bevezeti a Flux CLI Plugin Rendszert, egy új módot, amely lehetővé teszi a Flux parancssori felület bővítését első osztályú bővítményekkel. A bővítmény rendszer mellett ez a kiadás erőteljes újításokat hoz a szerveroldali alkalmazáshoz, a titkosítás dekripciójának és a Git integrációknak. E kiadásban több új funkciót vezettünk be a Flux CLI-be és a kontrollerekbe: Flux CLI Plugin Rendszer a Mirror és Schema bővítményekkel Szerveroldali alkalmazáshoz mező figyelmen kívül hagyási szabályok a részletes eltérés-ellenőrzés érdekében SOPS dekripció az Age posztkvantum titkosítójával Kubernetes Workload Identity hitelesítés OpenBao és Vault számára Helm utófeldolgozási stratégiák, beleértve a grafikon horgok támogatását Git commit aláírás és ellenőrzés SSH kulcsokkal Titok nélküli, OIDC-vel védett webhook fogadók AWS CodeCommit hitelesítés Workload Identity használatával Az ökoszisztéma hírei között új Flux Operator kiadás érkezett, amely kiterjeszti a Flux Web UI-t egy munkaterhelési műsorral és egy erőteljes pod naplómegtekintővel. Flux CLI Plugin Rendszer A Flux v2.9 kiemelkedő funkciója az új Flux CLI Plugin Rendszer, amely az RFC-0013-ban van meghatározva. A bővítmények lehetővé teszik, hogy a flux parancsot további funkciókkal bővítsük, amelyek függetlenül települnek és verziózódnak a Flux CLI-től, ugyanakkor úgy érzik, mintha natív részei lennének az eszköznek. A Flux bővítmény katalógus két bővítményt tartalmaz, amelyeket a Flux projekt karbantart: Mirror — Helm grafikonok, OCI művek és konténerképek tükörképe másolása a regisztrációk között deklaratív konfigurációval. Támogatja a több architektúrájú képeket, HTTP/S-OCI Helm grafikonra történő átalakítást, aláírás-ellenőrzést, regex és semver szűrést, valamint több autentikációs módszert, beleértve a felhőbeli Workload Identity-t. Schema — validálja a Kubernetes manifesztumokat JSON sémák és CEL szabályok alapján. Beépített sémákkal rendelkezik Kubernetes, OpenShift, Gateway API és a Flux CRD-k számára, támogatja a testreszabott séma katalogusokat, és integrálódik a CI/CD-vel a GitHub Actions vagy Docker által. Továbbá, a ControlPlane fenntartja az Operator bővítményt a Flux Operator erőforrásaival kapcsolatos műveletek kezelésére, az objektumok nyomon követésére a GitOps folyamatban, a ResourceSets hibakeresésére, és AI ügynök készségek telepítésére. Bővítmények telepítése A bővítményeket az új flux plugin alsóparancsokon keresztül kezeljük. A binárisok a ~/fluxcd/plugins mappába kerülnek letöltésre és Flux alsóparancsokként regisztrálódnak, tehát miután telepítve lettek, a következőképpen hívhatók elő: flux <plugin>: # A rendelkezésre álló bővítmények katalógusának keresése flux plugin search # Bővítmény telepítése flux plugin install schema # Telepített bővítmények listázása flux plugin list # Bővítmények frissítése és eltávolítása flux plugin update schema flux plugin uninstall schema Alapértelmezés szerint a flux plugin install a legújabb bővítmény verziót tölti le. A reprodukálható környezetekhez rögzítheti a bővítményt egy adott verzióra a flux plugin install schema@0.5.0 használatával, vagy egy változatlan hashelt értékre a flux plugin install schema@sha256:<digest> paranccsal, ami javasolt CI folyamatok és termelési környezetek esetén. Szerveroldali alkalmazáshoz mező figyelmen kívül hagyási szabályok A Flux a szerveroldali alkalmazáson keresztül alkalmazza az erőforrásokat, a területgazdává válik mindarra, amit összehangol. Azonban bizonyos mezők más kontrollerek tulajdona kell, hogy legyenek, például a replikák mező, amelyet egy Horizontális Pod Autoscaler kezel, vagy a tanúsítványok, amelyeket egy elfogadó webhook injektál. Eddig a Flux folyamatosan megpróbálta visszaállítani ezeket a mezőket a Gitben deklarált kívánt állapotba. A Flux v2.9 bővíti a szerveroldali alkalmazást mező figyelmen kívül hagyási szabályokkal. Az új Kustomization.spec.ignore mező használatával megmondhatja a kustomize-controller-nek, hogy figyelmen kívül hagyja a specifikus vezérelt mezőket az eltérés-ellenőrzés és alkalmazás során, ezáltal más kontrollerek tulajdonában hagyva őket: apiVersion: kustomize.toolkit.fluxcd.io/v1 kind: Kustomization metadata: name: podinfo namespace: flux-system spec: # ... ignore: - target: kind: Deployment paths: - "/spec/replicas" Ez lehetővé teszi, hogy részletes felügyeletet gyakoroljon, hogy mely erőforrások felett gyakorol a Flux tulajdonjogot, ami sokkal könnyebbé teszi a GitOps kombinálását automatikus skálázókkal, szolgáltatás hálózatokkal és más olyan kontrollerekkel, amelyek módosítják a valós objektumokat. Fejlettebb titkosítás dekripció Age posztkvantum titkosító A Flux v2.9 támogatást ad hozzá a SOPS-enkriptált titkosítványok dekripciójához, amelyeket az Age posztkvantum titkosítóval zártak le. Ahogy az ipar a posztkvantum titkosítással készül, ez lehetővé teszi a csapatok számára, hogy titkaikat biztonságban tartsák kvantum-rezisztens titkosítással, miközben ugyanazt a SOPS-alapú GitOps munkafolyamatot megtartják. Workload Identity OpenBao és Vault számára Az e kiadással kezdve a kustomize-controller most már validálhatja az OpenBao és a HashiCorp Vault-ot a Kubernetes Workload Identity használatával. Ez eltávolítja a szükségességet, hogy hosszú élettartamú Vault tokeneket tároljunk a klaszterben. A Flux a kontrollerek ServiceAccount tokenjét cseréli Vault hitelesítő adatokra, a már meglévő kulcs nélküli hitelesítési modell alapján, amelyet a felhőszolgáltatóknál használnak. Helm fejlesztések Utófeldolgozási stratégiák A Flux v2.9 támogatást ad a Helm utófeldolgozási stratégiáinak a HelmRelease API-ban, lehetővé téve, hogy irányítást gyakoroljon arra, hogy az utófeldolgozás miként lép interakcióba a grafikon horgokkal. Megszakító változás Az alapértelmezett utófeldolgozási stratégia a nohooks-ról combined-ra váltott. Az új alapértelmezett értéknél a Helm horgok részesülnek az utófeldolgozási folyamatban, amely szorosabban illeszkedik a Helm natív viselkedéséhez. Ha a grafikonjai az előző viselkedésre támaszkodnak, kifejezetten állítsa be a stratégiát nohooks-ra a HelmRelease-iben a frissítés előtt. Literális értékek A HelmRelease valuesFrom mezője most már támogat egy literális módot, amely tükörképe a helm install --set-literal szeminrikáinak. Ez lehetővé teszi, hogy a ConfigMap vagy Secret kulcsának teljes tartalmát egyetlen string értékként injektálja anélkül, hogy a Helm megpróbálná azt típusként értelmezni; hasznos olyan értékekhez, amelyek olyan karaktereket tartalmaznak, amelyeket a Helm különben értelmezne. Egy gyakori példa az, hogy egész konfigurációs fájlokat, például Java application.properties vagy .yaml konfigurációs blobokat adunk át a grafikon értékének, anélkül, hogy a tulajdonság kulcsok pontjait beágyazott objektumokká alakítanák. CEL állapotellenőrzések A CEL-alapú állapotellenőrzési kifejezések most már megengednek egy üres típust, lehetővé téve, hogy olyan állapotellenőrzéseket írjon, amelyek több erőforrástípusra vonatkoznak mind HelmRelease-ek, mind Kustomization-ök esetében. Git integrációk A Flux v2.9 SSH kulcsokat hoz a Git commit aláírásához és ellenőrzéséhez, kiegészítve a meglévő GPG támogatást: Ellenőrzés a source-controller most már ellenőrizheti a Git commit aláírásokat, amelyeket SSH kulcsokkal végeztek, a GPG mellett, a GitRepository .spec.verify API-n keresztül konfigurálva. Aláírás az image-automation-controller alá tudja írni a commitokat, amelyeket SSH kulcsokkal hajt meg, a ImageUpdateAutomation .spec.git.commit.signingKey API-n keresztül konfigurálva, és a flux bootstrap alá tudja írni a manifest commitokat, amelyeket SSH kulcsokkal hajt meg. Ez a kiadás támogatja az AWS CodeCommit-hez való hitelesítést is Workload Identity használatával, kiterjesztve a kulcs nélküli hitelesítési modellt az AWS által hosztolt Git tárolókra. A Flux közvetlenül a CodeCommit-ra is bootstrappalható a dedikált AWS CodeCommit bootstrap útmutató követésével. Artefaktum fejlesztések Privát Sigstore A légüres térben működő és saját hosztolt környezetek számára a source-controller most már támogat egy egyedi Sigstore megbízható gyökeret a kulcs nélküli OCI artefaktumok és konténerképek ellenőrzéséhez. Ez lehetővé teszi azok számára, akik saját Sigstore infrastruktúrát működtetnek, hogy ellenőrizzék az aláírásokat anélkül, hogy a nyilvános Sigstore megbízható gyökeréről kellene támaszkodniuk. ArtifactGenerator könyvtár felfedezés Az ArtifactGenerator API könyvtár mintázat felfedezést kap, amely megkönnyíti az artefaktumok kezelését monorepo-k között. Ahelyett, hogy minden alkalmazáshoz egy létező artefaktumot kézzel kellene deklarálni, egy minta alapján leírhatja a könyvtár elrendezést, és hagyhatja, hogy a source-watcher felfedezze a megfelelő könyvtárakat és generáljon egy ExternalArtifact-ot minden egyes egyezéshez. Az elnevezett fogások, mint pl. {app} és {env} sablonváltozókká válnak az artefaktum nevekhez és címkékhez: apiVersion: source.toolkit.fluxcd.io/v1beta1 kind: ArtifactGenerator metadata: name: monorepo-apps namespace: flux-system spec: sources: - alias: monorepo kind: GitRepository name: my-monorepo pathPattern: "@monorepo/apps/{app}/envs/{env}" artifacts: - name: "{app}-{env}" copy: - from: "@monorepo/apps/{app}/envs/{env}/**" to: "@artifact/" Webhook fejlesztések A Flux v2.9 támogatást nyújt az OIDC-vel védett általános Fogadók számára, lehetővé téve a webhook fogadók védelmét megosztott titok nélkül. Ahelyett, hogy egy HMAC aláírást érvényesítene, a notification-controller érvényesítheti a hívó által bemutatott OIDC ID tokent, lehetővé téve a biztonságos, titok nélküli integrációkat olyan platformokkal, amelyek támogatják az OIDC-t. A fogadók most már erőforrás-szintű szűrővel is konfigurálhatók, így pontosabb kontrollt adva arra, hogy mely erőforrásokat egyeztet a fogadó, amikor aktiválódik. A webhookokkal való könnyebb munka érdekében a parancssorból és CI munkákban, ez a kiadás bevezeti az új flux trigger receiver parancsot, amely lehetővé teszi, hogy egy webhookot aktiváljon anélkül, hogy saját magának kellene megalkotnia és elküldenie az HTTP kérést. Ökoszisztéma hírek Flux Web UI: Munkaterhelések és Naplók A Flux Operator legújabb kiadása a Flux Web UI-t kiterjeszti egy dedikált munkaterhelési irányítópultra és egy funkciókkal teli pod naplómegtekintőre. Az új munkaterhelési irányítópult összpontosított nézetet biztosít a Telepítések, StatefulSets, DaemonSets és CronJobs számára, beleértve: Egy pipeline vizualizációt, amely megmutatja a forrástól a visszaigazítóig való áramlást, és onnan a munkaterheléshez és pods-hoz Irányító eszközöket az egyeztetéshez, telepítési műveletekhez és felfüggesztés/megtartás Egy többfülke panelt az Áttekintés, Podok, Események, Specifikáció és Állapot szakaszokkal Részletes pod listákat a telepítési állapottal és per-konténer képinformációkkal A pod naplómegtekintő modern naplózási élményt nyújt közvetlenül a UI-ba: Valós idejű napló streaming követéssel és pillanatkép módokkal Több pod és több konténer összegzése kronológiai sorrendben Napló szintű érzékelés és színkódolás számos naplózási keretrendszer körében Összecsukható stack-trace csoportosítás Go, Python, Node és Java kivételekhez Erőteljes szűrés ellenállás támogatással, JSON szépen formázva, és letölthető exportokkal Minden munkaterhelési és naplózási művelet tiszteletben tartja a Kubernetes RBAC-t a felhasználói képviseleten keresztül, így amit egy felhasználó lát és tehet a felületen, az megegyezik a klaszter jogosultságaival. Kezdje azzal, hogy telepíti a Flux Operator legújabb verzióját, és követi a Flux Web UI dokumentációját. Támogatott verziók A Flux v2.6 elérte a támogatás megszűnését, és már nem támogatott. A Flux v2.9 a következő Kubernetes verziókat támogatja: Terjesztés Verziók Kubernetes 1.34, 1.35, 1.36 OpenShift 4.21 Vállalati támogatás Felhívjuk figyelmét, hogy a CNCF Flux projekt csak a Kubernetes legújabb három kisebb verzióját támogatja. A régebbi Kubernetes és OpenShift verziókkal való hátrameneti kompatibilitást olyan szolgáltatók kínálják, mint a ControlPlane, akik vállalati támogatást nyújtanak a Flux számára. Frissítési eljárás Felhívjuk figyelmét, hogy a Flux v2.9 esetében a következő API-k elérhetetlenné váltak és eltávolításra kerültek a CRD-kből: image.toolkit.fluxcd.io/v1beta2 notification.toolkit.fluxcd.io/v1beta2 A Flux v2.9-re való frissítés előtt győződjön meg róla, hogy migrálta az összes erőforrását a stabil API-kra a flux migrate parancs használatával. Ez a kiadás tartalmazza a következő megszakító változásokat is, kérjük, nézze át őket a frissítés előtt: Az alapértelmezett Helm utófeldolgozási stratégia a nohooks-ról combined-ra váltott. A GCR fogadóknak mostantól meg kell adniuk az email és audience mezőket a hivatkozott Secret-ben (CVE-2026-40109). Frissítési eljárás a Flux v2.9-hez Külön lépésről lépésre frissítési útmutatót tettünk közzé, kérjük, kövesse a Flux v2.7+ Frissítési Eljárás utasításait. További információk Ha bármilyen kérdése van, vagy egyszerűen csak tetszett, amit olvasott és szeretne részt venni, itt van néhány jó módszer, hogy kapcsolatba lépjen velünk: Csatlakozzon a közelgő fejlesztői találkozóinkhoz. Beszéljen velünk a #flux csatornán a CNCF Slack-en. Csatlakozzon a tervezési megbeszélésekhez. Kövesse a Flux-ot Twitteren, vagy csatlakozzon a Flux LinkedIn csoporthoz.
Külső link: fluxcd.io
Kapcsolódó cikkek
devops
Hét stabil kernel szombatra, köztük két biztonsági javítással.
devops
Miért nem mentik meg az olcsóbb modellek az AI költségvetését?
devops
