基本概念
KMS,Key Management Service,即密钥管理服务,在K8S集群中,以驱动和插件的形式启用对Secret,Configmap进行加密。以保护敏感数据,
驱动和插件需要使用者按照需求进行定制和实现自己的KMS插件,插件可以是gRPC服务器或者启用一个云服务商提供的KMS插件。
本文中演示使用的KMS 服务是京东云舰中的KMS加密服务。
目前KMS分为V1,V2,本文基于V1进行演示。
架构
内部可以利用kms加密实现自己的加密算法,甚至国密算法。

当用户新建secret资源时,kube-apiserver 会通过gRPC调用kms-plugin,而kms-plugin与加密服务器通信,进行数据加密。
此时如果通过直接获取etcd中的原始数据,内容为密文数据。
当用户获取secret资源内容时,kube-apiserver 会通过gRPC调用kms-plugin,而kms-plugin与加密服务器通信,进行数据解密,将明文展示给用户
操作步骤
需要一套已经运行的Kubernetes集群服务,如果是多台master节点,需要同时配置。
新建目录
/etc/kubernetes/kms/jdcloud
新建 EncryptionConfiguration
该配置是kms基本的加密配置,包括加密资源对象,socket地址等等。
apiVersion: apiserver.config.k8s.io/v1
kind: EncryptionConfigur

本文详细介绍了如何在Kubernetes(K8S)集群中使用京东云舰的KMS服务对Secret和Configmap进行加密,包括KMS插件的定制、配置步骤和产品能力,强调了数据安全的重要性。
最低0.47元/天 解锁文章
2301

被折叠的 条评论
为什么被折叠?



