vCloud Director: Share Console Proxy IP with UI/API IP Address

New vCloud DIrector 8.10 (read eight dot ten) is out and with it some little neat features. Let me quickly talk about one of them – the ability to run vCloud Director cell with just 1 IP address.

In the past you always had to configure vCloud Director cell at least with two IP addresses. One for the web interface (providing UI and API) and the other for remote console proxy. The reason was that both services shared the same port 443. In vCloud Director 8.10 there is possibility to specify ports for each service and thus use just one IP address. This helps if your DMZ subnet is too small and you need to deploy more VMs into that network (more cells, databases, etc.).

Note that the configure script will not ask you for ports, instead you need to use unattended installation option or add port entries afterward in global.config file.

Unattended Installation

Here is the example of configure parameters that sets console proxy to the same IP address as http (10.0.1.60) and uses port 8443 instead of the standard 443:


/opt/vmware/vcloud-director/bin/configure" -cons 10.0.1.60 --console-proxy-port-https 8443 -ip 10.0.1.60 --primary-port-http 80 –-primary-port-https 443 -dbhost 10.0.4.195 -dbport 1433 -dbtype sqlserver -dbinstance MSSQLSERVER -dbname vcloud -dbuser vcloud -dbpassword 'VMware1!' -k /opt/vmware/vcloud-director/etc/certificates.ks -w 'passwd' -loghost 10.0.4.211 -logport 514 -g --enable-ceip true -unattended

Global Properties

An alternative option is to edit the /opt/vmware/vcloud-director/etc/global.properties file and add new port entries:

Before:


...
product.version = 8.10.0.3879706
product.build_date = 2016-05-12T20:32:07-0700
vcloud.cell.ip.primary = 10.0.1.60
consoleproxy.host.https = 10.0.1.61
...

After


...
product.version = 8.10.0.3879706
product.build_date = 2016-05-12T20:32:07-0700
vcloud.cell.ip.primary = 10.0.1.60
consoleproxy.host.https = 10.0.1.60
consoleproxy.port.https = 8443
vcloud.http.port.standard = 80
vcloud.http.port.ssl = 443
...

Do not forget to reconfigure your loadbalancer remote console pool to point to the new IP-port combination.

7 thoughts on “vCloud Director: Share Console Proxy IP with UI/API IP Address

  1. Hi Tomas,
    Thanks for your blog always very detailed.
    Regarding this post, and this setup , how do you setup the “public addresses” in vCD UI ? It doesn’t accept specifying a port in the URL …
    Thanks

      1. Thanks Tom. So this means that you still need 2 public IPs.
        PS: I was interested in this setup for my lab where I have no LB in front. I’ll manage it, it’s ok.
        Thanks again

      2. Hi Tomas, Deb,
        why should I use 2 IPs with default ports? Ok for Console since you cannot choose the port on the browser, but if you leave the RC to the default 443, you could use 8443 and 80 for web, and you’re done with just a public IP as well, am I wrong?

        1. vCloud Administrator UI will not allow you to specify ports for public IP addressees. It assumes defaults (80 and 443). It is however possible to change it with vCloud API.

  2. Tom, again me for an info coming from VMware support: I’ve been told that RC MUST be set on default port 443 to run. Not a requisite for http and https, but that is mandatory.
    If so, I should modify your string in:

    /opt/vmware/vcloud-director/bin/configure” -cons 10.0.1.60 –console-proxy-port-https 443 -ip 10.0.1.60 –primary-port-http 80 –-primary-port-https 8443 -dbhost 10.0.4.195 -dbport 1433 -dbtype sqlserver -dbinstance MSSQLSERVER -dbname vcloud -dbuser vcloud -dbpassword ‘VMware1!’ -k /opt/vmware/vcloud-director/etc/certificates.ks -w ‘passwd’ -loghost 10.0.4.211 -logport 514 -g –enable-ceip true –unattended

    inverting 8443 and 443 between RC and web: am I right?
    Thank you
    Raff

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.