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

Explore kubevirt live migration capabilities #12860

Open
wozniakjan opened this issue Nov 28, 2023 · 3 comments
Open

Explore kubevirt live migration capabilities #12860

wozniakjan opened this issue Nov 28, 2023 · 3 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/normal Not that urgent, but is important sig/virtualization Denotes a PR or issue as being assigned to SIG Virtualization.

Comments

@wozniakjan
Copy link
Contributor

wozniakjan commented Nov 28, 2023

Upstream KubeVirt has some support for live migration already implemented
https://kubevirt.io/user-guide/operations/live_migration/

For KKP, we should explore the possibility of leveraging this live migration to improve the maintenance tasks experience for administrators.

@wozniakjan wozniakjan self-assigned this Nov 28, 2023
@wozniakjan wozniakjan added kind/feature Categorizes issue or PR as related to a new feature. sig/virtualization Denotes a PR or issue as being assigned to SIG Virtualization. priority/normal Not that urgent, but is important labels Nov 28, 2023
@wozniakjan
Copy link
Contributor Author

so far I made two changes to machine-controller

  • allow hardcoded volume type to change between RWO and RWX
  • allow network interface change from bridge to masquerade (no other type supports live migration yet)

I am battling with the node address diff between virt-launcher pod and VM node

logs:
E1129 13:43:01.201737       1 node_controller.go:236] error syncing 'migratable-54bd4d84c5-82g89': failed to get node modifiers from cloud provider: provided node ip for node "migratable-54bd4d84c5-82g89" is not valid: failed to get node address from cloud provider that matches ip: 10.0.2.2, requeuing

$ k get node -o wide
NAME                                        STATUS   ROLES    AGE   VERSION   INTERNAL-IP    EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION      CONTAINER-RUNTIME
migratable-54bd4d84c5-82g89                 Ready    <none>   19m   v1.27.6   10.0.2.2       <none>        Ubuntu 22.04.1 LTS   5.15.0-57-generic   containerd://1.6.25

$ k get po -o wide
NAME                                                            READY   STATUS    RESTARTS   AGE     IP             NODE         NOMINATED NODE   READINESS GATES
virt-launcher-migratable-54bd4d84c5-82g89-v86cv                 1/1     Running   0          4h1m    10.244.0.240   kubevirt-1   <none>           1/1

I'm checking if it's possible to assign the node IP or apply some modifier on cloud-provider level

@wozniakjan
Copy link
Contributor Author

reference for upstream PR supporting live migration for bridge network kubevirt/community#182

@wozniakjan
Copy link
Contributor Author

kubevirt/kubevirt#9193 supports annotation override to override experimental live-migration for bridge with CNIs that allow IP address carry over for pods.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/normal Not that urgent, but is important sig/virtualization Denotes a PR or issue as being assigned to SIG Virtualization.
Projects
None yet
Development

No branches or pull requests

1 participant