Replies: 10 comments 12 replies
-
|
Hello! Your CustomResourceDefinition Gslb can only create Ingress services that are proxy nodes, and in most cases accept protocols HTTP, HTTPS. Let me know if this is possible now or in the future. |
Beta Was this translation helpful? Give feedback.
-
|
Hey @AlekseyGorodetsky , Thanks a lot for you interest in k8gb and the great question. We have relevant Issues in the backlog for a while and #954 but it still needs to be implemented. I would be keen to learn about your use case more so we can possibly drive the implementation with the real user context. Thanks, |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the quick response! Your choice #147 is fine! apiVersion: k8gb.absa.oss/v1beta1 It's simple and logical! I put a star on your chart on the site - https://artifacthub.io/packages/helm/k8gb/k8gb |
Beta Was this translation helpful? Give feedback.
-
|
In our clusters we typically use Traefik2 for our ingress controllers and consequently create IngressRoute resources. Though for some cases we still define Ingress resources. Can k8sgb be modified to also support Traefik IngressRoute resources? |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the quick response. Would K8gb work for a usecase where we had multiple ingress controllers on a single cluster? In our scenario, we have multiple ingress controllers per cluster, each servicing a subset of all the applications. Thanks in advance.
…________________________________
From: Yury Tsarev ***@***.***>
Sent: Thursday, June 29, 2023 10:56:59 AM
To: k8gb-io/k8gb
Cc: Patel, Kavita K.; Mention
Subject: EXTERNAL: Re: [k8gb-io/k8gb] Welcome to k8gb Discussions! (Discussion #364)
Hi @kkpatel<https://github.com/kkpatel> , to use some additional/special CRD we will need to adjust k8gb logic, theoretically possible in future.
During yesterday community meeting @kuritka<https://github.com/kuritka> presented the concept of k8gb-lite with ability to create addition CRD support. You can find the presentation here https://www.youtube.com/watch?v=KiWeMdlaIdo
—
Reply to this email directly, view it on GitHub<#364 (reply in thread)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ABEYOYBQQVTUZXLDF6R46NTXNWJTXANCNFSM4ZEEKCUA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
________________________________
This message is intended only for the use of the individual or entity to which it is addressed and may contain ZETA Associates confidential or proprietary information. If you are not the intended recipient, any use, dissemination, or distribution of this communication is prohibited. If you have received this communication in error, please notify the sender and delete all copies.
|
Beta Was this translation helpful? Give feedback.
-
|
Hi Yury,
Thanks again for the response. I have another question, is there a way to disable the K8gb controller from creating the DNSEndpoint objects based on an annotation in the Gslb CRD object? The reason being, we use traefik2 and though we generate Ingress objects, most of our applications create IngressRoute objects. We found a Kubernetes github project (https://github.com/borchero/switchboard) that can create DNSEndpoint objects from IngressRoute objects which looks appealing to us. Integrating this with the K8gb controller functionality would be great.
Thanks again,
Kavita Patel
…________________________________
From: Yury Tsarev ***@***.***>
Sent: Friday, June 30, 2023 10:31:17 AM
To: k8gb-io/k8gb
Cc: Patel, Kavita K.; Mention
Subject: EXTERNAL: Re: [k8gb-io/k8gb] Welcome to k8gb Discussions! (Discussion #364)
k8gb works with the Ingress object and is generally ingress controller agnostic, so I do not see architectural blockers for it to handle multpiple ingress controllers scenario. It requires some testing, though.
—
Reply to this email directly, view it on GitHub<#364 (reply in thread)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ABEYOYGLXW5YTLSP7BNBG2DXN3PLLANCNFSM4ZEEKCUA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
________________________________
This message is intended only for the use of the individual or entity to which it is addressed and may contain ZETA Associates confidential or proprietary information. If you are not the intended recipient, any use, dissemination, or distribution of this communication is prohibited. If you have received this communication in error, please notify the sender and delete all copies.
|
Beta Was this translation helpful? Give feedback.
-
|
Hi, Thank you |
Beta Was this translation helpful? Give feedback.
-
|
Hi,
In the past we configured K8gb to communicate with our bind server to update/delete/add CNAME records. To give you a little perspective, we have multiple ingress controller instances on a give Kubernetes cluster. An application on a given cluster can sit behind any of one those ingress controllers in that cluster. At the time we had configured K8gb externalDNS deployment to write CNAME records into the bind server. This all worked very well and we were able to successfully use the K8gb yo loadbalance and failover for our services running on multiple GSLB clusters.
However, since then, we have switched to using InfoBlox as our edgeDNS. Even though externalDNS says it supports InfoBlox, we noticed that the template for external-dns template in the K8gb helm chart (v.0.14.0) is configured to deploy an instance of externalDNS only when using one of a handful of dns providers, InfoBlox not listed in the if condition as being one of them.
{{- if or .Values.ns1.enabled .Values.route53.enabled .Values.rfc2136.enabled .Values.azuredns.enabled .Values.cloudflare.enabled }}
So I believe the K8gb controller is managing the API interaction itself to Infoblox. In this scenario, what we see is the K8gb controller writing a NS record for the DNS to delegate to for our configured zone (K8gb CoreDNS), and then writing/updating a single A record in InfoBlox. The A record in InfoBlox specifies the IP address for the DNS (K8gb CoreDNS) that it is delegating to for the zone we've defined.
This all would be fine, however, we notice that each time we configure an application in the cluster to be globally loadbalanced, the K8gb controller tries to update that same A record to then reflect the ingress controller IP associated with the ingress-class defined in the corresponding Ingress resource for that gslb application. This is obviously not desirable.
There are a couple of options which we have been pondering but not sure exactly how to configure K8gb to do this:
1. K8gb controller to add CNAME entries in InfoBlox for every app configured to be globally load balanced and not update and use the same A record for each gslb app. I would assume that externalDNS, if it were deployed, would do exactly this.
2. Not have K8gb update Infoblox at all and we would manually add a NS record and an A record in Infblox for the K8gb CoreDNS to delegate to. The K8gb CoreDNS would then return the correct ingress controller IP associated with the health service for the app. Keep in mind that we have several clusters that we would globaly load balance, thus we would have K8gb instance running on each one of those clustrers.
Assuming our understanding is all correct, the above are a few thoughts we had but we would really appreciate your input and guidance on how best we can approach this problem. Please let me know if we can provide you any additional information to clarify anything. Also, I should add that our clusters are running on an isolated network (not connected to the public internet).
Thanks,
Kavita Patel
…________________________________
From: Yury Tsarev ***@***.***>
Sent: Friday, June 30, 2023 10:31 AM
To: k8gb-io/k8gb
Cc: Patel, Kavita K.; Mention
Subject: EXTERNAL: Re: [k8gb-io/k8gb] Welcome to k8gb Discussions! (Discussion #364)
k8gb works with the Ingress object and is generally ingress controller agnostic, so I do not see architectural blockers for it to handle multpiple ingress controllers scenario. It requires some testing, though.
—
Reply to this email directly, view it on GitHub<#364 (reply in thread)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ABEYOYGLXW5YTLSP7BNBG2DXN3PLLANCNFSM4ZEEKCUA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
________________________________
This message is intended only for the use of the intended recipient(s) If you are not an intended recipient, you are hereby notified that any use, dissemination, disclosure or copying of this communication is strictly prohibited. If you have received this communication in error please destroy all copies of this message and its attachments and notify the sender immediately.
|
Beta Was this translation helpful? Give feedback.
-
|
I have a question related to documetation. Can you point me to the correct documentaiton to make the sample work ? |
Beta Was this translation helpful? Give feedback.
-
|
Hi, Currently using k8fb v0.14 Any input or help would be appreciated. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
👋 Welcome!
We’re using Discussions as a place to connect with other members of k8gb community. We hope that you:
Let's build some great open-source GSLB stuff together 💪
Beta Was this translation helpful? Give feedback.
All reactions