Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added more APIs

...

  1. 'cloud'.'vmware_dc' table to track all DC specific information along with details of resources & vCenter.
    1. Columns in this table are id, vCenter host/ip, DC name, DC Mor, guid
    2. id is primary key field of this table
    3. Implement Dao & VO for this table.
  2. 'cloud'.'zone_dc_map' table will be added to persist the mapping of zone to DC.
    1. Columns in this table are id, vmware_dc_id, zone_id
    2. Foreign key id from vmware_dc table
    3. Foreign key id from data_center table
    4. Implement Dao & VO for this table.
  3. 'cloud'.'cluster_vsm_map' would be removed.
  4. 'cloud'.'zone_vsm_map' would be added. Also a zone can be associated with more than 1 VSM instances.
    1. Columns in this table are id, zone_id & vsm_id where id is Primary key of this table.
    2. Foreign key zone_id from data_center table.
    3. Foreign key vsm_id from virtual_supervisor_module table.
    4. Implement Dao & VO classes for this table.

Web Services APIs

  1. AddCluster addCluster will be modified
    1. Interface perspective - Make parameters vCenter host/ip, credentials and DC name optional based on zone id's presence in zone_dc_map.
  2. associateZoneWithDc -
    1. Maps a cloudstack zone with specified VMware DC.
    2. Throws RemoteException if vCenter is not reachable or any other server side Exception caught.
    3. Upon failure in successful parameter validation throw InvalidParameterValueException
    4. Parameters are,
      1. zoneId - required
      2. dcName - required
      3. vCenterHost - required
      4. vCenterUser - required
      5. vCenterPassword - required
  3. disAssocaiteZoneWithDc -
    1. Unmaps a cloudstack zone from a VMWare DC that is associated with it earlier.
    2. If no association exists already, then throw CloudRuntimeException.
    3. If no such zone exists, throw InvalidParameterValueException
    4. If zone is have one or more clusters / elements, then throw ResourceInUseException - Zone should be empty (no clusters or other elements like Nexus 1000v VSM instance)
    5. Parameter are,
      1. zoneId - required
  4. disassociateZoneWithDc

UI Flow

  • Changes required in UI for live migrating a volume from one storage pool to another.
    1. Add Cluster form in zone wizard
    2. Add Cluster wizard
    3. Add NexusVSM instance to zone
    4. Add ASA instance to zone

...