feat: add ambient mode support to kubeflow controllers#628
feat: add ambient mode support to kubeflow controllers#628madmecodes wants to merge 5 commits intokubeflow:notebooks-v1from
Conversation
Signed-off-by: madmecodes <ayushguptadev1@gmail.com>
Signed-off-by: madmecodes <ayushguptadev1@gmail.com>
Signed-off-by: madmecodes <ayushguptadev1@gmail.com>
Signed-off-by: madmecodes <ayushguptadev1@gmail.com>
Signed-off-by: madmecodes <ayushguptadev1@gmail.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
@kimwnasptd @orfeas-k for review. |
|
This pull request has been automatically marked as stale because it has not had recent activity. Members may comment |
|
How is authentication handled here? Suppose the waypoint proxy is in another namespace ("istio-system" for example). In that case, the profile controller should likely also be adjusted to be able to add this namespace to the "ns-owner-access-istio" AuthorizationPolicy's "source.namespace" list? I guess the notebook controller would also need to add an AuthorizationPolicy per service? |
|
I'm trying to run the Notebook Controller locally from this PR, but am getting the following error in the logs of the controller: I've ensured that the following env vars are set:
@madmecodes any ideas? |
|
A first approach that gets this error away is to add the HTTPRoute to the scheme directly, but am not sure why this is the case with HTTPRoute and not VirtualService. // main.go
func init() {
utilruntime.Must(clientgoscheme.AddToScheme(scheme))
utilruntime.Must(nbv1.AddToScheme(scheme))
utilruntime.Must(nbv1alpha1.AddToScheme(scheme))
utilruntime.Must(nbv1beta1.AddToScheme(scheme))
utilruntime.Must(gwapiv1beta1.AddToScheme(scheme)) // <-- ADDED
//+kubebuilder:scaffold:scheme
}@madmecodes do you also encounter this error? |
|
This pull request has been automatically marked as stale because it has not had recent activity. Members may comment |
|
This pull request has been automatically closed because it has not had recent activity. |
|
/lifecycle frozen |
|
@christian-heusel: Reopened this PR. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@christian-heusel: The DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@christian-heusel that is continued in #865 |
|
Yeah sorry, I confused the two PRs, thanks for cleaning up @juliusvonkohout 🤗 |
Motivation
This PR makes the Kubeflow controllers (notebook-controller, tensorboard-controller, and pvcviewer-controller)
compatible with Kubernetes Gateway API, which is required for Istio ambient mode support.
Why this change is needed
Istio ambient mode is the service mesh architecture that provides simplified operations and
improved performance. However, it requires different routing resources compared to traditional Istio sidecar
mode:
What this PR accomplishes
VirtualService support
creation
Configuration
This change enables Kubeflow to work seamlessly in both traditional sidecar environments and modern ambient mesh
deployments.
Reference: kubeflow/kubeflow#7736