Merge pull request #1817 from sateesh-chodapuneedi/pr-cloudstack-9654

CLOUDSTACK-9654 Missing hypervisor mapping of various SUSE Linux gues**Jira**
CLOUDSTACK-9654 Missing hypervisor mapping of various SUSE Linux guest os versions on VMware 6.0

**Issue:**
Currently many versions of SUSE Linux does not have any hypervisor mapping entry in guest_os_hypervisor table in cloud database for VMware 6.0. Also observed that the guest_os_name field is incorrect for some SUSE Linux variants, which results in deployed instance (with SUSE Linux) set to guest OS type as "Other (64-bit)" on vCenter, which would not represent the guest OS accurately on hypervisor.

**Fix:**
Add the missing hypervisor mappings
Signed-off-by: Sateesh Chodapuneedi <sateesh.chodapuneedi@accelerite.com>

The current (4.9) list of SUSE Linux guest os in database looks as below,

```
> mysql> select id,display_name from guest_os where display_name like '%suse%';
 +-----+----------------------------------------------+
 | id  | display_name                                 |
 +-----+----------------------------------------------+
 |  40 | SUSE Linux Enterprise Server 9 SP4 (32-bit)  |
 |  41 | SUSE Linux Enterprise Server 10 SP1 (32-bit) |
 |  42 | SUSE Linux Enterprise Server 10 SP1 (64-bit) |
 |  43 | SUSE Linux Enterprise Server 10 SP2 (32-bit) |
 |  44 | SUSE Linux Enterprise Server 10 SP2 (64-bit) |
 |  45 | SUSE Linux Enterprise Server 10 SP3 (64-bit) |
 |  46 | SUSE Linux Enterprise Server 11 (32-bit)     |
 |  47 | SUSE Linux Enterprise Server 11 (64-bit)     |
 |  96 | SUSE Linux Enterprise 8(32-bit)              |
 |  97 | SUSE Linux Enterprise 8(64-bit)              |
 | 107 | SUSE Linux Enterprise 9(32-bit)              |
 | 108 | SUSE Linux Enterprise 9(64-bit)              |
 | 109 | SUSE Linux Enterprise 10(32-bit)             |
 | 110 | SUSE Linux Enterprise 10(64-bit)             |
 | 151 | SUSE Linux Enterprise Server 10 SP3 (32-bit) |
 | 152 | SUSE Linux Enterprise Server 10 SP4 (64-bit) |
 | 153 | SUSE Linux Enterprise Server 10 SP4 (32-bit) |
 | 154 | SUSE Linux Enterprise Server 11 SP1 (64-bit) |
 | 155 | SUSE Linux Enterprise Server 11 SP1 (32-bit) |
 | 185 | SUSE Linux Enterprise Server 11 SP2 (64-bit) |
 | 186 | SUSE Linux Enterprise Server 11 SP2 (32-bit) |
 | 187 | SUSE Linux Enterprise Server 11 SP3 (64-bit) |
 | 188 | SUSE Linux Enterprise Server 11 SP3 (32-bit) |
 | 202 | Other SUSE Linux(32-bit)                     |
 | 203 | Other SUSE Linux(64-bit)                     |
 | 244 | SUSE Linux Enterprise Server 12 (64-bit)     |
 +-----+----------------------------------------------+
 26 rows in set (0.00 sec)

```

The current (4.9) hypervisor mappings for SUSE Linux guest os over VMware 6.0 in database looks as below. We can observe in the below query result, which lists all hypervisor mappings for SUSE Linux guest OS over VMware 6.0, many guest os listed in above query result are missing their mappings for VMware 6.0. Hence the need to add the missing hypervisor mappings.

```
mysql> select o.id,o.display_name, h.guest_os_name, h.hypervisor_version from guest_os as o, guest_os_hypervisor as h where o.id=h.guest_os_id and h.hypervisor_version='6.0' and h.hypervisor_type='vmware' and o.display_name like '%SUSE%';
+-----+----------------------------------+---------------+--------------------+
| id  | display_name                     | guest_os_name | hypervisor_version |
+-----+----------------------------------+---------------+--------------------+
|  96 | SUSE Linux Enterprise 8(32-bit)  | suseGuest     | 6.0                |
|  97 | SUSE Linux Enterprise 8(64-bit)  | suse64Guest   | 6.0                |
| 107 | SUSE Linux Enterprise 9(32-bit)  | suseGuest     | 6.0                |
| 108 | SUSE Linux Enterprise 9(64-bit)  | suse64Guest   | 6.0                |
| 109 | SUSE Linux Enterprise 10(32-bit) | suseGuest     | 6.0                |
| 110 | SUSE Linux Enterprise 10(64-bit) | suse64Guest   | 6.0                |
| 202 | Other SUSE Linux(32-bit)         | suseGuest     | 6.0                |
| 203 | Other SUSE Linux(64-bit)         | suse64Guest   | 6.0                |
+-----+----------------------------------+---------------+--------------------+
8 rows in set (0.00 sec)

```

* pr/1817:
  CLOUDSTACK-9654 Missing hypervisor mapping of various SUSE Linux guest os versions on VMware 6.0

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
Rohit Yadav 2016-12-09 00:38:41 +05:30
commit f03015b25b
1 changed files with 19 additions and 0 deletions

View File

@ -52,3 +52,22 @@ INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervis
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'Xenserver', '6.5.0', 'Ubuntu Trusty Tahr 14.04', 256, utc_timestamp(), 0);
-- Ensure correct guest_os_name for guest OS type 'Windows Server 2008 R2 64-bit' for VMware
UPDATE IGNORE `cloud`.`guest_os_hypervisor` SET guest_os_name = 'windows7Server64Guest' WHERE guest_os_id IN (SELECT id FROM guest_os WHERE display_name LIKE 'windows%2008%r2%64%') AND hypervisor_type = 'VMware' AND hypervisor_version != 'default';
-- Adding hypervisor mappings for SUSE Linux guest OS variants on VMware 6.0
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'slesGuest', 40, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10Guest', 41, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10_64Guest', 42 , utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10Guest', 43, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10_64Guest', 44, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10_64Guest', 45, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11Guest', 46, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11_64Guest', 47, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10Guest', 151, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10_64Guest', 152 , utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles10Guest', 153, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11_64Guest', 154, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11Guest', 155, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11_64Guest', 185, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11Guest', 186, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11_64Guest', 187, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles11Guest', 188, utc_timestamp(), 0);
INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'VMware', '6.0', 'sles12_64Guest', 244, utc_timestamp(), 0);