k8gb-io/k8gb

HA of k8gb service - questions

dberardo-com opened this issue · 6 comments

  1. I have read the concept page on the k8gb website and it seems that k8gb is suited for healthchecking single services in running cluster. But:

    1. what would happen if the complete cluster goes down ? is the DNS server notified by the other instance of k8sbg that all the traffic needs to be routed to the remaining cluster?
    2. can this solution be applied in scenarios where there is only a single k8s cluster in HA setup, but where some of the nodes is distributed geographically? i mean for example: 2 nodes are on VPS hosted in one data-center, 2 nodes in another data-center and a fifth node in yet another data-center. thus if one data-center goes down the quorum is preserved, but the primary DNS needs to be updated, because clients might not be able to reach the data center as entrypoint anymore.
  2. and more generally:

    1. does k8gb work by updating the DNS records on the primary DNS? (basically supporting this kind of architecture: https://github.com/polaris-gslb/polaris-gslb)
    2. does k8gb support regular RFC 2136 dns like BIND9 ?
    3. does k8gb support multiple IPs as DNSs ? meaning, if the primary DNS is currently down, then try updating the record on the second, third, etc... ?

UPDATE

2.1 yes it does, found this hint on the helm chart, perhaps all external-DNS compliant providers are available? https://github.com/k8gb-io/k8gb/blob/master/chart/k8gb/values.yaml

Does this project replace ExternalDNS? I tried to deploy it since I already have externalDNS deployed but fails since I already got the CRD installed. Is there a way externalDNS deployment to be disabled if it already has it installed?

@jhuynh08 #1036 we answered it here :)

Thanks for that @ytsarev. Since it doesn't work well if an existing deployment of externalDNS is it possible to add custom values for externalDNS on the k8gs chart?

We are templating it here https://github.com/k8gb-io/k8gb/blob/master/chart/k8gb/templates/external-dns/external-dns.yaml propagating values from here https://github.com/k8gb-io/k8gb/blob/master/chart/k8gb/values.yaml#L48-L58 . I see no conceptual blockers to extending it with the required custom values. Could you share the specific values you need to customize?

Ah understood, if we can add "extraArgs" as shown here https://github.com/kubernetes-sigs/external-dns/blob/master/charts/external-dns/values.yaml it would be awesome!

@jhuynh08 could you please create a dedicated Issue for that? thanks!