IBM Support

Blueprint designer does not load after changing system host name

Troubleshooting


Problem

When you change the host name of the system that the IBM UrbanCode Deploy blueprint designer is installed on, you must specify the new host name in multiple locations.

Symptom

The IBM UrbanCode Deploy blueprint designer does not load after you change the name of the system host.

Resolving The Problem

If your installation meets the following criteria, you can follow the steps below, including running the provided scripts:

  • You use an Icehouse or Juno Heat engine.
  • The IBM UrbanCode Deploy blueprint designer and IBM UrbanCode Deploy server are installed on the same computer that uses a Linux operating system. The Heat engine is installed on another computer.
  • The IBM UrbanCode Deploy blueprint designer and IBM UrbanCode Deploy server use MySQL databases, and the MySQL client is installed on the computer.

If your installation does not met all these criteria, you must modify or replace the scripts. For example, if you do not use MySQL databases, manually update the blueprint designer system settings or contact your database administrator. If your IBM UrbanCode Deploy blueprint designer and IBM UrbanCode Deploy server are not installed on the same computer, do not modify the UrbanCode Deploy database or update the UrbanCode Deploy URL in the blueprint designer.

Procedure:

On the computer that is running the Heat engine, complete the following steps:

  1. To set the keystone variables, run the following command:
    source ~/keystonerc

  2. To obtain the ID of the identity service endpoint, run the following command:
    keystone service-list | awk '/ identity / {print $2}'

  3. From the command line, run the following command for each identity service endpoint ID:
    keystone endpoint-create \
    --service-id=
    identity_service_endpoint_id \
    --publicurl=http://
    new_hostname:5000/v2.0 \
    --internalurl=http://
    new_hostname:5000/v2.0 \
    --adminurl=http://
    new_hostname:35357/v2.0


  4. To verify the new endpoint, run the following command:
    keystone endpoint-list

  5. To restart the OpenStack services, run the following command:
    cd /etc/init.d; for services in `ls openstack*`; do service $services restart; done; cd -

  6. In the ~/clientrc and ~/keystonerc files, replace all references to the old host name with the new host name.

  7. From the command line, run the following command:
    source clientrc ; heat stack-list

  8. Run the following script. Be sure to provide your new host name in the CLOUD_API_HOSTNAME=new_hostname line.

  9. #!/bin/sh
    ### BEGIN INIT INFO
    # Provides: update-hostname-configs
    # Required-Start:   $syslog $local_fs $remote_fs $network urbancode-blueprint-designer openstack-heat-api openstack-heat-engine
    # Required-Stop:    $syslog $local_fs $remote_fs $network
    # Default-Start:    2 3 4 5
    # Default-Stop:     0 1 6
    # Short-Description: Update configuration settings which are dependent on networking.
    ### END INIT INFO

    CLOUD_API_HOSTNAME= new_hostname

    IFC=$(ifconfig | grep '^[a-z0-9]' | awk '{print $1}' | grep -e ns -e eth0)
    IP_ADDRESS=$(ifconfig $IFC | grep 'inet addr' | awk -F : {'print $2'} | awk {'print $1'})
    echo "This node has an IP of " $IP_ADDRESS

    echo "Update Heat config..."
    HEAT_CONFIG=/etc/heat/heat.conf
    sed -i "s/\(heat_metadata_server_url=\).*\$/\1http:\/\/${IP_ADDRESS}:8000/" $HEAT_CONFIG
    sed -i "s/\(heat_waitcondition_server_url=\).*\$/\1http:\/\/${IP_ADDRESS}:8000\/v1\/waitcondition/" $HEAT_CONFIG
    sed -i "s/\(heat_watch_server_url=\).*\$/\1http:\/\/${IP_ADDRESS}:8003/" $HEAT_CONFIG
    sed -i "s/\(url=\).*\$/\1http:\/\/${IP_ADDRESS}:8004\/v1\/\%\(tenant_id\)s/" $HEAT_CONFIG
    sed -i "s/\(allowed_auth_uris=\).*\$/\1http:\/\/${CLOUD_API_HOSTNAME}:5000\/v2.0/" $HEAT_CONFIG

     
    echo "Restarting services..."
    service openstack-heat-engine restart
    service openstack-heat-api restart
    service openstack-heat-api-cfn restart
    service openstack-heat-api-cloudwatch restart

    echo "Done."




On the computer that is running the UrbanCode Deploy server and blueprint designer, complete the following steps:

  1. To stop the web designer, run the following command:
    server_installation_directory/bin/server stop

  2. Run the following script. Be sure to provide your new host name in the CLOUD_API_HOSTNAME=new_hostname line. In the following code, secure access to UrbanCode Deploy blueprint designer is through port 8443, secure access your UrbanCode Deploy server is through port 9080. Additionally, the IBM UrbanCode Deploy server uses a MySQL database named ibm_ucdp, and the mysql user root uses this password: passw0rd.

  3. #!/bin/sh
    ### BEGIN INIT INFO
    # Provides: update-hostname-configs
    # Required-Start:   $syslog $local_fs $remote_fs $network urbancode-blueprint-designer openstack-heat-api openstack-heat-engine
    # Required-Stop:    $syslog $local_fs $remote_fs $network
    # Default-Start:    2 3 4 5
    # Default-Stop:     0 1 6
    # Short-Description: Update configuration settings which are dependent on networking.
    ### END INIT INFO

    CLOUD_API_HOSTNAME= new_hostname

    IFC=$(ifconfig | grep '^[a-z0-9]' | awk '{print $1}' | grep -e ns -e eth0)
    IP_ADDRESS=$(ifconfig $IFC | grep 'inet addr' | awk -F : {'print $2'} | awk {'print $1'})
    echo "This node has an IP of " $IP_ADDRESS

    echo "Update Blueprint Designer config..."
    WEB_GITBLIT_CONFIG=/opt/ibm-ucd-patterns/opt/tomcat/webapps/gitblit/WEB-INF/data/gitblit.properties
    sed -i "s/\(realm\.ucdp\.url=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/landscaper/" $WEB_GITBLIT_CONFIG

    REPO_GITBLIT_CONFIG=/opt/ibm-ucd-patterns/repositories/gitblit/data/gitblit.properties
    sed -i "s/\(realm\.ucdp\.url=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/landscaper/" $REPO_GITBLIT_CONFIG

    BLUEPRINT_SERVER_CONFIG=/opt/ibm-ucd-patterns/conf/server/server.properties
    sed -i "s/\(com\.ibm\.landscaper\.gitblit\.url=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/gitblit/" $BLUEPRINT_SERVER_CONFIG
    sed -i "s/\(install\.server\.web\.host=\).*\$/\1${IP_ADDRESS}/" $BLUEPRINT_SERVER_CONFIG
    sed -i "s/\(public\.url=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/landscaper/" $BLUEPRINT_SERVER_CONFIG
    sed -i "s/\(server\.external\.web\.url=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/landscaper/" $BLUEPRINT_SERVER_CONFIG

    echo "Update blueprint designer remote systems clients config..."

    VERSIONED_FILESYSTEM_CLIENT=/opt/ibm-ucd-patterns/conf/server/versioned-filesystem-client.properties
    sed -i "s/\(versioned\-filesystem\-client\.ribbon\.listOfServers=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/landscaper/" $VERSIONED_FILESYSTEM_CLIENT

    ENGINE_SERVICES_CLIENT=/opt/ibm-ucd-patterns/conf/server/engine-services-client.properties
    sed -i "s/\(engine\-services\-client\.ribbon\.listOfServers=\).*\$/\1https:\/\/${IP_ADDRESS}:7575/" $ENGINE_SERVICES_CLIENT

    UCDP_ADMIN_GIT_REPO=/opt/ibm-ucd-patterns/workspace/repositories/uc/ucdpadmin_00000000_0000_0000_0000_000000000002/OrionContent/Internal-Team/.git/config
    sed -i "s/\(url.*=\).*\$/\1https:\/\/${IP_ADDRESS}:8443\/gitblit\/r\/Internal\-Team.git/"
    echo "Update blueprint designer database..."

    mysql -u root -ppassw0rd -D ibm_ucdp -e "update ps_prop_value set value=\"http://$CLOUD_API_HOSTNAME:5000/v2.0\" where name=\"url\""
    mysql -u root -ppassw0rd -D ibm_ucdp -e "update ps_prop_value set value=\"http://$IP_ADDRESS:9080\" where name=\"com.ibm.landscaper.ucdeploy.url\""
    mysql -u root -ppassw0rd -D ibm_ucdp -e "update ps_prop_value set value=\"https://$IP_ADDRESS:8443/landscaper\" where name=\"public.url\""
    mysql -u root -ppassw0rd -D ibm_ucdp -e "update ps_prop_value set value=\"http://$IP_ADDRESS:7575\" where name=\"engine-services-client.ribbon.listOfServers\""
    mysql -u root -ppassw0rd -D ibm_ucdp -e "update ps_prop_value set value=\"http://deploy-with-patterns:8443/gitblit\" where name=\"com.ibm.landscaper.gitblit.url\""

    echo "Done."

    echo "Update UrbanCode Deploy URL on the blueprint designer..."

    CONFIG_CLIENT=/opt/ibm-ucd-patterns/conf/server/config.properties
    sed -i "s/\(com\.ibm\.landscaper\.ucdeploy\.url=\).*\$/\1http:\/\/${IP_ADDRESS}:9080/" $CONFIG_CLIENT


    echo "Update UrbanCode Deploy database..."

    mysql -u root -ppassw0rd -D ibm_ucd -e "update ps_prop_value set value=\"http://$IP_ADDRESS:9080\" where name=\"server.external.web.url\""
    mysql -u root -ppassw0rd -D ibm_ucd -e "update ps_prop_value set value=\"http://$IP_ADDRESS:9080\" where name=\"server.external.user.url\""



  4. To start the web designer, run the following command:
    server_installation_directory/bin/server start

[{"Product":{"code":"SS4GSP","label":"IBM UrbanCode Deploy"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"General Information","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF016","label":"Linux"},{"code":"PF022","label":"OS X"},{"code":"PF033","label":"Windows"},{"code":"PF035","label":"z\/OS"}],"Version":"6.1.3;6.2","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
17 June 2018

UID

swg21970736