startCmd.Flags().Bool(preload,true,"If set, download tarball of preloaded images if available to improve start time. Defaults to true.")
startCmd.Flags().Bool(preload,true,"If set, download tarball of preloaded images if available to improve start time. Defaults to true.")
startCmd.Flags().Bool(deleteOnFailure,false,"If set, delete the current cluster if start fails and try again. Defaults to false.")
startCmd.Flags().Bool(deleteOnFailure,false,"If set, delete the current cluster if start fails and try again. Defaults to false.")
startCmd.Flags().Bool(forceSystemd,false,"If set, force the container runtime to use sytemd as cgroup manager. Defaults to false.")
startCmd.Flags().Bool(forceSystemd,false,"If set, force the container runtime to use sytemd as cgroup manager. Defaults to false.")
startCmd.Flags().StringP(network,"","","network to run minikube with. Only available with the docker/podman drivers. If left empty, minikube will create a new network.")
startCmd.Flags().StringP(network,"","","network to run minikube with. Now it is used by docker/podman and KVM drivers. If left empty, minikube will create a new network.")
startCmd.Flags().StringVarP(&outputFormat,"output","o","text","Format to print stdout in. Options include: [text,json]")
startCmd.Flags().StringVarP(&outputFormat,"output","o","text","Format to print stdout in. Options include: [text,json]")
Prefixint// network prefix length (number of leading ones in network mask)
Gatewaystring// first IP address (assumed, not checked !)
CIDRstring// CIDR format ('a.b.c.d/n')
Gatewaystring// taken from network interface address or assumed as first network IP address from given addr
ClientMinstring// second IP address
ClientMinstring// second IP address
ClientMaxstring// last IP address before broadcastS
ClientMaxstring// last IP address before broadcast
Broadcaststring// last IP address
Broadcaststring// last IP address
Interface
Interface
}
}
...
@@ -77,9 +77,9 @@ type Interface struct {
...
@@ -77,9 +77,9 @@ type Interface struct {
IfaceMACstring
IfaceMACstring
}
}
// inspect initialises IPv4 network parameters struct from given address.
// inspect initialises IPv4 network parameters struct from given address addr.
// address can be single address (like "192.168.17.42"), network address (like "192.168.17.0"), or in cidr form (like "192.168.17.42/24 or "192.168.17.0/24").
// addr can be single address (like "192.168.17.42"), network address (like "192.168.17.0") or in CIDR form (like "192.168.17.42/24 or "192.168.17.0/24").
// If addr is valid existsing interface address, network struct will also contain info about the respective interface.
// If addr belongs to network of local network interface, parameters will also contain info about that network interface.
--kubernetes-version string The Kubernetes version that the minikube VM will use (ex: v1.2.3, 'stable' for v1.20.2, 'latest' for v1.20.5-rc.0). Defaults to 'stable'.
--kubernetes-version string The Kubernetes version that the minikube VM will use (ex: v1.2.3, 'stable' for v1.20.2, 'latest' for v1.20.5-rc.0). Defaults to 'stable'.
--kvm-gpu Enable experimental NVIDIA GPU support in minikube
--kvm-gpu Enable experimental NVIDIA GPU support in minikube
--kvm-hidden Hide the hypervisor signature from the guest in minikube (kvm2 driver only)
--kvm-hidden Hide the hypervisor signature from the guest in minikube (kvm2 driver only)
--listen-address string IP Address to use to expose ports (docker and podman driver only)
--listen-address string IP Address to use to expose ports (docker and podman driver only)
...
@@ -79,7 +79,7 @@ minikube start [flags]
...
@@ -79,7 +79,7 @@ minikube start [flags]
--namespace string The named space to activate after start (default "default")
--namespace string The named space to activate after start (default "default")
--nat-nic-type string NIC Type used for nat network. One of Am79C970A, Am79C973, 82540EM, 82543GC, 82545EM, or virtio (virtualbox driver only) (default "virtio")
--nat-nic-type string NIC Type used for nat network. One of Am79C970A, Am79C973, 82540EM, 82543GC, 82545EM, or virtio (virtualbox driver only) (default "virtio")
--native-ssh Use native Golang SSH client (default true). Set to 'false' to use the command line 'ssh' command when accessing the docker machine. Useful for the machine drivers when they will not start with 'Waiting for SSH'. (default true)
--native-ssh Use native Golang SSH client (default true). Set to 'false' to use the command line 'ssh' command when accessing the docker machine. Useful for the machine drivers when they will not start with 'Waiting for SSH'. (default true)
--network string network to run minikube with. Only available with the docker/podman drivers. If left empty, minikube will create a new network.
--network string network to run minikube with. Now it is used by docker/podman and KVM drivers. If left empty, minikube will create a new network.
--network-plugin string Kubelet network plug-in to use (default: auto)
--network-plugin string Kubelet network plug-in to use (default: auto)
--nfs-share strings Local folders to share with Guest via NFS mounts (hyperkit driver only)
--nfs-share strings Local folders to share with Guest via NFS mounts (hyperkit driver only)
--nfs-shares-root string Where to root the NFS Shares, defaults to /nfsshares (hyperkit driver only) (default "/nfsshares")
--nfs-shares-root string Where to root the NFS Shares, defaults to /nfsshares (hyperkit driver only) (default "/nfsshares")
The `minikube start` command supports 3 additional kvm specific flags:
The `minikube start` command supports 5 additional KVM specific flags:
***`--gpu`**: Enable experimental NVIDIA GPU support in minikube
***`--gpu`**: Enable experimental NVIDIA GPU support in minikube
***`--hidden`**: Hide the hypervisor signature from the guest in minikube
***`--hidden`**: Hide the hypervisor signature from the guest in minikube
***`--kvm-network`**: The KVM network name
***`--kvm-network`**: The KVM default network name
***`--network`**: The dedicated KVM private network name
***`--kvm-qemu-uri`**: The KVM qemu uri, defaults to qemu:///system
***`--kvm-qemu-uri`**: The KVM qemu uri, defaults to qemu:///system
## Issues
## Issues
...
@@ -44,6 +45,7 @@ If you are running KVM in a nested virtualization environment ensure your config
...
@@ -44,6 +45,7 @@ If you are running KVM in a nested virtualization environment ensure your config
## Troubleshooting
## Troubleshooting
* Run `id` to confirm that user belongs to the libvirt[d] group (the output should contain entry similar to: 'groups=...,108(libvirt),...').
* Run `id` to confirm that user belongs to the libvirt[d] group (the output should contain entry similar to: 'groups=...,108(libvirt),...').
* Run `virsh domcapabilities --virttype="kvm"` to confirm that the host supports KVM virtualisation.
* Run `virt-host-validate` and check for the suggestions.
* Run `virt-host-validate` and check for the suggestions.
* Run ``ls -la `which virsh` ``, `virsh uri`, `sudo virsh net-list --all` and `ip a s` to collect additional information for debugging.
* Run ``ls -la `which virsh` ``, `virsh uri`, `sudo virsh net-list --all` and `ip a s` to collect additional information for debugging.
* Run `minikube start --alsologtostderr -v=9` to debug crashes.
* Run `minikube start --alsologtostderr -v=9` to debug crashes.
...
@@ -70,7 +72,7 @@ where:
...
@@ -70,7 +72,7 @@ where:
****default*** is the default libvirt network,
****default*** is the default libvirt network,
****mk-kvm0*** is a default libvirt network created for minikube ***kvm0*** profile (eg, using `minikube start -p kvm0 --driver=kvm2`),
****mk-kvm0*** is a default libvirt network created for minikube ***kvm0*** profile (eg, using `minikube start -p kvm0 --driver=kvm2`),
****mk-minikube*** is a network created for default minikube profile (eg, using `minikube start --driver=kvm2`) and
****mk-minikube*** is a network created for default minikube profile (eg, using `minikube start --driver=kvm2`) and
****my-custom-kvm-priv-net*** is a custom network name provided for minikube profile (eg, using `minikube start -p kvm1 --driver=kvm2 --kvm-private-network="my-custom-kvm-priv-net"`).
****my-custom-kvm-priv-net*** is a custom private network name provided for minikube profile (eg, using `minikube start -p kvm1 --driver=kvm2 --network="my-custom-kvm-priv-net"`).
2. Run `sudo virsh net-autostart <network>` to manually set **network** to autostart, if not already set.
2. Run `sudo virsh net-autostart <network>` to manually set **network** to autostart, if not already set.
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.":"",
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.":"",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes":"",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes":"",
"- Restart your {{.driver_name}} service":"{{.driver_name}} 서비스를 다시 시작하세요",
"- Restart your {{.driver_name}} service":"{{.driver_name}} 서비스를 다시 시작하세요",
"--network flag is only valid with the docker/podman drivers, it will be ignored":"",
"--network flag is only valid with the docker/podman and KVM drivers, it will be ignored":"",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine":"",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine":"",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine":"",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine":"",
"A set of key=value pairs that describe feature gates for alpha/experimental features.":"",
"A set of key=value pairs that describe feature gates for alpha/experimental features.":"",
...
@@ -687,7 +687,7 @@
...
@@ -687,7 +687,7 @@
"mount failed":"마운트 실패",
"mount failed":"마운트 실패",
"namespaces to pause":"잠시 멈추려는 네임스페이스",
"namespaces to pause":"잠시 멈추려는 네임스페이스",
"namespaces to unpause":"재개하려는 네임스페이스",
"namespaces to unpause":"재개하려는 네임스페이스",
"network to run minikube with. Only available with the docker/podman drivers. If left empty, minikube will create a new network.":"",
"network to run minikube with. Now it is used by docker/podman and KVM drivers. If left empty, minikube will create a new network.":"",
"none driver does not support multi-node clusters":"",
"none driver does not support multi-node clusters":"",
"not enough arguments ({{.ArgCount}}).\\nusage: minikube config set PROPERTY_NAME PROPERTY_VALUE":"",
"not enough arguments ({{.ArgCount}}).\\nusage: minikube config set PROPERTY_NAME PROPERTY_VALUE":"",
"output layout (EXPERIMENTAL, JSON only): 'nodes' or 'cluster'":"",
"output layout (EXPERIMENTAL, JSON only): 'nodes' or 'cluster'":"",
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.": "",
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.": "",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes": "",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes": "",
"- Restart your {{.driver_name}} service": "",
"- Restart your {{.driver_name}} service": "",
"--network flag is only valid with the docker/podman drivers, it will be ignored": "",
"--network flag is only valid with the docker/podman and KVM drivers, it will be ignored": "",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "",
"A set of key=value pairs that describe feature gates for alpha/experimental features.": "",
"A set of key=value pairs that describe feature gates for alpha/experimental features.": "",
...
@@ -613,7 +613,7 @@
...
@@ -613,7 +613,7 @@
"mount failed": "",
"mount failed": "",
"namespaces to pause": "",
"namespaces to pause": "",
"namespaces to unpause": "",
"namespaces to unpause": "",
"network to run minikube with. Only available with the docker/podman drivers. If left empty, minikube will create a new network.": "",
"network to run minikube with. Now it is used by docker/podman and KVM drivers. If left empty, minikube will create a new network.": "",
"none driver does not support multi-node clusters": "",
"none driver does not support multi-node clusters": "",
"not enough arguments ({{.ArgCount}}).\\nusage: minikube config set PROPERTY_NAME PROPERTY_VALUE": "",
"not enough arguments ({{.ArgCount}}).\\nusage: minikube config set PROPERTY_NAME PROPERTY_VALUE": "",
"output layout (EXPERIMENTAL, JSON only): 'nodes' or 'cluster'": "",
"output layout (EXPERIMENTAL, JSON only): 'nodes' or 'cluster'": "",