xCAT is the bare-metal provisioning tool primarily used within VCL. It has the ability to install physical nodes with an operating system such as; windows Red Hat, CentOS, ESX, SLES on x86 based hardware. This guide will discuss adding support to VCL for kickstart based or diskfull installs.
...
The template files used by xCAT reside in /opt/xcat/share/xcat/install/<distro>. distro can be rh, centos, fedora, esx, etc. Make sure to have a working template file. There are several examples in either of the distro directories that can used as a starting point. Once you have a working template, proceed to adding to the VCL database.
The name of the template file and the image.name must match. VCL uses this name to check for and properly load using kickstart method. The xcat name will have the .tmpl, for example the vcl image.name entry of rhel5-base25-v0 the template file for xcat will be rhel5-base25-v0.tmpl.
...
In our sql statement examples we will use RedHat 5 and the image id of 25 as above rhel5-base25-v0. In the below sql statement make any changes as needed such as ownerid, in this example it is set to 1 or the admin user id.
Tip | ||
---|---|---|
| ||
INSERT INTO `image` (id, `name`, `prettyname`, `ownerid`, `platformid`, `OSid`, `minram`, `minprocnumber`, `minprocspeed`, `minnetwork`, |
Tippanel | ||
---|---|---|
| ||
INSERT INTO `imagerevision` (`imageid`, `revision`, `userid`, `datecreated`, `deleted`, `production`, |
Tip | |
---|---|
| |
| |
INSERT INTO `resource` (`resourcetypeid`, `subid`) VALUES (13, 25); |
Again Again, the xCAT template .tmpl file must match the the entry VCL database entry of image.name.
VCL image.name = rhel5-base25-v0 xCAT v0 xCAT template file name = rhel5-base25-v0.tmpl
At this point you will be able to manage this image through the VCL interface.
Test the load, by either making a reservation for the new environment or try to reload a physical node through manage computers computer utilities. Watch the vcld.log file to view the processing and to debug any issues that may occur.
If VCL supports the OS, extending the OS table for a new OS is fairly straight forward. In this example we will use Red Hat 6.
Tip | ||
---|---|---|
| ||
INSERT INTO `OS` (`name`, `prettyname`, `type`, `installtype`, `sourcepath`, `moduleid`) VALUES('rhel6','RedHat Enterprise 6','linux','kickstart','rhel6',(SELECT `id` FROM `module` WHERE `name` LIKE 'os_linux')); |