Skip to content

Terraform configuration to easily install Pivotal Application Service

Notifications You must be signed in to change notification settings

niallthomson/paasify-pas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Paasify for Pivotal Application Service

Install Pivotal Application Service with nothing more than Terraform. If you need fire-and-forget mechanism that gives you predictable, disposable PAS environments (including many popular tiles) in your own cloud accounts then this is for you.

The goal of this project is to allow you to complete an install of PAS, including optional tiles, with the only requirement being Terraform. This is being essentially being exposed as 'PAS-as-a-Terraform-module' that is compatible across all supported public clouds. It is designed for short-term, non-production setups, and is not intended to provide a PAS setup that can be upgraded over long periods of time.

AWS GCP Azure VMware
Docs Docs

Note: This project requires Terraform 0.14.X

Take this example:

module "pas" {
  source = "github.com/niallthomson/paasify-pas//aws"

  env_name     = "paasify-test"
  dns_suffix   = "aws.paasify.org"
  pivnet_token = "<pivnet token here>"

  pas_version  = 2.10

  region             = "us-west-2"
  availability_zones = ["us-west-2a", "us-west-2b", "us-west-2c"]

  tiles = ["mysql"]
}

output "opsman_url" {
  value = "https://${module.pas.ops_manager_domain}"
}

output "opsman_username" {
  value = module.pas.ops_manager_username
}

output "opsman_password" {
  value = module.pas.ops_manager_password
}

output "cf_api_endpoint" {
  value = module.pas.cf_api_endpoint
}

output "cf_apps_manager_endpoint" {
  value = module.pas.cf_apps_manager_endpoint
}

This will:

  • Install PAS 2.10 Small Footprint
  • Download, stage and configure the MySQL tile
  • Wire up DNS so that its accessible at paasify-test.aws.paasify.org
  • Provision valid SSL certificates via Lets Encrypt for every common HTTPS endpoint
  • Allow you to cleanly tear down all infrastructure via terraform destroy
  • Perform all PivNet product downloads/uploads on a jumpbox VM for speed

When the Terraform run completes there will be a fully working PAS installation, with endpoint information available from Terraform outputs.

Reference

Quick reference for various areas of the project.

Prerequisites

The following are pre-requisites for working with Paasify:

  • Understand how to provide cloud credentials, which is documented here.
  • DNS setup appropriately for your cloud of choice. See here for details on how your DNS should be setup.
  • Terraform 0.14.X installed

Comparison with legacy pcf-paasify

If you've come from pcf-paasify then see here for how this project differs.

Tiles

The following table lists all tiles that can be automatically installed, along with the name that should be put in the tiles parameter:

Tile Name 2.6 2.7 2.8 2.9 2.10
MySQL mysql
RabbitMQ rabbitmq
Redis redis
Spring Cloud Services scs
Spring Cloud Gateway gateway
Single Sign-On sso
AppMetrics metrics

The latest stemcell supported by each tile will automatically be uploaded to OpsManager.

About

Terraform configuration to easily install Pivotal Application Service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages