Creating a GCP Load Balancer for the PKS API

Page last updated:

Warning: VMware Enterprise PKS v1.6 is no longer supported because it has reached the End of General Support (EOGS) phase as defined by the Support Lifecycle Policy. To stay up to date with the latest software and security updates, upgrade to a supported version.

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


Before you install VMware Enterprise 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 Enterprise PKS installation.

To create a GCP load balancer for the PKS API, do the following:

  1. Create a Load Balancer
  2. Create a Firewall Rule
  3. Create a DNS Entry
  4. Install Enterprise PKS
  5. Create a Network Tag for the Firewall Rule

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 Enterprise 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 Port, enter 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.
    • Click New Frontend IP and Port.
      1. Enter a name for the frontend IP-port mapping, such as pks-api-uaa.
      2. (Optional) Add a description.
      3. Under IP select the same static IP address that GCP assigned in the previous step.
      4. Under Port, enter 8443.
      5. Click Done.
  10. Click Review and finalize to review your load balancer configuration.

  11. Click Create.

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 the Create a GCP Network with Subnets step of Preparing to Deploy Ops Manager on GCP Manually.
    • 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
    • Under Protocols and ports, select Specified protocols and ports and enter tcp:8443,9021.
  3. Click Create.

Create a DNS Entry

To create a 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, if your domain is, enter api.pks in this field to use as your PKS API hostname.

  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.

Install Enterprise PKS

Follow the instructions in Installing Enterprise PKS on GCP to deploy Enterprise PKS. After you finish installing Enterprise PKS, continue to the Create a Network Tag for the Firewall Rule section below to complete the PKS API load balancer configuration.

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 your PKS control plane VM. To locate this VM, you can search for the pivotal-container-service job label on the VM instances page.
  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.

Please send any feedback you have to