To add a blueprint design server to a cluster, connect it to the shared database and
network storage. Then, configure the load balancer to send traffic to it.
Before you begin
- Set up a cluster of blueprint design servers, including setting up a load balancer,
shared database, and network storage. See Setting up clusters of blueprint design servers.
- Each blueprint design server must run the same version of IBM® UrbanCode™ Deploy.
About this task
You can add many blueprint design server nodes to the cluster as you need. Each node
includes the blueprint designer and the cloud discovery service.
Procedure
- On the new node, install the blueprint design server as described in Installing the blueprint design server,
with the following settings.
- For the public address of the system, specify the IP address of the load
balancer.
- Do not use SSL encryption.
- When asked whether you want to create the database schema, say yes if this is the
first blueprint design server node or no if it is not.
- For the database, specify the shared blueprint design server database.
Important: Do not start the blueprint design server or cloud discovery service
yet.
- Mount the shared folders on the network storage to the following locations:
- /opt/ibm-ucd-patterns/repositories
- /opt/ibm-ucd-patterns/workspace
For example, if you are using NFS for the network storage on the
nfs-host.example.com host name, run the following commands to install
NFS and mount the shared folders:-
yum -y install nfs-utils nfs-utils-lib
-
service rpcbind start
-
chkconfig nfs on
-
service nfs start
-
mount -t nfs
nfs-host.example.com:/opt/ibm-ucd-patterns/workspace /opt/ibm-ucd-patterns/workspace
-
mount -t nfs
nfs-host.example.com:/opt/ibm-ucd-patterns/repositories /opt/ibm-ucd-patterns/repositories
Then, verify that the folders are mounted by running the following
command:mount | grep nfs
If the node cannot access the folders, make
sure that the node is authorized to access the folders in the
/etc/exports file on the network storage.
- Start the cloud discovery service.
- Start the blueprint designer.
- Configure the load balancer to send traffic on the following ports to the new
node:
- 8080, or the HTTP port that you specified when you installed the blueprint design
server
- 7575, for the cloud discovery service
For example, if you are using HAProxy, the configuration file might have code that
is similar to the following snippets. In this code, it is assumed that the blueprint
design server nodes have these host names: designer1.example.com,
designer2.example.com, and
designer3.example.com.frontend ucdp
bind *:8080
default_backend ucdp_back
frontend cds
bind *:7575
default_backend cds_back
backend ucdp_back
balance roundrobin
server designernode1 designer1.example.com:8080 check
server designernode2 designer2.example.com:8080 check
server designernode3 designer3.example.com:8080 check
option httpchk OPTIONS /
option forwardfor
option http-server-close
appsession JSESSIONID len 52 timeout 3h
backend cds_back
balance roundrobin
server designernode1 designer1.example.com:7575 check
server designernode2 designer2.example.com:7575 check
server designernode3 designer3.example.com:7575 check
option httpchk
- Verify that the load balancer is sending traffic to the new node. For example, if HAProxy is installed on a system with the host
name ucd-patterns.example.com, you can go to the following URL to see the
status of the nodes:
http://ucd-patterns.example.com:1936/haproxy?stats
- Verify that the new blueprint designer node is connected to the cluster by creating a
blueprint and verifying that the blueprint is included on the network storage.
- Go to
http://ucd-patterns.example.com:8080/landscaper
in a web browser.
- In the default repository, create a blueprint, and verify that you can edit the
blueprint.
- On the network storage, find the blueprint file to verify that it is stored on the
network storage. The default location for blueprints in the default repository is
/opt/ibm-ucd-patterns/workspace/repositories/initials/username_userid/OrionContent/default, where:
- initials is the first two letters of the
user name
- username is the user name that you used
to create the blueprint
- userid is the unique ID of the user
- In the Internal-Team repository, create another blueprint.
- On the network storage, find the blueprint file to verify that it is stored on the
network storage. The default location for blueprints in the Internal-Team repository is
/opt/ibm-ucd-patterns/workspace/repositories/initials/username_userid/OrionContent/Internal-Team, where:
- initials is the first two letters of the
user name
- username is the user name that you used
to create the blueprint
- userid is the unique ID of the user
- On the Repository tab, push the new Internal-Team blueprint
to the team repository.
- Verify that the blueprint exists in the Gitblit repository by going to the URL
http://ucd-patterns.example.com:8080/gitblit/summary/Internal-Team.git
in a web browser. The default user name and password are gitadmin.
Results
The blueprint design server is part of the cluster.