You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Introduction

Branch

master, 4.1.0

Purpose

This is functional specification for the feature "Base image update facility", the purpose is that we need to be able to update existing VM with new base image.

Feature Specifications

  • When base image update has been performed (e.g. Windows patches applied to the golden master image) then on vm restart there is a need of pointing the VM at the new golden master.
  • We need to be able to update existing VMs with a new base image to support the pooled desktop.
  • Since the template should be immutable, if the new version of template is created, then it is another template. So vm should boot up using the new template.
  • In case of pooled desktops if a VM is already restarted and got pointed to the new updated base image, then when the restart of other VMs it should check for the new updated base image (already downloaded previuosly) and point to that.

Use cases

The usual way to point out to the new base image is to destroy the machine and recreate with the new disk.

But this causes problem due to the change of ipaddress.To persist the network identity of the existing VMs even after base image updation this feature can be used.

Architecture and Design description

  • The orchestration being requested is : disconnect the root disk >> destroy root disk >> create a new disk from (possibly new) template >> attach new disk as root disk to the vm
  • Some changes to the RestoreVM api can achieve this as this api persists the netowrk identity.
  • Adding the same what we do for the upgrade of system vm template.
  • The api should just take a reference to the new template.

web services APIs

restoreVirtualMachine: This api is to reset the virtual machine with new volume .

This needs to be modified by providing the new template id to the api from which it creates the new volume using the new template id.

UI flow

  • need to be updated

Test cases

TBD

Appendix

Appendix A:

Appendix B:

  • No labels