HashiCorp Vault adalah solusi pengelolaan rahasia pihak ketiga yang terintegrasi dengan Kubernetes dan GKE di AWS.
Anda dapat men-deploy Vault di GKE pada AWS menggunakan:
- Diagram Helm resmi HashiCorp
- Vault di GKE, yang diinstal dengan Terraform.
Anda dapat mengakses secret Vault di dalam pod menggunakan injektor Sidecar Agen. Injeksinya adalah Pengontrol Webhook Mutasi Kubernetes. Pengontrol mencegat peristiwa Pod dan memperbarui konfigurasi Pod.
Vault Agent injeksi menggunakan Akun Layanan Kubernetes (KSA) Pod dengan metode Auth Kubernetes Vault. Akun KSA harus terikat dengan peran Vault dengan kebijakan yang memberikan akses ke secret tersebut.
Setelah dikonfigurasi, Anda dapat meminta secret dengan menganotasi Pod.
Cuplikan berikut menyertakan anotasi yang ingin 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 selanjutnya
- Baca dokumentasi Injektor Vault.
- Tinjau repositori GitHub vault-k8s.