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
- 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 the engine. If your OpenStack Heat orchestration engine is not connected
to a Keystone service, you must connect to it to a Keystone service. See Connecting engines to Keystone servers..
- The upgrade-standalone-ucd-heat-engine.sh script can only be used with the
provided heat engine that comes with IBM UrbanCode Deploy blueprint designer. It installs both the IBM UrbanCode Deploy plug-in and the ibm-cloud-ext package
- In the case that you are using OpenStack Newton or higher, you must diable the Heat convergence
mode before installing the plugins. Open the heat.conf file
(/etc/heat/heat.conf), and set convergence_engine to
False. Then, restart the Heat engine services by running the
systemctl stop and start commands.
Before you install the engine, ensure that you do the following steps:
- 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.
About this task
To deploy environments to OpenStack clouds and clouds that are based on OpenStack, you
install the blueprint design server and extend the Heat engine that is associated to the cloud. In
this case, you do not use the Heat engine that comes with
IBM UrbanCode Deploy.
To extend a Heat orchestration engines for the blueprint design server, do the following
steps:
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-ucd-existing-engine.sh command to
install the IBM UrbanCode Deploy plug-in.
- 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::UrbanCode, such as 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.