Origin Pools

Objective

This guide provides instructions on how to create origin pools in VoltConsole using guided configuration that walks you through the steps of configuring meta data to advanced configuration. The origin pools are a mechanism to configure a set of endpoints grouped together into a resource pool that is used in the load balancer configuration. To know more concepts about the endpoints and loadbalancer, see Load Balancing and Service Mesh.

The origin pools offer the following:

  • Configures endpoints to be discovered
  • Defines load balancing between discovered endpoints
  • Creates health checks for discovered endpoints
  • Specifies TLS capabilities of/to the endpoints discovered

Using the instructions provided in this guide, you can create an origin pool of resources. The origin pool then can be attached to a load balancer configuration. You can also create and attach origin pool while creating a load balancer. For more information, see HTTP Load Balancer. The instructions provide in this guide cover creating origin pools separately.

Note: You can also create each endpoint individually and use it in a virtual host. For more information, see Configure Endpoint.

Prerequisites

The following prerequisites apply:

  • Volterra Account

  • A valid DNS domain delegated to Volterra.

    • Note: For instructions on how to delegate your domain to Volterra, see Delegate Domain.
  • A Volterra CE site in case of deploying your applications on CE site.

    • Note: If you do not have a site, create a site using the instructions included in the Site Management guides. See vK8s Deployment guides to deploy your applications on Volterra network cloud or edge cloud.

Configuration

The configuration option to create the origin pool guides you through the steps for required configuration. This document covers each guided step and explains the required actions to be performed for each step.

Note: The origin pool for a vK8s or managed K8s service must be created in the same namespace as the service, so that the services can be discovered and advertised.

Step 1: Log into the VoltConsole and navigate to the origin pool configuration.

Change to your application namespace. Select Manage in the configuration menu and Origin Pools in the options.

NavMan
Figure: Navigation through Manage Menu

Step 2: Start the origin pool creation and enter metadata.
  • Click Add Origin Pool to open the origin pool creation form
  • Enter a name in the Metadata section.
  • Optionally, add labels and enter a description for your origin pool.
Step 3: Configure the origin servers.

Select from the left menu or scroll to the Basic Configuration section and perform the following:

  • In the Select Type of Origin Server field, select a type of origin server as per the following guidelines:

    • Select Public IP of Origin Server to specify the origin server with its public IP address. Enter the IP address in the Public IP field.
    • Select IP address of Origin Server on given Sites to specify the origin server with its private or public IP address. Enter the IP address in the IP field. Select Site or Virtual Site option in the Select Site or Virtual Site field. Select a site or virtual site according to the displayed Site or Virtual Site fields. Select inside or outside network option for the Select Network on the site field.
    • Select Public DNS Name of Origin Server to specify the origin server with its public DNS name. Enter the DNS name in the DNS Name field.
    • Select DNS Name of Origin Server on given Sites to specify the origin server with its private or public DNS name. Enter the DNS name in the DNS Name field. Select Site or Virtual Site option in the Select Site or Virtual Site field. Select a site or virtual site according to the displayed Site or Virtual Site fields. Select inside or outside network option for the Select Network on the site field.
    • Select k8s Service Name of Origin Server on given Sites to specify the origin server with its K8s service name. Enter the service name in the Service Name field. Select Site or Virtual Site option in the Select Site or Virtual Site field. Select a site or virtual site according to the displayed Site or Virtual Site fields. Select inside or outside network option for the Select Network on the site field.
    • Select Consul Service Name of Origin Server on given Sites to specify the origin server with its consul service name. Enter the service name in the Service Name field in the <servicename.k8snamespace> format. Select Site or Virtual Site option in the Select Site or Virtual Site field. Select a site or virtual site according to the displayed Site or Virtual Site fields. Select inside or outside network option for the Select Network on the site field.

      Note: See Discovery - Hashicorp Consul for information on how to discover consul services.

    • Select Custom Endpoint Object for Origin Server to specify the origin server as an endpoint. Select an endpoint from the drop-down list of the Endpoint field. An existing endpoint object is required for this.

Note: You can use Add item option to add more than one origin server.

  • Enter a port number in the Port field, select an option for the LoadBalancer Algorithm and Endpoint Selection fields.

This example shows the origin server with the K8s service name.

OrigPools
Figure: Origin Server Configuration with K8s Service Name

Step 4: Optionally, configure healthchecks.
  • Select from the left menu or scroll down to the List of Health Check(s) section.
  • Select an existing healthcheck object or Create new healthcheck from the drop-down list of the Health Check object field.
  • In case of creating new healthcheck, perform the following:

    • Enter a name. Optionally set labels and add a description in the metadata section.
    • Click Edit under the HTTP HealthCheck field in the HTTP HealthCheck Parameters section.
    • Select an option for the Specify Host Header field and select an option for the Path field. Optionally, click to enable the Use HTTP2 field. Click Apply.
    • Enter values in seconds for the Timeout and Interval fields.
    • Enter number of unhealthy and healthy threshold attempts for the Unhealthy Threshold and Healthy Threshold fields respectively.

hcs
Figure: Create Health Check

  • Click Continue to create healthcheck and apply to the origin pool healthcheck object list.
Step 5: Optionally, set TLS configuration.

Select from the left menu or scroll down to the TLS Configuration section and perform the configuration as per the following guidelines:

  • Select TLS for the Enable TLS for Origin Servers field.
  • Enter an SNI in the SNI Value field. You can disable SNI selection by selecting No SNI for the SNI Selection field.
  • Select a security level for the Select TLS security field. High security is selected by default.
  • Enter a trusted CA URL in the Trusted CA URL field. You can enter it in ASCII or Base64 or JSON or YAML formats by choosing those options. You can also skip origin server verification by selecting Skip Origin Server Verification in the Origin Server Verification field.
  • Optionally, enable MTLS by selecting it in the MTLS with Origin Servers field. Click Configure to open the TLS certificates configuration form.

    • Click Add item in the TLS Certificates form.
    • Enter the TLS certificate in the Certificate field. You can enter it in ASCII or Base64 or JSON or YAML formats by choosing those options.
    • Click Configure under the Private Key field. Enter your private key in the secret form input field. Ensure that the Type field is set to Text. Click Blindfold and wait for the secret to get encrypted. Click Apply.
    • Click Apply in the TLS certificates form.

hcs
Figure: TLS Configuration

Step 6:Complete origin pool creation.

Click Save and Exit to create origin pool.


Concepts


API References