SET foreign_key_checks = 0; -- -- Schema upgrade from 2.0 to 2.1 -- CREATE TABLE `cloud`.`cluster` ( `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT COMMENT 'id', `name` varchar(255) NOT NULL COMMENT 'name for the cluster', `pod_id` bigint unsigned NOT NULL COMMENT 'pod id', `data_center_id` bigint unsigned NOT NULL COMMENT 'data center id', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`ext_lun_alloc` ( `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT COMMENT 'id', `size` bigint unsigned NOT NULL COMMENT 'virtual size', `portal` varchar(255) NOT NULL COMMENT 'ip or host name to the storage server', `target_iqn` varchar(255) NOT NULL COMMENT 'target iqn', `data_center_id` bigint unsigned NOT NULL COMMENT 'data center id this belongs to', `lun` int NOT NULL COMMENT 'lun', `taken` datetime COMMENT 'time occupied', `volume_id` bigint unsigned COMMENT 'vm taking this lun', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`ext_lun_details` ( `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT COMMENT 'id', `ext_lun_id` bigint unsigned NOT NULL COMMENT 'lun id', `tag` varchar(255) COMMENT 'tags associated with this vm', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`storage_pool_details` ( `id` bigint unsigned UNIQUE NOT NULL AUTO_INCREMENT COMMENT 'id', `pool_id` bigint unsigned NOT NULL COMMENT 'pool the detail is related to', `name` varchar(255) NOT NULL COMMENT 'name of the detail', `value` varchar(255) NOT NULL COMMENT 'value of the detail', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`network_group` ( `id` bigint unsigned NOT NULL auto_increment, `name` varchar(255) NOT NULL, `description` varchar(4096) NULL, `domain_id` bigint unsigned NOT NULL, `account_id` bigint unsigned NOT NULL, `account_name` varchar(100) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`network_ingress_rule` ( `id` bigint unsigned NOT NULL auto_increment, `network_group_id` bigint unsigned NOT NULL, `start_port` varchar(10) default NULL, `end_port` varchar(10) default NULL, `protocol` varchar(16) NOT NULL default 'TCP', `allowed_network_id` bigint unsigned, `allowed_network_group` varchar(255) COMMENT 'data duplicated from network_group table to avoid lots of joins when listing rules (the name of the group should be displayed rather than just id)', `allowed_net_grp_acct` varchar(100) COMMENT 'data duplicated from network_group table to avoid lots of joins when listing rules (the name of the group owner should be displayed)', `allowed_ip_cidr` varchar(44), `create_status` varchar(32) COMMENT 'rule creation status', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`network_group_vm_map` ( `id` bigint unsigned NOT NULL auto_increment, `network_group_id` bigint unsigned NOT NULL, `instance_id` bigint unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`op_nwgrp_work` ( `id` bigint unsigned UNIQUE NOT NULL AUTO_INCREMENT COMMENT 'id', `instance_id` bigint unsigned NOT NULL COMMENT 'vm instance that needs rules to be synced.', `mgmt_server_id` bigint unsigned COMMENT 'management server that has taken up the work of doing rule sync', `created` datetime NOT NULL COMMENT 'time the entry was requested', `taken` datetime COMMENT 'time it was taken by the management server', `step` varchar(32) NOT NULL COMMENT 'Step in the work', `seq_no` bigint unsigned COMMENT 'seq number to be sent to agent, uniquely identifies ruleset update', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`op_vm_ruleset_log` ( `id` bigint unsigned UNIQUE NOT NULL AUTO_INCREMENT COMMENT 'id', `instance_id` bigint unsigned NOT NULL COMMENT 'vm instance that needs rules to be synced.', `created` datetime NOT NULL COMMENT 'time the entry was requested', `logsequence` bigint unsigned COMMENT 'seq number to be sent to agent, uniquely identifies ruleset update', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`account_vlan_map` ( `id` bigint unsigned NOT NULL UNIQUE AUTO_INCREMENT, `account_id` bigint unsigned NOT NULL COMMENT 'account id. foreign key to account table', `vlan_db_id` bigint unsigned NOT NULL COMMENT 'database id of vlan. foreign key to vlan table', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`op_dc_link_local_ip_address_alloc` ( `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'primary key', `ip_address` varchar(15) NOT NULL COMMENT 'ip address', `data_center_id` bigint unsigned NOT NULL COMMENT 'data center it belongs to', `pod_id` bigint unsigned NOT NULL COMMENT 'pod it belongs to', `instance_id` bigint unsigned NULL COMMENT 'instance id', `taken` datetime COMMENT 'Date taken', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ALTER TABLE `cloud`.`op_lock` MODIFY COLUMN `key` varchar(128) NOT NULL UNIQUE; -- add UNIQUE constraint ALTER TABLE `cloud`.`op_lock` MODIFY COLUMN `thread` varchar(255) NOT NULL; -- change from varchar(256) to varchar(255) ALTER TABLE `cloud`.`volumes` DROP COLUMN `name_label`; ALTER TABLE `cloud`.`volumes` DROP COLUMN `template_name`; ALTER TABLE `cloud`.`volumes` ADD COLUMN `pool_type` varchar(64); ALTER TABLE `cloud`.`volumes` ADD COLUMN `recreatable` tinyint(1) unsigned NOT NULL DEFAULT 0; ALTER TABLE `cloud`.`volumes` ADD COLUMN `device_id` bigint unsigned NULL; -- -- after we have data migrated, we can then enforce this at postprocess-20to21.sql -- ALTER TABLE `cloud`.`volumes` MODIFY COLUMN `disk_offering_id` bigint unsigned NOT NULL; -- add NOT NULL constraint ALTER TABLE `cloud`.`vlan` DROP COLUMN `vlan_name`; ALTER TABLE `cloud`.`host` ADD COLUMN `cluster_id` bigint unsigned; -- -- enforced in postporcess-20to21.sql ALTER TABLE `cloud`.`host_pod_ref` ADD COLUMN `gateway` varchar(255); -- need to migrage data with user input ALTER TABLE `cloud`.`service_offering` ADD COLUMN `recreatable` tinyint(1) unsigned NOT NULL DEFAULT 0; ALTER TABLE `cloud`.`service_offering` ADD COLUMN `tags` varchar(255); ALTER TABLE `cloud`.`user_vm` MODIFY COLUMN `domain_router_id` bigint unsigned; -- change from NOT NULL to NULL ALTER TABLE `cloud`.`event` ADD COLUMN `state` varchar(32) NOT NULL DEFAULT 'Completed'; ALTER TABLE `cloud`.`event` ADD COLUMN `start_id` bigint unsigned NOT NULL DEFAULT 0; ALTER TABLE `cloud`.`disk_offering` ADD COLUMN `tags` varchar(4096); ALTER TABLE `cloud`.`disk_offering` ADD COLUMN `created` datetime; -- will fill it with the oldest time in old data base ALTER TABLE `cloud`.`storage_pool` ADD COLUMN `cluster_id` bigint unsigned; -- need to setup default cluster for pods ALTER TABLE `cloud`.`vm_instance` ADD COLUMN `last_host_id` bigint unsigned; ALTER TABLE `cloud`.`console_proxy` MODIFY COLUMN `gateway` varchar(15); -- remove NOT NULL constraint ALTER TABLE `cloud`.`console_proxy` MODIFY COLUMN `public_netmask` varchar(15); -- remove NOT NULL constraint ALTER TABLE `cloud`.`console_proxy` ADD COLUMN `guest_mac_address` varchar(17); -- NOT NULL UNIQUE constraint will be added in postprocess ALTER TABLE `cloud`.`console_proxy` ADD COLUMN `guest_ip_address` varchar(15); ALTER TABLE `cloud`.`console_proxy` ADD COLUMN `guest_netmask` varchar(15); ALTER TABLE `cloud`.`secondary_storage_vm` MODIFY COLUMN `gateway` varchar(15); -- remove NOT NULL constraint ALTER TABLE `cloud`.`secondary_storage_vm` MODIFY COLUMN `public_netmask` varchar(15); -- remove NOT NULL constrait ALTER TABLE `cloud`.`secondary_storage_vm` ADD COLUMN `guest_mac_address` varchar(17); -- NOT NULL unique constrait will be added in postprocess ALTER TABLE `cloud`.`secondary_storage_vm` ADD COLUMN `guest_ip_address` varchar(15) UNIQUE; ALTER TABLE `cloud`.`secondary_storage_vm` ADD COLUMN `guest_netmask` varchar(15); CREATE TABLE `cloud`.`service_offering_21` ( `id` bigint unsigned NOT NULL, `cpu` int(10) unsigned NOT NULL COMMENT '# of cores', `speed` int(10) unsigned NOT NULL COMMENT 'speed per core in mhz', `ram_size` bigint unsigned NOT NULL, `nw_rate` smallint unsigned default 200 COMMENT 'network rate throttle mbits/s', `mc_rate` smallint unsigned default 10 COMMENT 'mcast rate throttle mbits/s', `ha_enabled` tinyint(1) unsigned NOT NULL DEFAULT 0 COMMENT 'Enable HA', `guest_ip_type` varchar(255) NOT NULL DEFAULT 'Virtualized' COMMENT 'Type of guest network -- direct or virtualized', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `cloud`.`disk_offering_21` ( `id` bigint unsigned NOT NULL auto_increment, `domain_id` bigint unsigned, `name` varchar(255) NOT NULL, `display_text` varchar(4096) NULL COMMENT 'Description text set by the admin for display purpose only', `disk_size` bigint unsigned NOT NULL COMMENT 'disk space in mbs', `mirrored` tinyint(1) unsigned NOT NULL DEFAULT 1 COMMENT 'Enable mirroring?', `type` varchar(32) COMMENT 'inheritted by who?', `tags` varchar(4096) COMMENT 'comma separated tags about the disk_offering', `recreatable` tinyint(1) unsigned NOT NULL DEFAULT 0 COMMENT 'The root disk is always recreatable', `use_local_storage` tinyint(1) unsigned NOT NULL DEFAULT 0 COMMENT 'Indicates whether local storage pools should be used', `unique_name` varchar(32) UNIQUE COMMENT 'unique name', `removed` datetime COMMENT 'date removed', `created` datetime COMMENT 'date the disk offering was created', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;