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

Full support for custom service cluster ip range #2264

Closed

Conversation

rodcloutier
Copy link
Contributor

@rodcloutier rodcloutier commented Dec 4, 2017

This PR intends to add full support for custom service cluster ip range.

Fixes #1536
Fixes #1747

Feel free to add some more requirements for testing.

@minikube-bot
Copy link
Collaborator

Can one of the admins verify this patch?

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Dec 4, 2017
@dlorenc
Copy link
Contributor

dlorenc commented Dec 4, 2017

@minikube-bot ok to test

@@ -173,7 +172,7 @@ func GetHostDriverIP(api libmachine.API) (net.IP, error) {
func engineOptions(config MachineConfig) *engine.Options {
o := engine.Options{
Env: config.DockerEnv,
InsecureRegistry: append([]string{pkgutil.DefaultServiceCIDR}, config.InsecureRegistry...),
InsecureRegistry: append([]string{config.ServiceCIDR}, config.InsecureRegistry...),
Copy link
Contributor

Choose a reason for hiding this comment

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

👍 glad this was picked up in the PR :)

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 25, 2018
@jar349
Copy link

jar349 commented Apr 25, 2018

/remove-lifecycle stale

I don't believe that this PR should close due to inactivity when it offers a point of configurability that would - at least to me - be useful. My use case is this: https://stevesloka.com/2017/05/19/access-minikube-services-from-host/

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 25, 2018
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 24, 2018
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Aug 23, 2018
@jar349
Copy link

jar349 commented Aug 24, 2018

/remove-lifecycle rotten

@k8s-ci-robot k8s-ci-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 24, 2018
@jar349
Copy link

jar349 commented Aug 24, 2018

this one even includes a patch! it ain't rotten.

@jar349
Copy link

jar349 commented Aug 24, 2018

@rodcloutier I wonder if it would be possible for you to freshen this up to make it super-simple for admins to approve?

@dsiebel
Copy link

dsiebel commented Sep 5, 2018

I just built the minikube.iso image from this branch hoping it could fix my issues with colliding network ranges (company networks spanning 172.16/12 and 10.0/8) but sadly it didn't. The issue was with routing service IPs (10.96/12) within the cluster, which always went through my host and was terminated by our company firewall instead of going to the services I actually wanted.

I tried starting minikube with the following settings but it just stalls and aborts after 10 minutes or so:

minikube start --logtostderr --v=3 \
  --cpus 4 \
  --memory 4096 \
  --keep-context \
  --docker-opt="max-concurrent-downloads=8" \
  --docker-opt="bip=192.168.16.1/24" \
  --extra-config="apiserver.Authorization.Mode=RBAC" \
  --extra-config="apiserver.ServiceClusterIPRange=192.168.48.0/20" \
  --extra-config="kubelet.PodCIDR=192.168.32.0/20" \
  --extra-config="controller-manager.ClusterCIDR=192.168.32.0/20"

I also tried removing single CIDR parameters but the result didn't change.

In summary: not sure whether this PR actually fixes the issue but it would be really great if it did 😃

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 4, 2018
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jan 3, 2019
@tstromberg
Copy link
Contributor

Do you mind addressing the merge conflicts? I'd like to see about merging this if it's still viable. My apologies for the unnecessarily long delay in reviewing this PR.

@tstromberg
Copy link
Contributor

Any hope for resurrecting this PR from the merge conflicts? I feel like it's doing the right thing and would love to see it in minikube. Thanks for all the hard work you've put into it so far.

@rodcloutier
Copy link
Contributor Author

rodcloutier commented Feb 9, 2019 via email

@rodcloutier rodcloutier force-pushed the serviceClusterIPRange branch from a2d844a to 80b67ac Compare February 18, 2019 23:10
@k8s-ci-robot k8s-ci-robot removed the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Feb 18, 2019
@k8s-ci-robot k8s-ci-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Feb 18, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: rodcloutier
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: luxas

If they are not already assigned, you can assign the PR to them by writing /assign @luxas in a comment when ready.

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@rodcloutier rodcloutier force-pushed the serviceClusterIPRange branch from 80b67ac to 27b9943 Compare February 19, 2019 11:43
@tstromberg tstromberg removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Mar 12, 2019
@@ -294,15 +294,22 @@ func NewKubeletConfig(k8s config.KubernetesConfig, r cruntime.Manager) (string,
return "", errors.Wrap(err, "parses feature gate config for kubelet")
}

clusterDNS, err := util.GetDNSIP(k8s.ServiceCIDR)
Copy link
Contributor

Choose a reason for hiding this comment

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

Can you mention why the DNS changes are necessary in the PR comment?

@@ -43,6 +43,7 @@ type MachineConfig struct {
InsecureRegistry []string
RegistryMirror []string
HostOnlyCIDR string // Only used by the virtualbox driver
ServiceCIDR string // Use for insecure registry
Copy link
Contributor

Choose a reason for hiding this comment

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

I don't understand why the ServiceCIDR is only to be used with the insecure registry. Can you clarify this comment?

@tstromberg
Copy link
Contributor

Thank you for the contribution. Due to recent inactivity and failing tests, I am marking this PR as closed until the issues can be resolved.

I really would like to see this PR come into being, so please re-open once it seems to be working. Before doing so, please run the integration tests locally: https://github.com/kubernetes/minikube/blob/master/docs/contributors/build_guide.md#integration-tests

Thank you again!

@tstromberg tstromberg closed this Mar 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants