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

feat: use clusterip instead of DNS for service status check #288

Merged
merged 1 commit into from
Nov 4, 2023

Conversation

CarlJi
Copy link
Contributor

@CarlJi CarlJi commented Sep 17, 2023

we failed to using k6 in a self-host kubernetes cluster since it's service domain suffix is not svc.cluster.local as default. And after checking the issues #102 #171 #146 , seems this is not an uncommon problem。

I know @yorugac should have a long-term plan to improve it based on this #186 . But considering this problem should be a blockage for users trying to get started with k6, it would be better to have a prompt resolution.

I made some attempts, please help review. And appreciate any comments.

@CLAassistant
Copy link

CLAassistant commented Sep 17, 2023

CLA assistant check
All committers have signed the CLA.

@yorugac
Copy link
Collaborator

yorugac commented Sep 29, 2023

Hi @CarlJi, yes, this is one of the things that are constantly postponed because of other priorities 😞 Do you need an IPv6 support or only custom domain? You don't mention it in your description but it is present in code changes.

@CarlJi
Copy link
Contributor Author

CarlJi commented Oct 5, 2023

Hi @CarlJi, yes, this is one of the things that are constantly postponed because of other priorities 😞 Do you need an IPv6 support or only custom domain? You don't mention it in your description but it is present in code changes.

Actually for custom domain.

However, during my testing of the k6 operator in an IPv6 scenario, I also identified additional changes that need to be addressed, specifically like curl_start, curl_stop logic.

Supporting IPv6 may require a comprehensive design. I personally recommend prioritizing the resolution of the custom domain issue first.

@yorugac
Copy link
Collaborator

yorugac commented Oct 6, 2023

@CarlJi, yes, agreed; that's why I asked 🙂 Let's do the following then: please simplify this PR down to domain changes and I'll merge that and then we'll see how that goes. My main worry here is not to break existing setups.

@CarlJi
Copy link
Contributor Author

CarlJi commented Oct 7, 2023

@yorugac, updated now, please help review.

@yorugac
Copy link
Collaborator

yorugac commented Oct 11, 2023

@CarlJi, thank you! Just letting you know: code-wise it seems fine, but I need to test this change, which would probably be next week. Sorry for the delay; too many things happening at once.

@yorugac yorugac added this to the 0.12 milestone Oct 19, 2023
@yorugac
Copy link
Collaborator

yorugac commented Oct 31, 2023

@CarlJi, sorry for the delay! I'm finally getting around to test this change. Could you please rebase your branch? There were dependency updates in main recently.

@CarlJi
Copy link
Contributor Author

CarlJi commented Oct 31, 2023

@CarlJi, sorry for the delay! I'm finally getting around to test this change. Could you please rebase your branch? There were dependency updates in main recently.

Done.

@yorugac
Copy link
Collaborator

yorugac commented Nov 4, 2023

This change seems to hold up fine with E2E tests 🙌 The minimal way to test this particular case locally is with:

# kind create cluster --config=./kind.custom.domain.yaml
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
kubeadmConfigPatches:
- |
  kind: ClusterConfiguration
  networking:
    dnsDomain: "cluster.foo"

I'll be using something similar ☝️ in automated tests.

@yorugac yorugac merged commit 29d0509 into grafana:main Nov 4, 2023
6 checks passed
@yorugac
Copy link
Collaborator

yorugac commented Nov 4, 2023

Thanks for working on this @CarlJi!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants