Figure 1. High-level Kong Mesh Zone Architecture
This is a bit of an oversimplification. Zones are not just proxies between the global control plane and data planes. The goal of Kong Mesh is automatic connectivity regardless of physical infrastructure barriers.
With zones in place, engineers can easily construct service meshes that can span across the zones, essentially building a hybrid service mesh. The outcome of this is interconnectivity of microservices across those zones, interoperating as if they were in one network, none the wiser.
How does the Kong Konnect Mesh Zone Add-on work?
The Kong Konnect Add-ons play a crucial role in seamlessly integrating Konnect deployments with AWS Secrets Manager via External Secrets Operator. Our add-ons are purpose-built to conform to the AWS Well-Architected Framework security principles around least privilege.
From a deployment perspective, three key attributes are required to get a zone up and running:
- Kong Konnect region — Kong Konnect has multi-geo support in US, EU, and AU
- Global CP ID — because we can have multiple global CPs within Mesh Manager
- Zone JWT Token — this proves the identity of the zone to the global CP
AWS Secrets Manager
In the context of our add-ons, there's a necessity to securely store and closely manage access to elements like zone JWT tokens or the data plane certificates required by the Kong Gateway Add-on.
AWS Secrets Manager extends beyond mere access control functionalities, making it indispensable for any production-ready workload, with automatic secret rotation, encryption in transit and at rest, programmatic access via APIs, and auditing features.
However, AWS Secrets Manager itself doesn't directly interface with Kubernetes to deposit secrets. That’s the role of the External Secrets Operator.
External Secrets Operator
The External Secrets Operator (ESO) reads and automatically injects AWS Secrets into Kubernetes clusters while ensuring fine-grain access of AWS secrets to specific service accounts.
Again, in the context of the Kong Konnect Add-ons, this integration is purpose-built for retrieving secrets for Kong — whether it be the zone JWT token or data plane certificates.
Bringing it together
Configuring the External Secrets Operator to interface with AWS Secrets Manager requires significant prerequisite knowledge of AWS IRSA, IAM Policies, as well as the External Secrets Operator configuration itself, and how to apply it to Kong-related assets.
The add-ons streamline this process for you. Specifically in the context of the Mesh Add-on, the primary concern is hosting and retrieving the zone JWT token.
At a high level, the add-on abstracts away the three major activities (Figure 2):
Configuring AWS IRSA and IAM policies with the necessary access to the AWS secrets.
Installing the External Secrets Operator and configuring all needed CRDs to properly deposit the zone token into EKS.
Finally, deploying the Mesh zone into the EKS cluster, with the configuration necessary to integrate with a global CP residing in Mesh Manager.
Under the hood, the Kong Mesh Helm chart is deployed by the AWS EKS Add-on framework with the AWS-specific configuration abstracted away.
All that's required is a small subset of values to understand where your Konnect Mesh Manager global CP is located, and how to locate the AWS secret.