默认情况下,存储在etcd中的所有数据均未加密,对于生产部署,存储在etcd中的某些数据(例如机密信息)需要进行加密。有没有办法以加密方式存储机密信息?默认情况下是etcd。
答案 0 :(得分:2)
要进行加密,您需要使用以下参数指示apiserver
服务:
--experimental-encryption-provider-config=/var/lib/kubernetes/encryption-config.yaml
yaml文件包含以下内容:
kind: EncryptionConfig
apiVersion: v1
resources:
- resources:
- secrets
providers:
- aescbc:
keys:
- name: key1
secret: ${ENCRYPTION_KEY}
- identity: {}
此处提供程序是aescbc(最强的加密),并且变量在以下日期之前生成:
ENCRYPTION_KEY=$(head -c 32 /dev/urandom | base64)
看看这些文件: