To connect the blueprint design server to an OpenStack-based cloud, extend the Heat
orchestration engine that is associated with the cloud. By extending the engine, you add custom
types to it so that you can use it with the blueprint design server.
Before you begin
- To connect to a non-OpenStack-based cloud, install an engine with IBM® UrbanCode™ Deploy. See Installing engines in interactive mode or Installing engines in silent mode.
- You must have an OpenStack Heat orchestration engine that is connected to a Keystone service.
The engine must be at the Icehouse, Juno, Kilo, Liberty, Mitaka, or Newton level. The engine and
Keystone service are required regardless of the type of cloud that you use. If you do not have an
engine, you can install one that includes the custom types and is connected to a Keystone service.
See Installing engines.
- Make sure that your system meets the system requirements. See System requirements and performance considerations.
- Root access is required for installation.
- The operating system must be configured with required packages and
dependencies before you install the engine. The system might need network access to
install these packages. Make sure that the system is connected to a package manager, such as a Yum
server.
- Enable the optional "rhel-7-server-optional-rpms" repository.
- Determine whether the akonadi package is installed on the
system.
rpm -ql akonadi
- If the akonadi package is installed, remove
it:
yum remove -y akonadi
- Determine whether the program qpid is installed on the system.
- If the program qpid is running on the system, stop its service.
Procedure
- Download and extract the installation files for the engine. These files are available for download from the IBM
Passport Advantage® website. See the IBM UrbanCode Deploy download document.
- Change to the /ibm-ucd-patterns-install/engine-install/ directory.
- From the command line, run the ./extend-existing-engine.sh
command.
Note: - If you have an OpenStack-based cloud, and you want to install the IBM UrbanCode Deploy plug-in, run the ./extend-ucd-existing-engine.sh command to avoid conflicts
with your Heat engine.
- If you want to use cloud-ext package, it is suggested that you use the provided
heat engine that comes with IBM UrbanCode Deploy blueprint designer.
- The installer asks if you have satisfied the dependencies. If you configured the system
with the prerequisites for the engine, press Y.
- Read the license agreements for the software package. Press Space to show one page at a
time, or press F to show the entire license.
- If you agree to the terms of all of the license agreements, press Y,
and then press Enter.
- Optional: If you use a Kilo-level Heat engine and apply Chef roles to environments, modify the engine to
be compatible with Chef. Run the following
commands:
sed -i '125,127 s/^/#/' /usr/lib/python2.7/site-packages/heat/engine/resources/openstack/heat/software_deployment.py
sed -n '125,127p' /usr/lib/python2.7/site-packages/heat/engine/resources/openstack/heat/software_deployment.py
The following text is displayed in the command
line:# constraints=[#
constraints.CustomConstraint('nova.server')# ]
- Restart the engine and the Heat API. See the documentation for your cloud system.
- Verify that the new resource types are available in the engine by running the following
command:
heat resource-type-list
If you see resource types that start
with IBM::EC2 and IBM::UrbanCode, such as
IBM::EC2::Port and
IBM::UrbanCode::SoftwareDeploy::UCD, you correctly added the required
types to the engine.
Results
The engine is configured to work with the blueprint design server.
What to do next
Install a blueprint design server.