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

WIP: Add minikube support for the "generic" VM driver #4734

Closed
wants to merge 11 commits into from

Conversation

afbjorklund
Copy link
Collaborator

This driver connects to an already existing virtual machine,
using the provided IP address and SSH user/key/port parameters.

On this machine, libmachine will provision the docker daemon
and minikube will bootstrap the kubernetes cluster (as usual).

Implements #4733

This driver connects to an already existing virtual machine,
using the provided IP address and SSH user/key/port parameters.

On this machine, libmachine will provision the docker daemon
and minikube will bootstrap the kubernetes cluster (as usual).
@afbjorklund afbjorklund added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 10, 2019
@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Jul 10, 2019
@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Jul 10, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: afbjorklund

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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 10, 2019
@medyagh
Copy link
Member

medyagh commented Jul 10, 2019

could you provide an example with the PR so we have a context ?

@medyagh
Copy link
Member

medyagh commented Jul 10, 2019

I am thinking if we could use this in the VM-free model too, maybe if the generic driver supports exec-ing into a docker container ?

@afbjorklund
Copy link
Collaborator Author

I am thinking if we could use this in the VM-free model too, maybe if the generic driver supports exec-ing into a docker container ?

The generic driver is quite specific about wanting something to ssh into, but you could of course start a sshd in your "node" container ?

https://github.com/docker/machine/blob/master/drivers/generic/generic.go

@afbjorklund
Copy link
Collaborator Author

Typical, seems like the generic install (https://get.docker.com) is more strict about security...

If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker vagrant

Remember that you will have to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group will grant the ability to run
         containers which can be used to obtain root privileges on the
         docker host.
         Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         for more information.

That doesn't really work, since minikube normally assumes that user has group access:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/version: dial unix /var/run/docker.sock: connect: permission denied

@afbjorklund
Copy link
Collaborator Author

Added the user to the group, but doesn't work with vagrant since it only uses one IP (i.e. 127.0.0.1)

The connection to the server 127.0.0.1:8443 was refused - did you specify the right host or port?

It is not supported anyway, and just throws errors.
There is no use to restart or to retry, just give up.

This should never be a problem with "none", though.
That always return running, while generic tests ssh.
@afbjorklund
Copy link
Collaborator Author

I think I will split this PR

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 17, 2019
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 18, 2019
@afbjorklund
Copy link
Collaborator Author

This PR is not going to be merged (it keeps on breaking!), so mostly using it for testing...

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 29, 2019
@k8s-ci-robot
Copy link
Contributor

@afbjorklund: PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants