Skip to content

Latest commit

 

History

History
48 lines (38 loc) · 1.67 KB

06-data-encryption-keys.md

File metadata and controls

48 lines (38 loc) · 1.67 KB

Генерируем Data Encryption конфиг и ключ

Kubernetes хранит самые разные данные, в том числе состояние кластера, конфигурации приложений и секреты. Kubernetes поддерживает возможность зашифровать такие данные.

В этой лабораторной вы сгенерируете конфиг подходящий для шифрования Kubernetes Secrets.

Ключ шифрования

Сгенерируйте ключ шифрования.

ENCRYPTION_KEY=$(head -c 32 /dev/urandom | base64)

Файл конфигурации шифрования

Создайте encryption-config.yaml.

cat > encryption-config.yaml <<EOF
kind: EncryptionConfig
apiVersion: v1
resources:
  - resources:
      - secrets
    providers:
      - aescbc:
          keys:
            - name: key1
              secret: ${ENCRYPTION_KEY}
      - identity: {}
EOF

Скопируйте encryption-config.yaml на каждый контроллер:

for instance in controller-0 controller-1 controller-2; do
  EXTERNAL_IP=$(yc compute instance get ${instance} --format json | jq '.network_interfaces[0].primary_v4_address.one_to_one_nat.address' -r)
  for filename in encryption-config.yaml; do
    scp $filename yc-user@$EXTERNAL_IP:~/
  done
done

Дальше: Развертывание кластера etcd