( PTZool | 2022. 06. 21., k – 21:21 )

Amire mi hasznaljuk "namespace" letrehozas. :) Alapvetoen, ahol mi segitunk CI/CD-t megvalositani tobb 100 fejleszto dolgozik egyszerre es tobb projekten. A namespace egy stacket jelent, igy nem csak annyi a feladat, hogy letrehozzunk egy namespacet. A stack lehet 5 de akar 50 microservice 1 ns-en belul.

Mit is ertek azon, hogy cluster kozeli folyamatok/integracio:

  • namespace letrehozas (specialis nsx-t overlay network, ingresss/egress cim beallitas)
  • namespace metadata beallitasok (annotaciok fokent)
  • namespacehez tartozo networkpolicyk letrehozasa (tobb 100 ns-rol beszelunk, minden nshez kulon networkpolicy tartozik)
  • namespace jogosultsagok letrehozasa (rolebindingok, specialis roleok (nem feltetlenul elegendo a k8s adta default roleok)), itt fokent arra gondolj, hogy a fejlesztoknek /ns jogosultsagok (ldap)
  • namespace ingress kitelepites (security elvaras)
  • nehany specialis eszkoz, amit egyebkent erdemes hasznalni, ns-be kitelepituk, igy peldaul blackbox exporter kulso tuzfalak ellenorzesere (k8s probe objektum - tcp/dns/http checkeket lehet vele ellenorizni)
  • namespace quotak beallitasa
  • specialis serviceaccount letrehozasa (deploy folyamathoz)
  • default secretek (CA, kozponti URL-ek, stb) kitetele
  • automatikus DNS letrehozas a namespace ingresshez a kozponti zonafajlban, nem a k8sen belul
  • gitlab integracio a projecthez (agent, cert, es ldap mappeles, eleg komplex, minden ldapbol vezerelve)
  • artifactory letrehozas a nshez, jogosultsagok letrehozasa, szinten ldap mappeles
  • etc.

Lenyeg, amikor mi egy ns-t letrehozunk a fejlesztok szamra minden letre van hozva nev konvencio alapjan. O nekik lenyegeben egy ldap jogot kell megkerni es megkapjak a megfelelo jogokat. Artifactory, harbor, gitlab, k8s, stb. Ezt a folyamatot vegzi a tekton. Osszesen nem is tudom de a ns letrehozas nem csak egy create ns-t jelent nalunk, hanem olyan 40-50 feladatot, mind ezt ugy hogy idempotens. Van egy tekton leiro/ns es abban vannak a parameterek, amit gitben tarolunk es ez alapjan jonnek letre a nsek es ha valtozas van ez alapjan modosul.

Remelem megvalaszoltam a kerdesed.

A helm chartos hozzallas tok jo, bar mi kezdjuk elengedni es inkabb operatorokat hasznalunk es kezdjuk elengedni a helmes telepitest. Termeszetesen nalunk is, a stackek kitelepitese helm chartal tortenik, ott egyebkent egy altalunk fejlesztett open source helm libraryt hasznalunk.

https://artifacthub.io/packages/helm/cf-common/helm-common

Sajnos a helmnek vannak hibai, ezeket probaltuk orvosolni egy library segitsegevel. Ha sok helm chart van es api verzio valtas van, akkor sajnos ezeket is modositani kell. Ez a problema 5-10 helm chartnal nem gaz, de nalunk tobb ezer van, igy egy API verzio valtas nagyon macera volt ennelkul. :) Ez a reklam helye volt. :P