HashiCorp Vault adalah solusi pengelolaan rahasia pihak ketiga yang terintegrasi dengan Kubernetes dan GKE di AWS.
Anda dapat men-deploy Vault di GKE di AWS menggunakan:
- Diagram Helm resmi HashiCorp
- Vault di GKE, yang diinstal dengan Terraform.
Anda dapat mengakses secret Vault di dalam pod menggunakan injektor Agent Sidecar. Injector adalah Pengontrol Webhook Mutasi Kubernetes. Pengontrol mencegat peristiwa Pod dan memperbarui konfigurasi Pod.
Injector Agen Vault menggunakan Akun Layanan Kubernetes (KSA) Pod dengan metode Autentikasi Kubernetes Vault. Akun KSA harus terikat ke peran Vault dengan kebijakan yang memberikan akses ke secret.
Setelah dikonfigurasi, Anda dapat meminta secret dengan memberikan anotasi pada Pod.
Cuplikan berikut menyertakan anotasi yang akan Anda tambahkan ke Pod.
Jika peran myapp
memiliki akses ke Secret secret/banana
, Vault akan memasangnya di /vault/secrets/apple
.
spec:
template:
metadata:
annotations:
vault.hashicorp.com/agent-inject: "true"
vault.hashicorp.com/agent-inject-secret-apple: "secrets/banana"
vault.hashicorp.com/role: "myapp"
Anda dapat menerapkan konfigurasi ini:
- Ke Pod dengan
kubectl edit pod/pod-name
. - Ke Deployment dengan
kubectl edit deployment/deployment-name
.
Langkah berikutnya
- Baca dokumentasi Vault Injector.
- Tinjau repositori GitHub vault-k8s.