A developer types kubectl get secret and waits. Nothing but an empty list. Somewhere in AWS, the credentials are locked away, wrapped in layers of IAM policies and encryption. The dev sighs and opens yet another tab. If that feels familiar, you’re probably overdue for a proper AWS Secrets Manager Microk8s setup.
AWS Secrets Manager keeps sensitive data behind strong encryption and automatic rotation. Microk8s, the lightweight Kubernetes distribution, runs almost anywhere from a laptop to a small production cluster. Alone, both are fine. Together, they can finally kill the messy dance of passing environment variables and decoding base64 strings.
When these two tools meet, the goal is simple: let pods securely fetch the secrets they need without hardcoding them or breaking isolation. The integration starts with identity. Each Microk8s service account should map to a role that can read specific secrets in AWS Secrets Manager. AWS IAM, OIDC, or a trusted external identity provider like Okta can handle this mapping cleanly. Once the trust boundary is clear, pods authenticate using short-lived tokens, not static keys.
You can think of it as a secure handshake. The cluster confirms its identity. Secrets Manager verifies it, then releases the needed secrets just in time for workloads to start. This avoids embedding credentials in YAML files or persistent volumes. It also makes secret rotation automatic because the data is fetched on demand, not stored locally.
Quick answer:
To connect AWS Secrets Manager with Microk8s, create an AWS IAM role linked to your Microk8s OIDC identity, then use a Kubernetes secret store CSI driver or similar interface to pull secrets dynamically into pods. You get policy-enforced, ephemeral secrets without manual exchanges.