Automatic OS deployment
Automatic installation of operating systems on a server is one of DCImanager key features. Due to this feature a customer can get a ready-to-go server right after the payment has been made. Debian 8 or any other popular operating system can normally be installed within 30 minutes.
DCImanager allows adding your own templates, but it also includes over 20 pre-built operating system templates, such as: CentOS 6 and 7; Debian 7 and 8; FreeBSD 9 and 10; Ubuntu 13, 14, 16; Windows Server 2008 and 2012.
OS installation step by step
1. Preparation of an OS template. All files required for TFTP and NFS servers are created and copied.
2. Changes to DHCP and NFS server configuration files are made. DHCP server is restarted, NFS server configuration is applied.
3. The control panel reboots the server.
4. The server is rebooted over PXE and it receives the installer (pxelinux normally) over TFTP.
5. Depending on the OS template, the installer (or the installation script) is executed and it receives configuration from DCImanager via HTTP.
6. The server reports installation completion to DCImanager over HTTP.
Apart from OS templates, DCImanager also uses recipes. Recipes are scripts that can be run for automatic installation of specific software. Recipes can turn a server with a bare operating system into a ready-to-go machine. While OS templates are normally created by the hosting provider, recipes can also be used by the end users.
Let’s introduce an example. A user establishes video conferences by using BigBlueButton. The conferences are established once per four months, and renting a server on a permanent basis would be too costly. In this case, it is much easier to rent a machine right before the conference starts. However, the user would like to avoid spending 1,5 - 2 hours to deploy the required software each time he/she prepares for the conference. Here is where recipes would be very handy.
A script can be installed by simply opening a corresponding menu in the control panel and entering the code. Recipes can be created in any language; the only requirement is a special interpreter on the operating system side.