KubeLinter|K8s YAML和Helm charts最佳分析工具

2023-03-18 11:47:47 浏览数 (2)

用KubeLinter找到并修复你的Helm chart和Kubernetes配置文件中的错误。

KubeLinter是Stackrox发布的一个开源项目,用于分析Kubernetes的YAML文件,以发现安全问题和错误代码。该工具能够分析Helm charts和Kubernetes编排文件、Knative文件。使用它可以改进本地云开发、减少开发时间,并鼓励DevOps最佳实践。

下载和安装

在本教程中,我使用了Pop_OS!20.10, Helm 3,Go1.13.8,和Minikube Kubernetes 1.19。

有几个选项可以安装KubeLinter。

你可以从Git仓库手动安装:

代码语言:javascript复制
$ git clone git@github.com:stackrox/kube-linter.git
$ cd kube-linter && make build
$ .gobin/kube-linter version

如果你使用的是Homebrew,你可以使用brew命令来安装:

代码语言:javascript复制
$ brew install kube-linter

你也可以用Go安装它(就像我说的那样):

代码语言:javascript复制
$ GO111MODULE=on go get golang.stackrox.io/kube-linter/cmd/kube-linter
go: finding golang.stackrox.io/kube-linter latest
go: downloading golang.stackrox.io/kube-linter v0.0.0-20201204022312-475075c74675
go: extracting golang.stackrox.io/kube-linter v0.0.0-20201204022312-475075c74675
[...]

安装完成后,你必须在~/.bashrc中创建一个别名:

代码语言:javascript复制
$ echo "alias kube-linter=$HOME/go/bin/kube-linter" >> ~/.bashrc
$ source ~/.bashrc

Helm与KubeLinter

现在工具安装好了,在一个Helm chart上尝试一下。首先,以一个干净的构建和一些小的配置更改启动Minikube:

代码语言:javascript复制
$ minikube config set kubernetes-version v1.19.0
$ minikube config set memory 8000
❗  These changes will take effect upon a minikube delete and then a minikube start
$ minikube config set cpus 12
❗  These changes will take effect upon a minikube delete and then a minikube start
$ minikube delete



	

0 人点赞