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

Compare with Current View Page History

« Previous Version 6 Next »

Bug Reference

CLOUDSTACK-6142

Branch

4.4, master

Introduction

When a data disk is needed by a virtual machine that resides in a different cluster; that is on a different primary storage than the current cluster/primary storage, it involves a costly and time consuming data copy operation. The volume is copied from one primary storage to another primary storage via the secondary storage. It'll be good to add support for a zone wide primary storage; that is a primary storage that can be shared across clusters. 

Purpose

This is a feature specification for supporting zone wide primary storage on Hyper-V.

References

Document History

AuthorDescriptionDate
Rajesh BattalaInitial Revision 
Devdeep SinghIncorporating comments.03/27/2014

Glossary

Instance/vm - Virtual machine running on a hypervisor. The terms may be used interchangeably.

ZWPS - Zone wide primary storage

Feature Specifications

  • Multiple clusters can share the same primary storage.
  • Multiple zone wide primary storage can be added per zone.
  • A cloudstack cluster can have both a cluster wide and zone wide primary storage.
  • On upgrade, existing setup should not be impacted. That is, after upgrade, existing cluster wide primary storage should not be impacted and administrator can go ahead and add a zone wide or cluster wide primary storage.
  • In cloudstack, only SMB 3.0 is supported as a primary storage on Hyper-V. The support for zone wide primary storage will be implemented only for SMB.

Scenarios

Test Guidelines

Support-ability Characteristics

  • CloudStack management server logs.
  • The Hyper-V agent logs can be seen in windows event viewer on the respective hosts. The logs can be filtered by source "CloudStack Hyper-V Agent"

Users Communities

Only a cloudstack root administrator can add a zone wide primary storage.

Supported Hypervisor

This feature is implemented for Windows Server 2012 R2 and Hyper-V 2012 R2 (Core).

Architecture and Design description

Database changes

There are no db changes for the feature.

Registering zone wide primary storage
  • CreateStoragePool api issued with scope as 'zone' and hypervisor type as 'Hyperv'
  • Storage pool entry is persisted in the database.
  • A ModifyStoragePoolCommand is send to all up and enabled Hyper-V hosts in the zone.
  • The host makes a note and persists the zone wide primary storage path in its configuration file.
  • On success, the zone wide storage pool state is marked as 'Up' in the database.
  • Whenever a new host is added to the zone, ModifyStoragePoolCommand is send to the new host too.
Storage allocation
  • When a volume is created, cloudstack queries all the storage allocators for a suitable pool for the volume. It checks with the storage allocators for a suitable pool for the volume in the following order; local, cluster and finally zone wide storage allocator.
  • If a suitable pool is found by any of the allocators; then the volume is placed on that pool.
  • If a volume is created with a 'Shared' disk offering and a cluster wide and a zone wide pool, both are available; the volume may get placed in either of the pools.
  • To guarantee placement of a volume on a zone wide primary storage; storage tags may be used.
Volume migration

Web Services APIs

The api 'createStoragePool' can be used for adding SMB as a zone wide primary storage. The 'scope' parameter has to be 'zone' and hypervisor parameter set to 'Hyperv'. This is an existing api and no changes need to be made to it for this feature.

UI flow

  • The UI screen for adding a new primary storage should allow adding a SMB as a zone wide primary storage.

IP Clearance

No IP dependencies are introduced by this feature.

Appendix

Appendix A:

Appendix B:







  • No labels