什么是 Datree?
它是一个开源 CLI 实用工具,通过管理策略来防止 Kubernetes 工作负载和 SaaS 平台的错误配置。它验证您的 Kubernetes YAML 文件。
为什么需要 Datree?
防止 Kubernetes 配置出错。它可以帮助所有者、开发人员管理策略执行,自动检查是否违反规则。使用 Datree 时,您不需要与生产集群建立连接。可以从在线 Datree 仪表板应用策略和规则。
Datree 是如何工作的?
检查 Yaml 文件的语法是否正确写入。
Kubernetes 模式验证检查版本是否有效。
策略检查:它可以是内存限制、CPU 限制或任何自定义策略检查。
它提供了针对 Datree 应用策略运行的 YAML 文件的摘要。
让我们快速简单地实现 Datree
按照官方文档[1]安装 Datree
nginx 的示例 deployment.yaml 文件
apiVersion:apps/v1 kind:Deployment metadata: name:nginx-deployment spec: selector: matchLabels: app:nginx replicas:2 template: metadata: labels: app:nginx spec: containers: -name:nginx image:nginx:1.14.2 ports: -containerPort:80
要使用 Datree 验证此 yaml,请运行以下命令:
$datreetestdeployment.yaml配置错误
所以在上图中,我们可以看到通过的规则总数为 21、失败的规则总数为 9。
我已经通过 Datree Dashboard 配置了 30 条规则的默认策略。可以通过 CLI 获取仪表板的链接,如下图所示:
仪表板链接
在 Datree 仪表板中,我们可以根据需要编辑规则,这些规则将在验证部署 YAML 文件时应用。
用于配置 datree 规则的仪表板
所以,我已经解决了上面配置错误中显示的前四个错误。
更新后的 deployment.yaml
apiVersion:apps/v1 kind:Deployment metadata: name:nginx-deployment spec: selector: matchLabels: app:nginx replicas:2 template: metadata: labels: app:nginx spec: containers: -name:nginx image:nginx:1.14.2 resources: limits: memory:200Mi cpu:1 requests: memory:100Mi cpu:100m ports: -containerPort:80
现在如果我们再次运行命令来检查:
$datreetestdeployment.yaml解决了 4 个配置规则
输出是Total Rules Failed: 5,之前是 9。
我们在 deployment 文件中配置了内存请求、CPU 请求、内存限制和 CPU 限制。
因此,这就是 Datree 如何用于标准化和避免 K8s 中的错误配置。
审核编辑:汤梓红
-
cpu
+关注
关注
68文章
10853浏览量
211563 -
开源
+关注
关注
3文章
3309浏览量
42469 -
CLI
+关注
关注
1文章
79浏览量
8539 -
kubernetes
+关注
关注
0文章
224浏览量
8709
原文标题:这个开源工具防止错误配置乱入k8s生产环境
文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论