How to set up virtual host behind a load balancer

Not applicable

Hi,

I am creating a 5 Node topology Apigee Edge private cloud setup. It has 2 servers dedicated for Router/Message Processor.

I want to use a load balancer to split the traffic between the two servers. How should i create the virtual host for this? Should i create two virtual host, one for each of the server and let the load balancer point to both? I am planning on using a single DNS Name/SSL certificate and make both servers HTTPS.

0 2 809
2 REPLIES 2

Configure LB to route the traffic to backend two RMP. It may be TCP port(eg: 9002 port) healthcheck

or

deploy a sample healthcheck (deploy sample hello wold with base path /v1/healthcheck & request lb team to do a healthcheck on (http://rmpserver1.com/v1/healthcheck.com & http://rmpserver2.com/v1/healthcheck) proxy so that it actually sends traffic and validates if rmp are responding - this is more of real test as apposed to doing a port healthcheck.

Once you have LB configure you can use standard procedure to create 1 virtual host pointing to lb depending on your needs.

https://apidocs.apigee.com/management/apis/post/organizations/%7Borg_name%7D/environments/%7Benv_nam...

Will a single Virtual host as given below do the trick or do i need to create individual virtual host for each server first and then one for load balancer after the set up?

<VirtualHost name="ProdVHost">

<Port>443</Port>

<BaseUrl>https://{load balancer DNS name}</BaseUrl>

<OCSPStapling>off</OCSPStapling>

<HostAliases>

<HostAlias>IP1</HostAlias>

<HostAlias>IP2</HostAlias>

</HostAliases>

<Interfaces/>

<RetryOptions>

<RetryOption>off</RetryOption>

</RetryOptions>

<ListenOptions>

<ListenOption>proxy_protocol</ListenOption>

</ListenOptions>

<SSLInfo>

<Enabled>true</Enabled>

<ClientAuthEnabled>false</ClientAuthEnabled>

<KeyStore>myKeystore</KeyStore>

<KeyAlias>myKeystore</KeyAlias>

<IgnoreValidationErrors>true</IgnoreValidationErrors>

</SSLInfo>

<Properties>

<Property name="proxy_read_timeout">50</Property>

<Property name="keepalive_timeout">300</Property>

<Property name="proxy_request_buffering">off</Property>

<Property name="proxy_buffering">off</Property>

<Property name="ssl_protocols">TLSv1.2 TLSv1.1</Property>

<Property name="ssl_ciphers">HIGH:!aNULL:!MD5:!DH+3DES:!kEDH</Property>

</Properties>

</VirtualHost>