Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. 'cloud'.'vmware_data_center' table to track all DC specific information along with details of resources & vCenter.
    1. Columns in this table are id, DC name, guid. The 'guid' field encapsulates 'vCenter host/ip' and DC mor. E.g. 'vcenter.abc.com@dc-101'
    2. id is primary key field of this table
    3. Implement Dao & VO for this table.
    'cloud'.'zone_vmware_data_center_map' table will be added to persist the mapping of zone to DC.
    1. Schema definition
    2. Columns in this table are id, vmware_dc_id, zone_id
    3. Foreign key id from vmware_dc table
    4. Foreign key id from data_center table
    5. Implement Dao & VO for this table.
    6. Foreign key zone_id from data_center table.
    7. Schema definitions
      1. CREATE TABLE `cloud`.`zone_vmware`vmware_data_center_map` center` (
        `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
        `zone_id` bigint unsigned `name` varchar(255) NOT NULL UNIQUE COMMENT 'id of CloudStack zone',
        `vmware_data_center_id` bigint unsigned `guid` varchar(255) NOT NULL UNIQUE COMMENT 'id of VMware datacenter',
        PRIMARY KEY (`id`) ,
        CONSTRAINT `fk_ENGINE=InnoDB DEFAULT CHARSET=utf8;
  2. 'cloud'.'zone_vmware_data_center_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.
    5. Foreign key zone_id from data_center table.
    6. Schema definition
      1. CREATE TABLE `cloud`.`zone_vmware_data_center_map` __zone_id` FOREIGN KEY (`zone_id`) REFERENCES `data_center`(`id`) ON DELETE CASCADE,
        CONSTRAINT `fk_zone_vmware_data_center_map__vmware_data_center_id` FOREIGN KEY (`vmware_data_center_id`) REFERENCES `vmware_data_center`(`id`) ON DELETE CASCADE
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;CREATE TABLE `cloud`.`vmware_data_center` (
        `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
        `name` varchar(255) `zone_id` bigint unsigned NOT NULL UNIQUE COMMENT 'id of CloudStack zone',
        `guid` varchar(255) `vmware_data_center_id` bigint unsigned NOT NULL UNIQUE COMMENT 'id of VMware datacenter',
        PRIMARY KEY (`id`),
        CONSTRAINT `fk_zone_vmware_data_center_map__zone_id` FOREIGN KEY (`zone_id`) REFERENCES `data_center`(`id`) ON DELETE CASCADE,
        CONSTRAINT `fk_zone_vmware_data_center_map__vmware_data_center_id` FOREIGN KEY (`vmware_data_center_id`) REFERENCES `vmware_data_center`(`id`) ON DELETE CASCADE
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

...

  1. Migration support
    1. Existing CloudStack Deployments - Existing cloudstack deployments with multiple DC's in a zone
      1. Decide a DC as the final DC that contains all clusters.
      2. Move all clusters to the chosen DC.
      3. For each cluster create cluster with same name in target DC.
      4. Edit the field 'cloud'.'cluster'.'name' in database to reflect new DC name in cluster name.
      5. Edit the field 'cloud'.'cluster_details'.'url' in database to reflect new DC name in cluster name.
      6. Options to migrate VM across datacenters
        1. Cold migrate each of the instance to this new cluster in chosen DC.
        2. Hot migrate the VMs by using disconnecting all hosts from source cluster followed by deletion of source cluster from source DC and adding all hosts to cluster in target DC.
        3. Hot migrate the VMs after suspending the VMs. Need to power on (mean resume) VMs after migration is complete. This needs the virtual disks of VM to be placed on shared storage before triggering the migration operation.
    2. Pre-requisite checker tool - This tool should go through existing CloudStack deployment and VMware deployment to check if pre-requisites are met. Following are list of pre-requisites before going to upgrade to new version with this feature built-in,
      1. A CloudStack zone should encompass only 1 VMware DC
      2. The VMware DC encompassed by CloudStack zone should not be shared by multiple CloudStack deployments.
  2. Guidelines of CloudStack version upgrade
    1. Migration would be offline operation before CloudStack version upgrade operation.
    2. Choice of migration procedure is option (2) - migration of host across DC by disconnecting from cluster in source DC, followed by connecting it to target cluster in another DC. Following are detailed steps,
      1. Handle the case of clusters from multiple vCenter
        1. Investigation pending
      2. Handle the case of clusters from single vCenter but different DCs
        1. Handle the case of deployment using distributed virtual switch (Nexus 1000v or vDS)
          1. Deploy Nexus 1000v or vDS on target DC with same credentials (user/password)
          2. Ensure if 'cloud'.'virtual_supervisor_module' table has the new IP of Nexus 1000v VSM instance.
          3. Create all dvPortgroups required by VMs on the host that is moving across DCs. Make sure all properties of dvPortGroups are in sync, e.g. shaping policy should be same as that of original dvPortGroup in source DC. External switch configuration for trunking/routes is assumed to be taken care of by admin.
        2. Create a cluster, in target DC, with same properties as that of original cluster
        3. Unmanage the cluster in CloudStack
        4. Disconnect each host in source clustertecluster
        5. Remove each host from source cluster
        6. Add each host to target cluster
        7. Create all custom properties
          1. Each VM will have custom properties like cloud.nic.mask. This will be lost during above migration operations. Hence need to re-create after adding to target cluster
          2. Each template (user VM and system VM templates) will have custom properties like cloud.uuid. This need to be restored.
        8. Add the target cluster to CloudStack
        9. Make sure that guid field of 'cloud'.'host' table has the valid reference because when host is added to target cluster, it will acquire new unique reference.
        10. Investigation pending for migration of primary/secondary datastore across DCs.
    3. Pre-requisite checker should run successfully before CloudStack upgrade operation.
    4. Run CloudStack version upgrade to complete the upgrade.

...