检查YAML文件安全配置:kubesec
kubesec:
是一个针对K8s资源清单文件进行安全配置评估的工具,根据安全配置最佳实践来验证并给出建议。
官网:https://kubesec.io
项目地址:https://github.com/controlplaneio/kubesec
[root@master ~]# mv kubesec /usr/bin/
下面每个id给你标识了安全建议 ,下面给出...
2021-12-21 /
661 次浏览 /
容器虚拟化
基于 kubernetes 的动态 jenkins slave 基于 Jenkins 的 CI/CD(一)前面的课程中我们学习了持久化数据存储在Kubernetes中的使用方法,其实接下来按照我们的课程进度来说应该是讲解服务发现这一部分的内容的,但是最近有很多同学要求我先讲解下 CI/CD 这块的内容,所以我们先把这块内容提前来讲解了。提到基于Kubernete的CI/CD,可以使用的工具有很多,比如Jenkins、Gitlab CI已经新兴的drone之类的,我们这里会使用...
2021-12-21 /
580 次浏览 /
容器虚拟化
模拟证书过期
由kubeadm部署的集群,所生成的证书证书有效期为一年,过期之后集群就不能再次使用了,我们可以对证书进行续期,这样集群就可以继续使用。
可以通过如下命令查看具体过期时间:
kubeadm alpha certs check-expiration
这里显示证书在2021年7月5日过期,然后把所有节点的系统时间调整到 2022年10月1日:...
2021-12-21 /
749 次浏览 /
容器虚拟化
Kubelet 证书自动续签
K8s证书一般分为两套:K8s组件(apiserver)和Etcd
假如按角色来分,证书分为管理节点和工作节点。
• 管理节点:如果是kubeadm部署则自动生成,如果是二进制部署一般由cfssl或者openssl生成。
• 工作节点:工作节点主要是指kubelet连接apiserver所需的客户端证书,这个证书由controller-manager组件自动颁发,默认是一年,如果到期,kubelet将无法使用过期的证书连接apiser...
2021-12-21 /
562 次浏览 /
容器虚拟化
我们知道监控是保证系统运行必不可少的功能,特别是对于 Kubernetes 这种比较庞大的系统来说,监控报警更是不可或缺,我们需要时刻了解系统的各种运行指标,也需要时刻了解我们的 Pod 的各种指标,更需要在出现问题的时候有报警信息通知到我们。
在早期的版本中 Kubernetes 提供了 heapster、influxDB、grafana 的组合来监控系统,在现在的版本中已经移除掉了 heapster,现在更加流行的监控工具是 Prometheus,Prometheus...
2021-12-21 /
537 次浏览 /
容器虚拟化
架构设计
PV 和 PVC 的处理流程
我们接下来看一下 K8s 中的 PV 和 PVC 体系的完整处理流程。我首先看一下这张图的右下部分里面提到的 csi。
csi 是什么?csi 的全称是 container storage interface,它是K8s社区后面对存储插件实现(out of tree)的官方推荐方式。csi 的实现大体可以分为两部分:
第一部分是由k8s社区驱动实现的通用的部分,像我们这张图中的 csi-provisioner和 cs...
2021-12-21 /
724 次浏览 /
容器虚拟化
Security is a concern that never fades away, and it doesn’t matter how recent the technology has rolled out. So we should always harden the Kubernetes cluster by using kube bench, kube-hunter and the CIS benchmarks. The more secure our clus...
2021-12-21 /
876 次浏览 /
容器虚拟化
ResourceQuota
As you might already know, you can specify pods’ CPU and Memory requests and limits, and as Kubernetes already knows the pod placements, it can properly place your pods into such places that your requests are fulfilled. Whe...
2021-12-21 /
583 次浏览 /
容器虚拟化
Secret是一个用于存储敏感数据的资源,所有的数据要经过base64编码,数据实际会存储在K8s中Etcd, 然后通过创建Pod时引用该数据。
应用场景:凭据
Pod使用configmap数据有两种方式:
• 变量注入
• 数据卷挂载
kubectl create secret 支持三种数据类型:
• docker-registry:存储镜像仓库认证信息
• gen...
2021-12-21 /
592 次浏览 /
容器虚拟化
在 Kubernetes 中安全地运行工作负载是很困难的,有很多配置都可能会影响到整个 Kubernetes API 的安全性,这需要我们有大量的知识积累来正确的实施。Kubernetes 在安全方面提供了一个强大的工具 securityContext,每个 Pod 和容器清单都可以使用这个属性。在本文中我们将了解各种 securityContext 的配置,探讨它们的含义,以及我们应该如何使用它们。
securityContext&nb...
2021-12-21 /
740 次浏览 /
容器虚拟化