Commit Graph

47 Commits (1a176c398edc70d0302952d3d0c497135b8e38a5)

Author SHA1 Message Date
Nir Soffer fcd907fd6d kvm2 driver: Don't delete the "default" network
The special "default" network is created by libvirt and owned by the
system admin, but we try to delete it when deleting a profile.

To reproduce the issue, start and delete minikube on a system without
any other vm using the libvirt default network:

    minikube start --driver kvm2 --network default
    minikube delete

The default network will be delete, and the next minikube start will
fail, complaining about missing libvirt default networking and linking
to the complicated instructions how to recreate it.

Now we skip deletion of the special "default" network.

Example run log:

    $ out/minikube delete -v10 --logtostderr 2>delete.log
    * Deleting "minikube" in kvm2 ...
    * Removed all traces of the "minikube" cluster.

    $ cat delete.log
    ...
    I0518 03:41:27.148838 1247331 out.go:177] * Deleting "minikube" in kvm2 ...
    I0518 03:41:27.148857 1247331 main.go:141] libmachine: (minikube) Calling .Remove
    I0518 03:41:27.149156 1247331 main.go:141] libmachine: (minikube) DBG | Removing machine...
    I0518 03:41:27.159000 1247331 main.go:141] libmachine: (minikube) DBG | Trying to delete the networks (if possible)
    I0518 03:41:27.169497 1247331 main.go:141] libmachine: (minikube) DBG | Using the default network, skipping deletion
    I0518 03:41:27.169598 1247331 main.go:141] libmachine: (minikube) Successfully deleted networks
    ...
2024-05-22 11:21:41 -07:00
Predrag Rogic ad7fb3992c
support kubernetes ha cluster topology in minikube 2024-01-07 21:36:17 +00:00
Steven Powell 50e9147e4e fix lint errors 2023-03-20 12:43:07 -07:00
Steven Powell 63934002d8 update golang.org and godoc.org links 2022-11-30 10:49:57 -08:00
Steven Powell 1aa1f04e9b remove old build tags 2022-03-30 16:43:29 -07:00
Anoop C S 061fd88d2e drivers/kvm: Use ARP for retrieving interface ip addresses
On platforms where dhcp lease status is not updated immediately after
domain creation it fails to list ip addresses until next refresh
happens resulting in the following error:

8<----------8<----------8<----------8<----------8<----------8<----------

Creating kvm2 VM (CPUs=2, Memory=4096MB, Disk=20480MB) ...
Failed to start kvm2 VM. Running "minikube delete" may fix it: creating
  host: create: Error creating machine: Error in driver during machine
  creation: IP not available after waiting: machine minikube didn't
  return IP after 1 minute

Exiting due to GUEST_PROVISION: Failed to start host: creating host:
  create: Error creating machine: Error in driver during machine
  creation: IP not available after waiting: machine minikube didn't
  return IP after 1 minute

8<----------8<----------8<----------8<----------8<----------8<----------

Using ARP instead of LEASE for ip address query is justifiable as
listing is done following the domain creation. In case of failure we
fallback to listing via LEASE source.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2022-01-29 09:57:56 +05:30
Predrag Rogic a23f8381f7
upgrade-libvirt to 8th gen 2022-01-23 02:58:49 +00:00
Steven Powell 145f9fc9ab run `go fmt` 2021-09-13 11:58:43 -07:00
Predrag Rogic 06d4313f3f
kvm2 driver: add static ip 2021-03-27 23:33:24 +00:00
Predrag Rogic f4a375181a
create network: use locks and reservations to solve race condition 2021-03-18 18:38:06 +00:00
Predrag Rogic 474f6734b1
create network: use locks to solve race conditions 2021-03-17 22:56:22 +00:00
Predrag Rogic 223792b993
create network: use locks to solve race conditions 2021-03-17 14:32:39 +00:00
Medya Ghazizadeh 6bf3c23699
Merge pull request #10479 from prezha/fix-kvm-network-cleanup
improve kvm network delete/cleanup
2021-02-19 16:31:26 -08:00
Predrag Rogic 6d61795352
simplify free subnet query for oci net create 2021-02-17 03:04:47 +00:00
Predrag Rogic 4018ee3682
move to separate network package and fix naming 2021-02-17 03:04:47 +00:00
Predrag Rogic d48b0a58e8
add ip conflict auto-resolution also to kvm and consolidate 2021-02-17 03:04:47 +00:00
Predrag Rogic a5f75b4a29
fix wording 2021-02-17 02:45:22 +00:00
Predrag Rogic fc07cfd395
fix wording 2021-02-17 02:45:22 +00:00
Predrag Rogic 1f50c63adb
fix wording 2021-02-17 02:45:22 +00:00
Predrag Rogic 5c8ea8dc5b
improve kvm network delete/cleanup 2021-02-17 02:45:03 +00:00
Predrag Rogic 9e114139dc
retry instead of sleep; gc cleanup 2020-11-10 16:28:14 +00:00
Predrag Rogic 8ebc828eb1
Fix minikube-net network failures for KVM driver 2020-11-10 16:27:51 +00:00
Kyle Bai c5f695e8a0 Better comment syntax 2019-07-05 11:17:10 +08:00
Jose Donizetti 9dfe660c64 Add support to custom qemu uri on kvm2 driver 2019-06-28 14:12:58 -07:00
Anders F Björklund f20f223c02 Decrease cyclomatic complexity
Here is the report (from gocyclo), before:

21 tests (*SSHServer).Start pkg/minikube/tests/ssh_mock.go:76:1
19 cmd runStart cmd/minikube/cmd/start.go:173:1
18 integration testTunnel test/integration/tunnel_test.go:40:1
17 extract checkCallExpression pkg/minikube/extract/extract.go:198:1
17 kubeadm TestGenerateConfig pkg/minikube/bootstrapper/kubeadm/kubeadm_test.go:133:1
16 kvm (*Driver).deleteNetwork pkg/drivers/kvm/network.go:153:1
2019-06-22 17:21:42 +02:00
Jose Donizetti a2d844ef51 Add kvm network name validation
closes for #3581
2019-06-15 13:56:12 -07:00
Thomas Strömberg dcb10332a0
Merge pull request #4334 from josedonizetti/refactor-kvm-lookup-status-ip
Refactor kvm lookupIPFromStatusFile
2019-05-28 10:26:02 -07:00
Thomas Strömberg bb56fd2eb7
Merge pull request #4323 from josedonizetti/fix-kvm-ensure-network
kvm2: Add support for --kvm-network to ensureNetwork
2019-05-24 10:47:41 -07:00
josedonizetti 1852a72caf Refactor kvm lookupIPFromStatusFile 2019-05-23 15:38:02 -03:00
josedonizetti fc2e2e52c5 Skip kvm network deletion if private network doesn't exist 2019-05-23 06:17:12 -03:00
josedonizetti 93329f1619 Remove obsolete comment 2019-05-22 17:25:27 -03:00
josedonizetti e3bf4bd7ec Fix kvm ensureNetwork 2019-05-22 16:19:09 -03:00
josedonizetti e9a450df66 Validate kvm network exists 2019-05-21 16:19:15 -03:00
Thomas Stromberg 6e693d22ee lint-a-geddon is here 2019-05-13 21:43:52 -07:00
tstromberg 9a9f9edf5f First pass at lint-ageddon 2019-05-13 18:31:55 -07:00
Thomas Stromberg 055c8002b1 Replace %s format directives with %v for errors.
Previously we were mixed between the two forms. This commit picks %v,
which is consistent with the Kubernetes code base. They both effectively
do the same thing in this case, though %v works with any object, and %s
only with string objects.
2018-09-28 16:05:27 -07:00
Marcus Heese 5d0e12327a
turning error into a warning log message 2018-09-26 13:53:57 -07:00
Marcus Heese 34ee59192b
kvm2 driver: be more robust with creating of the network, don't delete the network if it is in use 2018-09-21 10:28:47 -07:00
Marcus Heese b35e908dec
kvm2 driver: generate separate random MACs for default and private network NICs 2018-09-21 10:28:43 -07:00
Marcus Heese c4ef7ad197
kvm2 driver: separated activating and creating of networks 2018-09-21 10:28:37 -07:00
Marcus Heese d1995d24f0
kvm2 driver: fixed private network creation and setup 2018-09-21 10:28:33 -07:00
Luke Weber 05161c1b18 Fixes https://github.com/kubernetes/minikube/issues/2274 2018-07-04 09:26:50 -07:00
dlorenc b54950fb2b Start the default network for the kvm2 driver. 2018-05-11 13:07:19 -07:00
Viktor Safronov 9ad5b4a190 Disable dnsmasq on minikube-net network for kvm driver 2018-04-20 07:40:43 -07:00
Matt Rickard b7012aefcc Use mac instead of hostname to find IP 2017-10-19 09:16:24 -07:00
Matt Rickard 53341aa30d golint, go vet, etc. changes 2017-09-11 14:17:58 -07:00
Matt Rickard 48b165808c Bring KVM driver in-tree
Add boilerplate

Review feedback
2017-08-28 11:52:35 -07:00