VDCF Installation Guide
VDCF Installation Guide
Falkensteinstr. 54a
9000 St. Gallen
Switzerland
Installation Guide
for Solaris 11
Version 9.0
12 November 2024
Table of Contents
1 Introduction................................................................................................................................................... 3
1.1 Overview............................................................................................................................................... 4
1.2 Supported Environments...................................................................................................................... 5
2 Installation.................................................................................................................................................... 6
2.1 Prerequisites......................................................................................................................................... 6
2.1.1 Management Server & Solaris...................................................................................................... 6
2.1.2 Network........................................................................................................................................ 6
2.2 Installing the VDCF Framework............................................................................................................ 7
2.2.1 Overview....................................................................................................................................... 7
2.2.2 Download and Installation............................................................................................................. 9
2.3 Upgrading the VDCF Framework....................................................................................................... 10
2.4 Configuring the VDCF Framework...................................................................................................... 11
2.4.1 Automatically setup framework with setup_vdcf..........................................................................11
2.4.2 RBAC and Users........................................................................................................................ 12
2.4.3 Admin Environment.................................................................................................................... 12
3 Customize the VDCF Framework............................................................................................................... 13
3.1 Configuration files............................................................................................................................... 13
3.1.1 customize.cfg.............................................................................................................................. 13
3.1.2 Node partitioning (Solaris 10)..................................................................................................... 14
3.1.3 Disk locations............................................................................................................................. 14
3.2 Cronjob............................................................................................................................................... 15
3.2.1 Runtime States........................................................................................................................... 15
3.2.2 Package Database..................................................................................................................... 15
3.2.3 Physical Node Console (System Controller)...............................................................................15
3.3 System configuration.......................................................................................................................... 16
3.3.1 Required configuration................................................................................................................ 16
3.3.2 Recommended configuration...................................................................................................... 17
3.4 Next Steps.......................................................................................................................................... 18
3.4.1 Import your existing Nodes......................................................................................................... 18
3.4.2 Prepare Environments for installing Nodes.................................................................................18
3.4.3 Deploy vServers......................................................................................................................... 18
3.4.4 Build a Control domain and deploy Guest Domains....................................................................18
4 Appendixes................................................................................................................................................. 19
4.1 Firewall Rules..................................................................................................................................... 19
4.2 Installing VDCF in a non-global zone.................................................................................................. 21
4.2.1 VDCF Management vServer Failover......................................................................................... 22
4.3 VDCF uses the following Free and OpenSource Software (FOSS)....................................................23
1 Introduction
This documentation describes the Virtual Datacenter Cloud Framework (VDCF) for the Solaris 11
Operating System, Version 9.0 and explains how to plan for the product, how to install it and verify that
the installation was successful.
Using VDCF installed on Solaris 11, you are able to manage environments with Solaris 10 and Solaris 11
systems:
1.1 Overview
VDCF is a platform management framework for the Solaris Operating System. VDCF allows you to run a
virtualized data center using Solaris 10 and 11 Containers and/or Logical Domains controlled by a
centralized management server.
With VDCF, JomaSoft offers a tool to simply and effectively operate your Solaris based virtual data
center. On a central management server you create definitions and configuration, which are stored in the
Configuration Repository. This information is then used by VDCF to populate physical servers with a
Solaris build from which virtual servers or logical domains are created.
VDCF is installed in the Global Zone of a Solaris 11 Server. From this server you install and operate your
physical servers (Nodes / Control Domains), Guest Domains and your virtual servers (Containers/Zones).
For VDCF Standard & Enterprise customers the following Extensions are available:
Other environments may only need small enhancements. Send us your request !
2 Installation
2.1 Prerequisites
The Management Server must be installed using Solaris 11 with at least the “small-server” Software
Group (large-server is recommended). VDCF requires additional packages, which will be installed
automatically by the vdcf_install tool.
Typically the VDCF framework is installed in the global zone. It is also supported to install VDCF in a non-
global zone: See Appendix 4.2 (Installing VDCF in a non-global zone) for details and limitations.
2.1.2 Network
A dedicated „Management Network“ is required, which connects the Management Server to the Compute
Server and their system controllers.
2.2.1 Overview
For Standard and Enterprise customers the following Packages are additionally installed
For Enterprise customers the following Packages are available, but not automatically installed
VDCF – High Availability, VDCF – Solaris Cluster and VDCF- Veritas Cluster
This client package is installed automatically by the framework when installing a new compute node:
c) Directories
When installing the base framework for the first time, the required directories and the configuration
repository are initialized. The required ssh key is generated for the root User. The ssh key is used for ssh
connections from the management server to the compute server, when initiating “Remote Execution”.
/export/install/flash This is the default directory where the installation configuration and
the flash archives (builds) for the Solaris 10 nodes are stored.
This directory will be visible through a web server. This directory
is managed through the VDCF framework commands.
/ips/service The default directory where the AI install services for Solaris 11
nodes are stored. This directory contains the boot image and the
install server log files. AI install services are managed through the
VDCF framework command ipsadm.
/ips/repo The default directory where Solaris 11 IPS repositories are stored.
IPS repositories are managed through the VDCF framework
command ipsadm. We recommend to setup at least two repositories.
One for production use (install and update servers) and another one
for testing of new Solaris SRUs.
/var/share/jomasoft This directory contains the configuration data for VDCF and is linked to
/var/opt/jomasoft. Files under /var/share are not part of the boot
environment snapshot when upgrading Solaris 11.
/var/opt/jomasoft/vdcf/config This directory contains the additional packages, custom scripts and files .
used when installing a node or vServer. This directory is managed by the
system administrator.
VDCF can be downloaded as bundles. Based on your License you download the Free Edition, Entry,
Standard or Enterprise bundle. Each bundle contains the packages you are entitled to.
# ./vdcf_bundle/vdcf_install
# ./vdcf_bundle/vdcf_upgrade
In previous VDCF Versions the package SMCsqlite was required. Starting with VDCF Version 6.0 sqlite is
delivered as part of the JSvdcf-base package. The previously required SMC Packages can be removed.
You can configure the framework automatically using the provided setup script.
A good starting point is the use of the setup script to configure initial settings for the framework. This
includes the web server configuration and the needed variables in the configuration (chapter 3.1.1). If you
use the setup script, manually configuration steps for apache should not be needed afterwards, except
there are special requirements needed.
root@vdcf$ /opt/jomasoft/vdcf/mods/setup/setup_vdcf -a
Gathering information...
Getting password hash from /etc/shadow of user root
Looking for hosts management IP address
Modifying /var/opt/jomasoft/vdcf/conf/customize.cfg ...
Creating backup file as /var/opt/jomasoft/vdcf/conf/customize.cfg_2013.09.03-
15.38.04
Setting FLASHPWD to 'TI0G9i/hL43nU'
Setting AI_ADMINPWD to 'TI0G9i/hL43nU'
Setting FLASH_BOOTSERVER_IP to "192.168.20.34"
Setting FLASH_WEBSERVER_URL to "http://192.168.20.34"
Setting FLASH_PUBLIC_WEBSERVER_URL to "http://192.168.20.34"
Setting WEBSERVER_URLS to "192.168.20.0;http://192.168.20.34
default;http://192.168.20.34"
Setting CONFIG_NETMASK_DEFAULT to
"DEFAULT:255.255.255.0,MNGT:255.255.255.0,PUBL:255.255.255.0,BACK:255.255.255
.0"
Setting PATCH_SOURCE_URL to "http://192.168.20.34:3816"
Modifications in /var/opt/jomasoft/vdcf/conf/customize.cfg done.
Configuring apache web server...
VDCF config file /etc/apache2/2.4/conf.d/vdcf.conf not found, creating
Enabling SMF apache24
Apache web server configuration done.
Finished configuration of VDCF environment..
If you have more than one network interface configured on the system, you have to specify the
management interfaces ip address on the command line with '-i <mngt_ip>'.
Apache
A vdcf.conf file is automatically created: /etc/apache2/2.2/conf.d/vdcf.conf
On Solaris 11.4 Apache 2.4 is used: /etc/apache2/2.4/conf.d/vdcf.conf
By default this generated vdcf.conf file allows connection from the same subnet, as the VDCF
management server is using. For Apache 2.2 add additional subnets using the “Allow” clause
Require ip 192.168.40.0/24
VDCF provides the following RBAC profiles, which must be configured for your administration staff.
VDCF Logger required for all users, to be able to log framework messages
VDCF admin Module vdcf administration
VDCF install Module node installation
VDCF node Module node operations
VDCF config Module node and vServer customization
VDCF disks Module disk management
VDCF dataset Module dataset management
VDCF virtual Module vServer management and operations
VDCF ldom Module ldom management and operation
VDCF patches Module patch management for nodes, guest domains and vServers
VDCF computepool Manager computepool management
VDCF computepool User computepool display
VDCF vpool Manager virtualpool management
VDCF vpool User virtualpool display
VDCF serverconfig exec serverconfig execution
VDCF pkg Module package management
VDCF readonly All read only modules (No update functions included)
Add the Profile entries to /etc/user_attr for your administrators. All users with the above RBAC
Profiles are allowed to execute the VDCF commands found in /opt/jomasoft/vdcf/bin.
If you would like to create a VDCF administration user, use the following command
Sample entry:
export PATH=/opt/jomasoft/vdcf/bin:$PATH
export MANPATH=/opt/jomasoft/vdcf/man:$MANPATH
If you have used the setup script described in chapter 2.4.1 these variables should already be set with
correct values. Otherwise you have to set at least all these variables:
export FLASHPWD=''
Here you store the root password set after a node or vServer is installed.
Password must be in shadow format.
export FLASH_WEBSERVER_URL="http://10.1.1.1:80"
Default URL of the configured web server. This URL is used on nodes and vServers
to get the system configuration and flash archive.
export FLASH_PUBLIC_WEBSERVER_URL="http://192.168.0.1:80"
Alternate URL of the configured web server. This URL is required if the target node is in
another network than the management server is. This URL is used on nodes and vServers
to get the system configuration and flash archive.
export FLASH_BOOTSERVER_IP="10.1.1.1"
IP address of your management server
export CONFIG_NETMASK_DEFAULT="DEFAULT:255.255.255.0,MNGT:255.255.255.0,..."
Defines default values for the 'netmask' argument used at vserver -c addnet and
nodecfg -c add
export PATCH_SOURCE_URL="http://10.1.1.1:3816"
URL of your Solaris 10 patch server, usually installed on the VDCF management server
export AI_ADMINPWD=''
Password of admin user. Password must be in shadow format.
The following variables need at least to be modified to suit your needs, even if used the setup script:
export NODE_NET_ALIAS="MNGT:AUTO,PUBL:AUTO,BACK:AUTO,PROBE:AUTO"
Defines the default speed set when configuring new nodes using the nodecfg command.
Allowed speed settings are: AUTO,1000fdx,1000hdx,100fdx,100hdx
export CONFIG_DEFAULTS="server.group=node;server.location=RZ"
Defines default values used when configuring new nodes using the nodecfg -c add
command. server.group defines the default configuration groups and server.location
defines the default location of a node.
export AI_ADMINUSER='admin'
Name of admin user created by AI while installing a Node/vServer.
Node partitioning is configured as a Jumpstart profile. You may modify the default values in
/var/opt/jomasoft/vdcf/conf/partitioning.cfg
For server specific partitioning, for example for older hardware with small disks, you can create a
partitioning configuration file per node. The file name has the following format :
/var/opt/jomasoft/vdcf/conf/<nodename>_partitioning.cfg
To let VDCF know the locations of your data centers and storage systems you should add the qualifiers of
your disk GUIDs to /var/opt/jomasoft/vdcf/conf/disklocation.cfg. You may use the
template file disklocation_template.cfg as base.
More details can be found in Chapter 4.7.4 “Physical disk location” in the VDCF Administration Guide.
3.2 Cronjob
VDCF provides a few prepared crontab entries
The Runtime States (rState) of Nodes and vServers are updated in the VDCF configuration repository
using a cronjob. It is recommended to run the cronjob regularly.
0,15,30,45 * * * * /opt/jomasoft/vdcf/sbin/repos_update -q >/dev/null 2>&1
The Package Database should be updated once a day using the following entry
Check the connection to the System Controllers once a week. This will also update the VDCF repository
after firmware updates.
Base configuration contain the effective system configuration values, for example DNS server ip
addresses. In Server configuration you assign the Base configuration to nodes, vServers or server
groups. A base configuration without a server configuration is useless and makes no sense. Only
configuration data mapped to a server (or a group of server) is applied at installation time!
This chapter describes the required and recommended Base configuration. Check the VDCF
Administration Guide and the manpages of “config” and “serverconfig” for detailed information
about system configuration.
a) SCSI_VHCI
For non-Sun SAN storage, it is required to register the provider SCSI product id. Use the Solaris format
command “inquiry” to display the provider and productid.
For SVM to work properly the following 3 SMF Services must be enabled on all Nodes.
Add the Defaultroute's of your subnets. Replace 'YOURNET' with unique names to identify your
networks.
Use the configuration group <yourgroup> when adding a new node running in this network with
nodecfg -c add.
d) DNS
The following commands are not required for VDCF, but their use is recommended.
c) Users
It is recommended to add the administration users after installing a system.
With VDCF you do this using a script which must be stored in
/var/opt/jomasoft/vdcf/config/script
Sample Script:
#!/bin/ksh
# Script: add_users
# Usage: Adds admin users
add_user() {
typeset username=$1
add_user yourname
4 Appendixes
If your system environment contains firewalls you may have to define firewall rules. These rules are
required for a correct execution of VDCF:
a) Firewall rules between Management Server and Target Nodes or Guest Domains
The following rules are additionally required if you install X86 Nodes (using PXE)
c) Firewall Rules and/or Internet Proxy Settings between Management Server and Internet
These rules are required to connect to the Oracle Solaris IPS repository (for Solaris 11):
d) Firewall rules between Control Domains for Guest Domain Live Migration
The VDCF framework must be installed in the global zone. VDCF uses Jumpstart technologies and
protocols, which are not supported in a non-global zone. Use the VDCF framework in the global zone as
the Engineering environment where you create BootServer environments, install Nodes using a
build.profile and produce Flash archives to define Builds.
VDCF is installable in a non-global zone and as a deployment environment for sparc systems using the
WANBoot technology. In such a deployed environment you define Builds based on the BootServer
environments and archives created in the Engineering environment.
Requirements
You must create a zone, ideally use VDCF on the global zone to create the VDCF non-global zone.
zonecfg -z vdcf1
create
Add the following devices to the zone configuration. This is required because VDCF uses lofiadm to
maintain the WANBoot images.
set fs-allowed=ufs
Don't forget to mark the disks used by this zone as 'FOREIGN' in the VDCF deployment environment!
Or you may import the vServer information into the VDCF deployment environment. Ask JomaSoft
Support for help about this task.
If VDCF is installed in a non-global zone it makes sense to facilitate the failover to another spare node.
You may use the script vserver_local on the source and target Node to easily migrate the VDCF
management vServer.
Requirements
a) VDCF base package must be installed on all potential target Nodes. Keep all VDCF installations on the
same level.
b) Add the vServers dataset and zones base directory information into the config file
/var/opt/jomasoft/vdcf/conf/vserver_local.cfg
Usage
a) If the source node is still active and running: use the detach option of the vserver_local tool:
/opt/jomasoft/vdcf/tools/vserver_local -d <mgmt vServer name>
Caution: Please be aware that the attach function is using import force to attach the datasets. You
should use it only if you are sure that the datasets aren't in use on other nodes!
4.3 VDCF uses the following Free and OpenSource Software (FOSS)
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
3. Neither the name of Django nor the names of its contributors may be used
to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------------
VirtualEnv 15.1
--------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
pexpect 4.2.1 / 4.8
ptyprocess 0.5.2, 0.6.0, 0.7.0
ISC LICENSE
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
--------------------------------------------------------------------------------------
[email protected] VDCF Installation Guide 9.0 / Solaris 11 24 / 27
4 Appendixes
JomaSoft GmbH
Falkensteinstr. 54a
9000 St. Gallen
Switzerland
pytz 2020.4
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
-------------------------------------------------------------------------------------------------
Bootstrap 3.3.7
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
--------------------------------------------------------------------------------------
https://jquery.org/license/
====
====
--------------------------------------------------------------------------------------
MIT license
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
documentation files (the "Software"), to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions
of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.