
👀 Un sanificatore di risorse per cluster Kubernetes
Popeye è un'utilità che scansiona cluster Kubernetes live e segnala potenziali problemi con risorse e configurazioni distribuite. Con la crescita del panorama Kubernetes, sta diventando una sfida per un essere umano tenere traccia della marea di manifesti e policy che orchestrano un cluster. Popeye scansiona il tuo cluster in base a ciò che è distribuito e non ciò che è sul disco. Effettuando il linting del tuo cluster, rileva configurazioni errate, risorse obsolete e ti assiste per assicurarti che le best practice siano in atto, prevenendo così futuri mal di testa. Mira a ridurre il sovraccarico cognitivo che si affronta quando si opera un cluster Kubernetes in ambiente reale. Inoltre, se il tuo cluster utilizza un metric-server, segnala potenziali allocazioni eccessive/insufficienti di risorse e tenta di avvisarti nel caso in cui il tuo cluster esaurisca la capacità.
Popeye è uno strumento di sola lettura, non altera in alcun modo le tue risorse Kubernetes!
Puoi esportare il report di scansione in HTML.
Popeye pubblica metriche Prometheus. Abbiamo fornito un dashboard Popeye di esempio per iniziare in questo repository.
Popeye è disponibile su piattaforme Linux, OSX e Windows.
I binari per Linux, Windows e Mac sono disponibili come tarball nella pagina release.
Per OSX/Unit utilizzando Homebrew/LinuxBrew ```shell brew install derailed/popeye/popeye
Usando go install
go install github.com/derailed/popeye@latest
Compilazione dal sorgente Popeye è stato costruito con go 1.21+. Per compilare Popeye dal sorgente devi:
Clonare il repository
Aggiungere il seguente comando nel file go.mod
replace (
github.com/derailed/popeye => MY_POPEYE_CLONED_GIT_REPO
)
Compilare ed eseguire l'eseguibile
go run main.go
Ricetta veloce per gli impazienti: ```shell
git clone https://github.com/derailed/popeye cd popeye
make build
popeye
Popeye utilizza la modalità terminale a 256 colori. Su `Nix sistema assicurati che TERM sia impostato di conseguenza.
export TERM=xterm-256color
Puoi usare Popeye a tutto campo o utilizzando un config yaml spinach per regolare i tuoi linters. I dettagli sul file di configurazione di Popeye sono qui sotto.```shell
popeye version
popeye
fred namespacepopeye -n fred
popeye -A
popeye -f spinach.yaml
popeye --context olive
popeye -n ns1 -s pod,svc --logs none
popeye -n ns1 --logs /tmp/fred.log -v4
popeye help
---
## Linters
Popeye scansiona il tuo cluster per individuare best practice e potenziali problemi.
Attualmente, Popeye esamina solo un determinato insieme di risorse Kubernetes curate.
Altre arriveranno presto!
Speriamo che gli amici di Kubernetes collaborino per rendere Popeye ancora migliore.
L'obiettivo dei linter è individuare configurazioni errate, come discrepanze di porte, risorse inutilizzate o morte, utilizzo delle metriche, probe, immagini dei container, regole RBAC, risorse nude, ecc...
Popeye non è un altro strumento di analisi statica. Esegue e ispeziona le risorse Kubernetes su cluster live e analizza le risorse così come sono in produzione!
Ecco un elenco di alcuni dei linter disponibili: