Installing Pivotal Cloud Foundry on GCP

This topic describes how to install Pivotal Cloud Foundry (PCF) on Google Cloud Platform (GCP).

It includes resource requirements, prerequisites, instructions for installing PCF on GCP, and additional resources.

Overview

You can install PCF on GCP with either the Pivotal Application Service (PAS) or Pivotal Container Service (PKS) runtime. There are resource requirements specific to each runtime. Ensure you meet the requirements for your runtime and the requirements specific to GCP before installing PCF on GCP.

Requirements

This section lists the following resource requirements for installing PCF on GCP:

PCF Resource Requirements

This section lists PCF resource requirements for installing PCF on GCP. It includes general PCF resource requirements for both the PAS and PKS runtimes.

View one of the following, depending on your PCF runtime:

PAS Resource Requirements

The following are general resource requirements for deploying and managing a PCF deployment with Ops Manager and PAS:

  • PAS requires sufficient IP allocation. The following lists the minimum required IP allocations:
    • One static IP address for either HAProxy or one of your Gorouters
    • One static IP address for each job in the Ops Manager tile. See the Ops Manager Resource Config pane for each tile for a full list.
    • One static IP address for each job listed below:
      • Consul
      • NATS
      • File Storage
      • MySQL Proxy
      • MySQL Server
      • Backup Restore Node
      • HAProxy
      • Router
      • MySQL Monitor
      • Diego Brain
      • TCP Router
    • One IP for each VM instance created by the service.
    • An additional IP address for each compilation worker. Use the following formula to determine the total IPs required: IPs needed = static IPs + VM instances + compilation workers.
    • Pivotal recommends that you allocate at least 36 dynamic IP addresses when deploying Ops Manager and PAS. BOSH requires additional dynamic IP addresses during installation to compile and deploy VMs, install PAS, and connect to services.
  • Pivotal recommends using a network without DHCP for deploying PAS VMs.

    Note: If you have DHCP, refer to the Troubleshooting Guide to avoid issues with your installation.

PKS Resource Requirements

For PKS-specific resource requirements, see GCP Prerequisites and Resource Requirements.

GCP Resource Requirements

The following are GCP-specific resource requirements for installing PCF on GCP:

  • Installing PCF on GCP requires a minimum of the following VM instance limits in your GCP account. The number of VMs required depends on the number of tiles and availability zones you plan to deploy. The following VM guidelines apply to the PAS and Small Footprint PAS runtimes:

    • PAS: At a minimum, a new GCP deployment requires the following custom VMs for PAS and Ops Manager:
      VM Count vCPU Count per VM RAM (GB)
      28 1 1
      2 2 1
      3 1 2
      4 2 4
      3 2 8
      3 4 16

      Note: If you are deploying a test or sandbox PCF that does not require high availability, then you can scale down the number of VM instances in your deployment. For more information, see Scaling PAS.

    • Small Footprint PAS: At a minimum, a new GCP deployment requires the following VMs to run Small Footprint PAS:
      VM Type VM Count vCPU Count per VM RAM (GB) Notes
      Small Footprint PAS micro 11 1 1 Add 1 to VM count if using HAProxy
      small 3 1 2
      highcpu 1 2 2
      xlarge.disk 1 4 16
      xlarge 1 4 16
      medium.mem 1 1 6
      large.disk 1 2 8
      Ops Manager large.disk 1 2 8
      large.cpu 4 4 4
    • PKS: See GCP Prerequisites and Resource Requirements.
  • (PAS-only) Your GCP project must have sufficient quota to deploy all the VMs needed to install PCF with PAS. For a list of suggested quotas, see Recommended GCP Quotas.

Prerequisites

To install PCF on GCP, you must do the following:

  • Install the Google Cloud SDK on your machine and authenticate it to your GCP account. To download the Google Cloud SDK, see Google Cloud SDK.

  • Increase or remove the VM instance limits in your GCP account. For VM instance requirements, see GCP Resource Requirements.

  • Update your GCP account with the following required permissions:

    • The following permissions are required to create firewalls, networks, load balancers, and other resources:
      • Compute Engine > Compute Instances Admin (beta)
      • Compute Engine > Compute Network Admin
      • Compute Engine > Compute Security Admin
    • To use Google Cloud Storage (GCS) for Cloud Controller file storage, the following permission is required to create buckets:
      • Storage > Storage Admin
    • To use Cloud DNS, the following permission is required to add and modify DNS entries:
      • Project > Editor
  • Create an SSL certificate for your PCF domain.

    Note: To deploy PCF to a production environment, you must obtain a certificate from a certificate authority. Pivotal recommends using a self-signed certificate generated by Ops Manager for development and testing purposes only.

  • Assign administrative rights to a domain for PCF. You need to be able to add wildcard records to this domain.

  • Create a wildcard DNS record that points to your router or load balancer. Alternatively, you can use a service such as xip.io. For example, 203.0.113.0.xip.io. Then, create at least one wildcard TLS certificate that matches the DNS record you configured.

    Note: With a wildcard DNS record, every hostname in your domain resolves to the IP address of your router or load balancer. For example, if you create a DNS record *.example.com pointing to your router, every app deployed to the example.com domain resolves to the IP address of your router.

  • Create one or more NTP servers, if the NTP servers are not already provided by your GCP project.

  • Install the most recent version of one of the following CLIs, depending on your PCF runtime:

  • (PAS-only) Request a quota increase for your GCP project. For GCP quota requirements, see GCP Resource Requirements. To request an increase, see Quotas in the GCP console.

  • (PAS-only) Configure sufficient IP allocation. For more information about IP allocation requirements, see PAS Resource Requirements.

  • (Optional) (PAS-only) Configure external storage. Pivotal recommends using external storage if possible. For more information about how file storage location affects platform performance and stability during upgrades, see Configure File Storage.

  • (Optional) (PAS and Ops Manager-only) Configure external databases. Pivotal recommends using external databases in production deployments for BOSH Director and PAS. An external database must be configured to use the UTC timezone.

  • (Optional) (PAS and Ops Manager-only) Configure external user stores. When you deploy PCF, you can select a SAML user store for Ops Manager or a SAML or LDAP user store for PAS, to integrate existing user accounts.

Install PCF on GCP

You can install PCF on GCP either manually or using Terraform.

To install PCF on GCP, do one of the following:

Additional Resources

The following are additional resources related to installing PCF on GCP: