LATEST VERSION: v1.1 - RELEASE NOTES
Pivotal Container Service v1.1

Configuring a GCP Load Balancer for the PKS API

Page last updated:

This topic describes how to create a load balancer for the PKS API using Google Cloud Platform (GCP).

Before you install PKS, you must configure an external TCP load balancer to access the PKS API from outside the network. You can use any external TCP load balancer of your choice.

Refer to the procedures in this topic to create a load balancer using GCP. If you choose to use a different load balancer, use the configuration in this topic as a guide.

Note: This procedure uses example commands which you should modify to represent the details of your PKS installation.

Step 1: Create a Load Balancer

To create a load balancer using GCP, perform the following steps:

  1. In a browser, navigate to the GCP console.

  2. Navigate to Network Services > Load balancing and click CREATE LOAD BALANCER.

  3. Under TCP Load Balancing, click Start configuration.

  4. Under Internet facing or internal only, select From Internet to my VMs.

  5. Under Multiple regions or single region, select Single region only.

  6. Click Continue.

  7. Name your load balancer. Pivotal recommends naming your load balancer pks-api.

  8. Select Backend configuration.

    • Under Region, select the region where you deployed Ops Manager.
    • Under Backends, select Select existing instances. This will be automatically configured when updating the Resource Config section of the PKS tile.
    • (Optional) Under Backup pool, select a backup pool. If you select a backup pool, set a Failover ratio.
    • (Optional) Under Health check, select whether or not you want to create a health check.
    • Under Session affinity, select a session affinity configuration.
    • (Optional) Select Advanced configurations to configure the Connection draining timeout.
  9. Select Frontend configuration.

    • (Optional) Name your frontend.
    • (Optional) Click Add a description and provide a description.
    • Select Create IP address to reserve an IP address for the PKS API endpoint.
      1. Enter a name for your reserved IP address. For example, pks-api-ip. GCP assigns a static IP address that appears next to the name.
      2. (Optional) Enter a description.
      3. Click Reserve.
    • Under Ports, enter 8443 and 9021. Your external load balancer forwards traffic to the PKS control plane VM using the UAA endpoint on port 8443 and the PKS API endpoint on port 9021.
    • Click Done.
  10. Click Review and finalize to review your load balancer configuration.

  11. Click Create.

Step 2: Create a Firewall Rule

To create a firewall rule that allows traffic between the load balancer and the PKS API VM, do the following:

  1. From the GCP console, navigate to VPC Network > Firewall rules and click CREATE FIREWALL RULE.

  2. Configure the following:

    • Name your firewall rule.
    • (Optional) Provide a description for your firewall rule.
    • Under Network, select the VPC network you created in Step 3: Create a GCP Network with Subnets of Preparing to Deploy PKS on GCP.
    • Under Priority, enter a priority number between 0 and 65535.
    • Under Direction of traffic, select Ingress.
    • Under Action on match, select Allow.
    • Under Targets, select Specified target tags.
    • Under Target tags, enter pks-api.
    • Under Source filter, select IP ranges.
    • Under Source IP ranges, enter 0.0.0.0/0.
    • Under Protocols and ports, select Specified protocols and ports and enter tcp:8443,9021.
  3. Click Create.

Step 3: Install PKS

Follow the instructions in Installing PKS on GCP to deploy PKS. After you finish installing PKS, continue to the following sections to complete the PKS API load balancer configuration.

Step 4: Create a Network Tag for the Firewall Rule

To apply the firewall rule to the VM that hosts the PKS API, the VM must have the pks-api tag in GCP. Do the following:

  1. From the GCP console, navigate to Compute Engine > VM instances.
  2. Locate the your PKS control plane VM.
  3. Click the name of the VM to open the VM instance details menu.
  4. Click Edit.
  5. Verify that the Network tags field contains the pks-api tag. Add the tag if it does not appear in the field.
  6. Scroll to the bottom of the screen and click Save.

Step 5: Create a Wildcard DNS Entry

To create a wildcard DNS entry in GCP for your PKS API domain, do the following:

  1. From the GCP console, navigate to Network Services > Cloud DNS.

  2. If you do not already have a DNS zone, click Create zone.

    • Provide a Zone name and a DNS name.
    • Specify whether the DNSSEC state of the zone is Off, On, or Transfer.
    • (Optional) Enter a Description.
    • Click Create.
  3. Click Add record set.

  4. Under DNS Name, enter a subdomain for the load balancer. For example, to use pks-api.pks.example.com as your PKS API hostname, enter pks-api in this field.

  5. Under Resource Record Type, select A to create a DNS address record.

  6. Enter a value for TTL and select a TTL Unit.

  7. Enter the static IP address that GCP assigned when you created the load balancer in Create a Load Balancer.

  8. Click Create.

Next Steps

After you complete this procedure, follow the instructions in Installing PKS on GCP.


Please send any feedback you have to pks-feedback@pivotal.io.

Create a pull request or raise an issue on the source for this page in GitHub