-
Notifications
You must be signed in to change notification settings - Fork 69
VM Feature Planning
Xiaoning Ding edited this page Jul 9, 2020
·
3 revisions
To cloud providers:
- Unified VM/container resource pool.
- One single software system to maintain.
- Unified eco-system: runtime interface (extended CRI), network interface (CNI), storage interface(CSI).
- Container/VM colocated scheduling optimization(?)
To cloud users:
- Unified API and tools for VM/Container.
- Enable VM workload paradigm: Jobs, ReplicaSet, StatefulSet(?), Deployment(?)
- MixSet of containers/VM(?)
- Multiple VMs in one pod (?)
- Flexbile VM vertical scaling
- Create and delete VMs
- Start and stop VMs
- Reboot VMs
- VM SSH keypair
- VM CloudInit script
- Snapshot and resume VMs
- VM resize
- Cold migration
- Live migration
- Device support: GPU
- lock/unlock VM configuration
- Flavor management - CRUD of flavors
- Support existing container mechanisms like PodDisruptionBudget, etc
- Design refactoring of VM pod converter (require investigation)
storage:
- block storage as volumes
- Add or remove volumes
networking:
- Basic Nic support(requires some update)
- Multiple Nic support
- Attach or detach Nics
- security groups of VM
monitoring:
- VM status report
- VM liveness and readiness
- VM resource utilization monitoring and report
Integration:
- storage: flex integration with Cinder
- storage: CSI integration with at least one storage type
- networking: integration with Mizar
- image: integration with Glance
- portal: integration with portal
- Re-brand Virtlet?
- Re-brand kubelet and other components(?)
- VM ReplicaSet
- VM StatefulSet -- requires dynamic port creation.
- VM Deployment -- rolling update, etc
- In-place vertical scaling
- KSM-optimized scheduling
- Extra small VMs
- VM/Container mixed optimized scheduling
- Verify if VM-based CRD works