-
Notifications
You must be signed in to change notification settings - Fork 127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support ingress class_name customization #113
Conversation
21ca8c7
to
fd96a3c
Compare
9123c02
to
86f5f44
Compare
86f5f44
to
2023f1a
Compare
Test procedures.
Now that everything is setup - you can test the operator and server helm charts. === Test via operator helm chart ===
helm install -n kiali-operator --create-namespace kiali-operator _output/charts/kiali-operator-*-SNAPSHOT.tgz \
--set allowAdHocKialiImage=true \
--set image.repo=localhost:5000/kiali/kiali-operator \
--set image.tag=dev \
--set cr.spec.deployment.image_name=localhost:5000/kiali/kiali \
--set cr.spec.deployment.image_version=dev \
--set cr.create=true \
--set cr.spec.deployment.ingress.enabled=true
First make sure the ingress was created ( IP="$(kubectl get ingress kiali -n kiali-operator -o jsonpath='{.status.loadBalancer.ingress[0].ip}')"
xdg-open http://${IP}/kiali Your browser should open and show you the Kiali login screen asking for a token. If you see the token login screen, the test passed.
=== Test via server helm chart ===
First make sure the ingress was created ( IP="$(kubectl get ingress kiali -n istio-system -o jsonpath='{.status.loadBalancer.ingress[0].ip}')"
xdg-open http://${IP}/kiali Your browser should open and show you the Kiali login screen asking for a token. If you see the token login screen, the test passed.
|
|
||
== Chart Source | ||
|
||
Kiali Operator helm chart source is found in the link:./kiali-operator[kiali-operator folder]. | ||
Kiali Server helm chart source is found in the link:./kiali-server[kiali-server folder]. | ||
|
||
== Developer Notes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are helpful, thanks!
part of: kiali/kiali#4342
operator PR: kiali/kiali-operator#440
docs PR: kiali/kiali.io#466
This refactors the ingress config so it is all under the dict "ingress" found under deployment:
We now will turn off ingress by default when on Kubernetes (we still enable it by default on OpenShift because the default auth strategy (
openshift
) on OpenShift requires the route - so we should enable the ingress (aka Route) when on OpenShift by default).If you enable the ingress (set
deployment.ingress.enabled=true
) when on non-OpenShift Kubernetes, then the default class name will be set toingressClassName: nginx
in the Ingress resource. If you do NOT want any class name defined in the Ingress resource (for example, you are on an older k8s cluster that does not support spec.ingressClassName) then setdeployment.ingress.class_name
to an empty string (e.g.--set deployment.ingress.class_name=
).We are going to have our defaults specific to NGinx (hence why class_name defaults to "nginx"). Our annotations are already specific to NGinx so it makes sense to default the class name to
nginx
. For other ingress types, the user is free to change class_name or go further and set override_yaml as before (specifying either metadata.annotation or spec or both).Along with this PR and kiali/kiali-operator#440 we are going to update the Kiali.io documentation to better indicate to users that the default Ingress that is created is geared towards NGinx ingress implementation when enabled.