Skip to content
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

Add geo load-balancing tests #516

Merged
merged 2 commits into from
Sep 11, 2024
Merged

Conversation

averevki
Copy link
Contributor

Changes

  • Change the list of additional clusters to only 2 (not required in the near feature)
  • Reformat multicluster contest to support only 2 clusters

Tests

  • Add geo load balancing test
  • Add unsupported geocode test

Closes #496, closes #515

@averevki averevki added Test case New test case DNS Issues for DNSOperator labels Aug 20, 2024
@averevki averevki self-assigned this Aug 20, 2024
@trepel
Copy link
Contributor

trepel commented Aug 29, 2024

@averevki Could you please resolve the conflicts? It would make reviewing easier and you need to that anyway

@averevki averevki force-pushed the dns-geo-tests branch 2 times, most recently from 4b03286 to a36136f Compare August 29, 2024 15:40
@trepel
Copy link
Contributor

trepel commented Aug 30, 2024

I don't understand the reasoning behind doing this refactoring to Change the list of additional clusters to only 2. Why was it required?

@trepel
Copy link
Contributor

trepel commented Aug 30, 2024

I am seeing The DNS operation timed out. error while running resolver.resolve(hostname.hostname). Did you come across that?

@averevki
Copy link
Contributor Author

averevki commented Sep 2, 2024

I don't understand the reasoning behind doing this refactoring to Change the list of additional clusters to only 2. Why was it required?

We don't need this functionality for now. Right now, it's committing the same object on each cluster, and I need more flexibility in CR configuration on each cluster

@averevki
Copy link
Contributor Author

averevki commented Sep 2, 2024

I am seeing The DNS operation timed out. error while running resolver.resolve(hostname.hostname). Did you come across that?

You may be using wrong DNS servers. Or you are running under the internal network, which blocks non-internal dns

trepel
trepel previously approved these changes Sep 3, 2024
Copy link
Contributor

@trepel trepel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried each test modified in this PR, all good. I tried to modify the geo label to ES and I tried to remove it completely, the geo loadbalancing test failed as expected then. Code looks good to me, my understanding of it is that instead of crafting a request from certain GEO (DE or AU) or looking at DNS records in AWS the test specifically asks DE and AU DNS nameserver to resolve the same hostname and validates that external IP of right Gateway is returned. Nice!

@trepel
Copy link
Contributor

trepel commented Sep 3, 2024

Only thing that confuses me a little is that if I tried to resolve the hostname in https://dnschecker.org/ it took a few minutes till at least one AU server started resolving to "AU" Gateway external IP.

jsmolar
jsmolar previously approved these changes Sep 11, 2024
@averevki averevki merged commit b4f9624 into Kuadrant:main Sep 11, 2024
3 checks passed
@averevki averevki deleted the dns-geo-tests branch November 11, 2024 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DNS Issues for DNSOperator Test case New test case
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Test for unsupported GEO Code in DNSPolicy Add test for GEO load balancing to multicluster tests
3 participants