feat: support external cluster api aggregation #14
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
By default, the aggregated apiserver is configured to use in-cluster authentication for validating end-user authentication and authorization. This works great when the aggregated apiserver is exposed through the same kubernetes cluster the system is deployed in.
Now that we're working on integrating the system with Milo, we need to support a model where the apiserver is being aggregated by an external cluster instead of the cluster the system is deployed in.
Details
This PR introduces a few command like arguments to the deployment that can be used to influence the way the aggregated apiserver authenticates with the core control plane.
Users can now set the
KUBECONFIG,AUTHORIZATION_KUBECONFIG, andAUTHENTICATION_KUBECONFIGenvironment variables to configure how the aggregated apiserver should communicate with the core control plane.Future Work
Relates to https://github.com/datum-cloud/engineering/issues/90