vCloud Availability for vCloud Director: Part 4: Installing Cloud Proxy for vCD

By | 09/09/2018

In last post of this series we deployed the VCAV appliance and discussed that it will be configured later once we are done with deployment of all the other needed components.

In this post we will add a vCloud proxy cell to an existing vCloud Director environment.

If you are not following along this series, then I recommend reading earlier posts of this series from below links:

1: vCloud Availability Introduction

2: vCloud Availability Architecture & Components

3: VCAV Deployment

What is Cloud Proxy ?

As per VMware documentation:

The Cloud Proxy is a standalone, optional component of vCloud Director that can act as a generic Transmission Control Protocol (TCP) connection proxy. It supports forwarding incoming TCP connections and listening incoming connections.

The Cloud Proxy creates virtual connections for data to travel from the on-premise to the service provider (cloud) site and reverse. 

For installing Cloud Proxy, you should have your vCD environment already deployed and fully configured. I am not covering the steps for vCD installation as I have wrote several articles on it in past. 

For vCD 9.X installation, please refer this article and if you are planning for multi-cell vCD deployment then steps for doing the same are documented here. Although steps are for vCD 8.x version but it works for 9.x version as well.

Cloud Proxy is installed in the same way as vCD is installed and you need the same setup file using which you deployed vCloud director.

Cloud Proxy Deployment Steps

In my lab I deployed a brand new CentOS 7 vm and configured 2 interfaces on the vm because vCD installer looks for 2 NIC’s in the server when you invoke vCD configuration script.

cldprxy-1.PNG

Also I verified my Networking/DNS settings by pinging the vCD cells and other vCD components. 

cldprxy-2.PNG

Also I verified that my Cloud Proxy vm is harmonizing its time from my NTP server.

For lab deployment I disabled firewalld service and SELinux on this vm.

Next thing is to copy the vCD installation file, response.properties and the certificate file from primary vCD cell to the newly deployed Cloud Proxy machine. Also set appropriate permissions on the file

Run vCD Installer and press ‘n’ to not to start configuration. 

Also don’t start vmware-vcd service yet.

cldprxy-3.PNG

SSH to the Cloud Proxy machine and copy the response.properties file from /root to /opt/vmware/vcloud-director/etc/ directory and make vcloud user owner of that file.

To copy the certificate file to appropriate location, we need to find out the correct path from the response.properties file.

[root@vcd-cldprxy01 etc]# cat responses.properties | grep user.keystore.path

user.keystore.path = /opt/vmware/vcloud-director/vcd-cert.ks

So the path where certificate file (vcd-certs.ks) should be /opt/vmware/vcloud-director/

Mount NFS Storage

Mount the same NFS storage to Cloud Proxy VM which was mounted on vCD cell.

[root@vcd-cldprxy01 ~]# echo 192.168.109.33:/data/ /opt/vmware/vcloud-director/data/transfer nfs defaults 0 0 >> /etc/fstab

Run mount -a command and verify NFS storage is mounted correctly

Once NFS is mounted and response.properties and certificate files are in place, invoke the vCD configuration script by typing:  /opt/vmware/vcloud-director/bin/configure -r /opt/vmware/vcloud-director/etc/responses.properties

Select the IP for http and console proxy service.

Note: Do not start vcd service yet. 

cldprxy-4.PNG

Specialize a vCloud Director cell to become a dedicated Cloud Proxy cell

Edit gobal.properties file and enter com.vmware.cell.runtime.application = com.vmware.vcloud.cloud-proxy-server.cloudProxyApplication 

[root@vcd-cldprxy01 ~]# echo com.vmware.cell.runtime.application = com.vmware.vcloud.cloud-proxy-server.cloudProxyApplication >> /opt/vmware/vcloud-director/etc/global.properties

Now start vmware-vcd service 

[root@vcd-cldprxy01 ~]# service vmware-vcd start

and tail the cell.log to verify service has been initialized correctly.

For high availability of Cloud Proxy, you can deploy more than one instance and then load balance it. 

Once vmware-vcd service is 100% initialized and cloud proxy starts showing up under cells in  vCD UI, connect to VCAV appliance via SSH and run following commands in sequence:

1: Create a protected password files on your vCloud Availability Installer Appliance in the ~/.ssh directory.

Note: vcd-password is the password of admin user of vCloud Director

root@mgmt-vcav [ ~ ]# find ~/.ssh -type f -name ‘.*’ -print0 | xargs -0 chmod 0600

2: To see the currently configured Cloud Proxy address, run the following command

The vCloud Availability Installer Appliance will return the following message.

wss://192.168.109.30/socket/cloudProxy

Note: In above command –vcd-address is the address of vcd cell and not the cloud proxy cell

3: Integrate VCAV with Cloud Proxy by running following command 

root@mgmt-vcav [ ~ ]# vcav vcd set-cloud-proxy –to-the-cloud-address=vcd-cldprxy01.alex.local –vcd-address=192.168.109.30 –vcd-user=admin –vcd-password-file=~/.ssh/.vcd

If configuration is successful, you will see an OK message on your screen.

Important:

1: Do not try to clone the primary vCD cell to be used as Cloud Proxy. Always deploy a new VM and configure it as Cloud Proxy else you might run into issue mentioned in KB-53172

2: Do not start vmware-vcd service until you have invoked the configuration script using response.properties file and modified global.properties file to make cell as dedicated cell for cloud proxy.

And that’s it for this post. In Next post of this series we will configure VCAV appliance to integrate with Cloud Proxy server.

I hope you enjoyed reading this post. Feel free to share this on social media if it is worth sharing. Be sociable :)