Getting Started with Small Footprint PAS

Page last updated:

This topic describes the Small Footprint Pivotal Application Service (PAS) tile for Pivotal Platform.

The Small Footprint PAS is a repackaging of the PAS components into a smaller deployment with fewer virtual machines (VMs). For a description of the limitations that come with a smaller deployment, see Limitations.

Differentiate Small Footprint PAS and PAS

A standard PAS deployment must have at least 13 VMs, but Small Footprint PAS requires only four.

The following image displays a comparison of the number of VMs deployed by PAS and Small Footprint PAS.

VM comparison between PAS and Small Footprint PAS. PAS has 13 required VMs and 11 optional VMs. Small Footprint PAS, on the other hand, has 4 required VMs and 8 optional VMs. The required VMs for PAS are Cloud Controller, Cloud Controller Worker, Clock Global, Diego BBS, Diego Brain, Diego Cell, Doppler Server, Loggregator Traffic Controller, NATS, Router, Syslog Adapter, Syslog Scheduler, and UAA. The optional VMs for PAS are File Storage, HAProxy, Backup Restore Node, MySQL Monitor, MySQL Proxy, MySQL Server, TCP Router, CredHub, Istio Router, Istio Control, and Route Syncer. The required VMs in Small Footprint PAS are Compute, Control, Database, and Router. The optional VMs for Small Footprint PAS are File Storage, HAProxy, Backup Restore Node, MySQL Monitor, TCP Router, Istio Router, Istio Control, and Route Syncer.

Use Cases

Use Small Footprint PAS for smaller Pivotal Platform deployments on which you intend to host 2500 or fewer apps, as described in Limitations. If you want to use Small Footprint PAS in a production environment, ensure the limitations described below are not an issue in your use case.

Note: Small Footprint PAS is compatible with Pivotal Platform service tiles.

Small Footprint PAS is also ideal for the following use cases:

  • Proof-of-concept installations: Deploy Pivotal Platform quickly and with a small footprint for evaluation or testing purposes.

  • Sandbox installations: Use Small Footprint PAS as a Pivotal Platform operator sandbox for tasks such as testing compatibility.

  • Service tile R&D: Test a service tile against Small Footprint PAS instead of a standard PAS deployment to increase efficiency and reduce cost.

Limitations

Small Footprint PAS has the following limitations:

  • Number of app instances: The tile is not designed to support large numbers of app instances. You cannot scale the number of Compute VMs beyond 10 instances in the Resource Config pane. Small Footprint PAS is designed to support 2500 or fewer apps.

  • Increasing platform capacity: You cannot upgrade the Small Footprint PAS tile to the standard PAS tile. If you expect platform usage to increase beyond the capacity of Small Footprint PAS, Pivotal recommends using the standard PAS tile.

  • Management plane availability during tile upgrades: You may not be able to perform management plane operations like deploying new apps and accessing APIs for brief periods during tile upgrades. The management plane is located on the Control VM.

  • App availability during tile upgrades: If you require availability during your upgrades, you must scale your Compute VMs to a highly available configuration. Ensure sufficient capacity exists to move app instances between Compute VM instances during the upgrade.

Architecture

You can deploy Small Footprint PAS with a minimum of four VMs, as shown in the image below.

Note: The following image assumes that you are using an external blobstore.

Small Footprint PAS has 4 required VMs and 8 optional VMs. The required VMs are Compute, Control, Database, and Router. The optional VMs are File Storage, HAProxy, Backup Restore Node, MySQL Monitor, TCP Router, Istio Router, Istio Control, and Route Syncer.

To reduce the number of VMs required for Small Footprint PAS, the Control and Database VMs include colocated jobs that run on a single VM in PAS. See the next sections for details.

For more information about the components mentioned on this page, see PAS Components.

Control VM

The Control VM includes the PAS jobs that handle management plane operations, app lifecycles, logging, and user authorization and authentication. Additionally, all errands run on the Control VM, eliminating the need for a VM for each errand and significantly reducing the time it takes to run errands.

The following image shows all the jobs from PAS that are colocated on the Control VM in Small Footprint PAS.

Small Footprint PAS Condenses 11 PAS VMs onto 1 VM called Control. The 11 PAS VMs are Cloud Controller, Cloud Controller Worker, Clock Global, Diego BBS, Diego Brain, Doppler Server, Loggregator Traffic Controller, Syslog Adapter, Syslog Scheduler, UAA, and CredHub.

Database VM

The Database VM includes the PAS jobs that handle internal storage and messaging.

The following image shows all the jobs from PAS that are colocated on the Database VM in Small Footprint PAS.

Small Footprint PAS Condenses 3 PAS VMs onto 1 VM called Database. The three PAS VMs are NATS, MySQL Proxy, and MySQL Server.

Compute VM

The Compute VM is the same as the Diego Cell VM in PAS.

Small Footprint PAS calls the Diego Cell VM the Compute VM

Other VMs (Unchanged)

The following image shows the VMs performs the same functions in both versions of the PAS tile.

The Router, File Storage, HAProxy, Backup Restore Node, MySQL Monitor, TCP Router, Istio Router, Istio Control, and Route Syncer VMs are the same in both PAS and small footprint PAS.

Requirements

The following topics list the minimum resources needed to run Small Footprint PAS and Ops Manager on the public IaaSes that Pivotal Platform supports:

Installing Small Footprint PAS

To install Small Footprint PAS, see Architecture and Installation Overview and the installation and configuration topics for your IaaS.

Follow the same installation and configuration steps as for PAS, with these differences:

  • Selecting a product in Pivotal Network: When you navigate to the Pivotal Application Service page on Pivotal Network, select the Small Footprint release.

  • Configuring resources:

    • The Resource Config pane in the Small Footprint PAS tile reflects the differences in VMs discussed in Architecture.
    • Small Footprint PAS does not default to a highly available configuration like PAS does. It defaults to a minimum configuration. To make Small Footprint PAS highly available, scale the VMs to the following instance counts:
      • Compute: 3
      • Control: 2
      • Database: 3
      • Router: 3
  • Configuring load balancers: If you are using an SSH load balancer, you must enter its name in the Control VM row of the Resource Config pane. There is no Diego Brain row in Small Footprint PAS because the Diego Brain is colocated on the Control VM. You can still enter the appropriate load balancers in the Router and TCP Router rows as normal.

Troubleshooting Colocated Jobs Using Logs

To troubleshoot a job that runs on the Control or Database VMs:

  1. Follow the procedures in Advanced Troubleshooting with the BOSH CLI to the log in to the BOSH Director for your deployment:

    1. Gather Credential and IP Address Information
    2. SSH into Ops Manager
    3. Log in to the BOSH Director
  2. Use BOSH to list the VMs in your Small Footprint PAS deployment. Run:

    bosh -e YOUR-ENV -d YOUR-DEPLOYMENT vms
    

    Where:

    • YOUR-ENV is the name of your BOSH environment.
    • YOUR-DEPLOYMENT is the name of your Small Footprint PAS deployment.

      Note: If you do not know the name of your deployment, you can run bosh -e YOUR-ENV deployments to list the deployments for your BOSH Director.

      See the following example output:
      $ bosh -e example-env -d example-deployment vms
      Using environment 'example-env' as client 'ops_manager'

    Task 182. Done

    Deployment 'example-deployment'

    Instance Process State AZ IPs VM CID VM Type backup-restore/8fd07242-cf7c-4a4d-ba69-85fe078114f9 running us-central1-a 10.0.4.10 vm-6ec72a47-55b0-4767-78af-759f1f295183 micro compute/01c6947d-477e-4605-9e6b-5d130a58c70c running us-central1-b 10.0.4.8 vm-ce14173c-d93e-414c-6830-afbe0c713fc5 xlarge.disk compute/28045395-5048-4c8d-8363-e22fc7b66847 running us-central1-c 10.0.4.9 vm-e3d8f696-5802-4552-4006-a1260563ed49 xlarge.disk compute/2e3ed7dc-baa4-42ef-814d-980c6ab1c36b running us-central1-a 10.0.4.7 vm-6dc34e53-71f3-4741-674a-c42c4df9e559 xlarge.disk control/12b1b027-7ffd-43ca-9dc9-7f4ff204d86a running us-central1-a 10.0.4.6 vm-9760b74e-e13e-4483-79b6-78ab3818b628 xlarge ha_proxy/b0587c68-45a8-40e2-94d3-5d2ffcdaf858 running us-central1-a 10.0.4.11 vm-27d62bfc-af6d-4c8b-6e2a-cbba09eddd1e micro mysql_monitor/5185d04e-e038-4664-a26a-d16d0d295a7f running us-central1-a 10.0.4.15 vm-6d215888-913b-44a3-4db3-52329c5ada53 micro router/2043b22d-0c3b-4a02-873f-80a724c3ed08 running us-central1-a 10.0.4.12 vm-2b7cf5f4-5926-4f70-6e47-d994a6eff93b micro router/72b54793-e0d0-4301-8932-76da5375e654 running us-central1-c 10.0.4.14 vm-e77bcdf1-0c26-46cd-7783-6d766f4c5098 micro router/e3d2ab7b-6191-46bb-ab62-c1db7268a942 running us-central1-b 10.0.4.13 vm-3e84523b-1988-475e-49e8-de80fd76c656 micro database/681bcad5-fa8b-4cf1-912f-45140d96123f running us-central1-a 10.0.4.5 vm-e3cded4f-cf47-499f-4c96-992b3c6ebf9c large.disk tcp_router/61a06e83-a62b-4afb-b452-441dc2dc1e4c running us-central1-a 10.0.4.17 vm-cc1f0a62-409f-47f9-58b0-0b8f46cf9ac0 micro

    13 vms

    Succeeded

  3. Use BOSH to SSH into one of the Small Footprint PAS VMs. Run:

    bosh -e YOUR-ENV -d YOUR-DEPLOYMENT ssh VM-NAME/GUID
    

    Where:

    • YOUR-ENV is the name of your BOSH environment.
    • YOUR-DEPLOYMENT is the name of your Small Footprint PAS deployment.
    • VM-NAME/GUID is the name or GUID of your VM. For example, to SSH into the Control VM, run:
    bosh -e example-env -d example-deployment ssh control/12b1b027-7ffd-43ca-9dc9-7f4ff204d86a
    
  4. To act as a super user, run:

    sudo su
    
  5. To list the processes running on the VM, run:

    monit summary
    

    The example output below lists the processes running on the Control VM. The processes listed reflect the colocation of jobs as outlined in Architecture.

    control/12b1b027-7ffd-43ca-9dc9-7f4ff204d86a:/var/vcap/bosh_ssh/bosh_f9d2446b18b445e# monit summary
    The Monit daemon 5.2.5 uptime: 5d 21h 10m

    Process 'bbs' running Process 'metron_agent' running Process 'locket' running Process 'route_registrar' running Process 'policy-server' running Process 'silk-controller' running Process 'uaa' running Process 'statsd_injector' running Process 'cloud_controller_ng' running Process 'cloud_controller_worker_local_1' running Process 'cloud_controller_worker_local_2' running Process 'nginx_cc' running Process 'routing-api' running Process 'cloud_controller_clock' running Process 'cloud_controller_worker_1' running Process 'auctioneer' running Process 'cc_uploader' running Process 'file_server' running Process 'nsync_listener' running Process 'ssh_proxy' running Process 'tps_watcher' running Process 'stager' running Process 'loggregator_trafficcontroller' running Process 'reverse_log_proxy' running Process 'adapter' running Process 'doppler' running Process 'syslog_drain_binder' running System 'system_localhost' running

  6. To access logs, navigate to /vars/vcap/sys/log by running:

    cd /var/vcap/sys/log
    
  7. To list the log directories for each process, run:

    ls
    

    See the following example output from the Control VM:

    control/12b1b027-7ffd-43ca-9dc9-7f4ff204d86a:/var/vcap/sys/log# ls
    adapter      cloud_controller_clock   file_server                    nginx_cc               route_registrar  statsd_injector      uaa_ctl.err.log
    auctioneer   cloud_controller_ng      locket                         nginx_newrelic_plugin  routing-api      syslog_drain_binder  uaa_ctl.log
    bbs          cloud_controller_worker  loggregator_trafficcontroller  nsync                  silk-controller  syslog_forwarder
    cc_uploader     metron_agent                   policy-server          ssh_proxy        tps
    cfdot        doppler                  monit                          reverse_log_proxy      stager           uaa
    

  8. Navigate to the directory of the process that you want to view logs for. For example, for the Cloud Controller process, run:

    cd cloud_controller_ng/
    

    From the directory of the process, you can list and view its logs. See the following example output:

    control/12b1b027-7ffd-43ca-9dc9-7f4ff204d86a:/var/vcap/sys/log/cloud_controller_ng# ls
    cloud_controller_ng_ctl.err.log  cloud_controller_ng.log.2.gz  cloud_controller_ng.log.6.gz         drain                  pre-start.stdout.log
    cloud_controller_ng_ctl.log      cloud_controller_ng.log.3.gz  cloud_controller_ng.log.7.gz         post-start.stderr.log
    cloud_controller_ng.log          cloud_controller_ng.log.4.gz  cloud_controller_worker_ctl.err.log  post-start.stdout.log
    cloud_controller_ng.log.1.gz     cloud_controller_ng.log.5.gz  cloud_controller_worker_ctl.log      pre-start.stderr.log
    

Release Notes

The Small Footprint PAS tile releases alongside the PAS tile. For more information, see Pivotal Application Service v2.7 Release Notes.