0

Kubernetes Manifest Linter

Lint Kubernetes YAML kaitseb klastrite tugevdamise parimate tavade vastu, teie brauseris täiesti võrguühenduseta.

Buy Me a Coffee at ko-fi.com
Töötlemine... 0%
YAML-i sõelumine
Kõndimise manifest
Kõvenemisreeglite kontrollimine
Valmis

Tulemus

Kubernetese manifestid vaadatakse tavaliselt tõmbepäringus silma järgi, mis tähendab, et tootmisse jõuavad pidevalt samad vead: mälupiiranguta juurutus, mis lõpuks OOM-i hävitab ja võtab endaga kaasa sõlme, konteiner, mis töötab õnnelikult administraatorina, sest keegi ei määranud runAsNonRoot, või Pod, mis on kinnitatud pildimärgendile rollane muutuste all, nagu näiteks `:outlane. See linter tabab selle probleemiklassi kohe, kui manifesti kleepite, ilma et oleks vaja töötavat klastrit, kubectli konteksti või mandaate.

Kapoti all on see väike käsitsi valtsitud YAML-i parser, mis on kirjutatud spetsiaalselt YAML-i realistliku alamhulga jaoks, mida Kubernetes'i manifest tegelikult kasutab: "---"-eraldatud dokumendid, taandepõhine pesastamine, "võti: väärtus" ja pesastatud plokkide vastendused, "-" jadaüksused, sealhulgas kaartide loendid, tsiteeritud ja tsiteerimata plokid, kommentaarid ja | skalaarid selliste asjade jaoks nagu mitmerealised ConfigMapi väärtused või märkused. Kaasatud ei ole välist YAML-i teeki – parser ja reeglimootor on mõlemad tööriistaga komplekteeritud ja töötavad täielikult teie brauseris.

Reeglitabel on modelleeritud tuntud klastrite tugevdamise juhiste järgi – CIS Kubernetes Benchmark, kube-score ja Pod Security Standards "Restricted" profiil – ning kontrollib iga konteineri puuduvate ressursitaotluste/piirangute, konteinerite, mida saab käivitada juur- või privilegeeritud režiimis, puuduvate elujõulisuse ja valmisoleku töökoormuste, pika-käivitamise töökoormuste, pika-S-i DaemonSets), hostPathi köiteühendused, mis paljastavad hosti failisüsteemi, hostivõrgu kasutuse ja reprodutseerimata „:latest” või märgistamata konteineri kujutised. Leiud on rühmitatud dokumentide ja konteinerite kaupa, kusjuures igaühel on selge vea/hoiatuse raskusaste, et saaksite pelgalt parima tava tõuke põhjal aru saada, mis on tegelikult riskantne.

See töötab üksikute manifestide või tervete mitmest dokumendist koosnevate failidega, mis on kleebitud otse Helmi malli renderdusest või "kustomize build" väljundist, mõistes Podi, juurutamise, StatefulSeti, DaemonSeti, Töö, ReplicaSeti ja CronJobi ressursse. Kuna kõik töötab lokaalselt, on turvaline kleepida manifeste, mis sisaldavad sisemiste teenuste nimesid, tegelikku ressursi suurust või midagi muud, mida te ei sooviks saata kolmanda osapoole API-le – see on kasulik kiireks kinnitamiseelseks mõistusekontrolliks, koodi ülevaatamise abivahendiks või lihtsalt õppimiseks, kuidas "karastatud" tegelikkuses välja näeb.