You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, to deploy DataPlanes that will sync with Konnect Control Plane, one has to define a very verbose PodTemplateSpec patch that will define all the required environment variables Kong Gateway needs for that purpose:
It's not the best user experience as there's a lot of repetition and it's easy to make a mistake.
We should make DataPlane natively integrated with Konnect by extending the CRD with a Konnect-specific spec section.
Proposed Solution
Extend DataPlaneOptions with Konnect section as below:
// DataPlaneOptions defines the information specifically needed to// deploy the DataPlane.typeDataPlaneOptionsstruct {
// ...// +optionalKonnect*KonnectOptions`json:"konnect,omitempty"`
}
// DataPlaneKonnectKind defines the kind/role of the DataPlane deployment.typeDataPlaneKonnectKindstringconst (
ManagedByCloudControlPlaneDataPlaneKonnectKindDataPlaneKonnectKind="managed-by-cloud-control-plane"// Note: just for future compatibility if we decide to implement Gateway (KIC + DPs) with Konnect integration as well.ManagedByIngressControllerPlaneDataPlaneKonnectKind="managed-by-ingress-controller"
)
typeKonnectOptionsstruct {
// Kind defines the kind of the DataPlane deployment, which determines how it will be configured.KindDataPlaneKonnectKind`json:"kind"`// ControlPlaneID is the identifier of the Konnect Control Plane.ControlPlaneIDstring`json:"controlPlaneID"`// ControlPlaneRegion is the region of the Konnect Control Plane.// If not set, 'us' is used as the default region.// +optionalControlPlaneRegion*string`json:"controlPlaneRegion,omitempty"`// ClusterCertificate is a name of the Secret containing the Konnect Control Plane's cluster certificate.ClusterCertificatestring`json:"clusterCertificate"`
}
This will reduce the repetition and allow rigid validation of the input based on the defined schema.
Acceptance Criteria
As a Konnect-hosted Control Plane user who wants to deploy DataPlanes in Kubernetes using KGO, I'm provided with an API that will allow me to configure those with minimal information provided (CP ID, cluster certificate secret name), so I do not have to know what exact environment variables need to be adjusted in their Deployments
The text was updated successfully, but these errors were encountered:
@mheap After a discussion with @lahabana I created this issue to have it properly tracked in GH. I added an ad-hoc proposed solution, but I think we will need to iterate over it with a proper review.
BTW Should we create KGO 1.4 or "API summit" milestone and assign the issue to it?
Problem Statement
Currently, to deploy
DataPlane
s that will sync with Konnect Control Plane, one has to define a very verbose PodTemplateSpec patch that will define all the required environment variables Kong Gateway needs for that purpose:It's not the best user experience as there's a lot of repetition and it's easy to make a mistake.
We should make DataPlane natively integrated with Konnect by extending the CRD with a Konnect-specific spec section.
Proposed Solution
Extend
DataPlaneOptions
withKonnect
section as below:This will reduce the repetition and allow rigid validation of the input based on the defined schema.
Acceptance Criteria
The text was updated successfully, but these errors were encountered: