You can configure BOSH Director to deploy VMware Tanzu Operations Manager on Amazon Web Services (AWS).
Before you begin this procedure, ensure that you have followed all of the steps in Deploying Tanzu Operations Manager on AWS.
In a web browser, go to the fully qualified domain that you created in the Configure DNS Records step of Deploying Tanzu Operations Manager on AWS.
Log in to Tanzu Operations Manager. To log in, see Log In to Tanzu Operations Manager for the First Time.
Click the BOSH Director tile.
Click AWS Config. The AWS Management Console Config page appears.
Click Use AWS Keys or Use AWS Instance Profile.
Complete the rest of the AWS Management Console Config page:
pcf-vms-security-group
you created for your Tanzu Operations Manager VMs in the Configure a Security Group for Tanzu Operations Manager VMs in Preparing to Deploy Tanzu Operations Manager on AWS. Locate the Group ID in the Security Groups tab of your EC2 Dashboard.pcf-ops-manager-key
.pcf-ops-manager-keys.pem
file you generated in Step 3: Create an IAM User for Tanzu Operations Manager in Preparing to Deploy Tanzu Operations Manager on AWS. Copy the contents of the .pem
file and paste it into the SSH Private Key text box.AWS EBS disk type: Click the type of EBS volume for BOSH deployed VMs to use.
If you change this value, BOSH recreates all VMs when you Apply Changes.
Encrypt Linux EBS Volumes: Click this check box to enable full encryption on persistent disks of all BOSH deployed VMs except the Tanzu Operations Manager VM and BOSH Director VM.
For more information about using EBS encryption, see Configuring Amazon EBS Encryption for Tanzu Operations Manager on AWS.
Enabling EBS encryption only encrypts Linux VMs. The Windows VMs deployed with TAS for VMs [Windows] or TAS for VMs [Windows] 2012 R2 are not encrypted.
Click Save.
To configure the Director Config pane:
Click Director Config.
In the NTP Servers (comma-delimited) text box, enter at least three reachable NTP servers separated by a comma. For example: 0.amazon.pool.ntp.org,1.amazon.pool.ntp.org,2.amazon.pool.ntp.org,3.amazon.pool.ntp.org
If your AWS environment is air-gapped, consider using Amazon’s Time Sync Service. It has a dedicated IP address that does not require access to the internet or configuration changes to your security group or network ACL rules for access.
Leave the Bosh HM Forwarder IP Address text box blank. BOSH-reported component metrics are available in Loggregator Firehose by default. If you continue to use the BOSH HM Forwarder to consume these component metrics, you might receive duplicate data.
Select the Enable VM Resurrector Plugin check box to enable the BOSH Resurrector functionality and increase your runtime availability.
If you want to collect detailed metrics from BOSH-managed VMs, select the Enable System Metrics check box. For a list of metrics that the System Metrics Agent collects from BOSH-managed VMs, see System Metrics Agent on GitHub. When you select this check box, ensure that the System Metrics Scraper is able to connect on port 53035
to all BOSH-managed VMs.
Select Enable Post Deploy Scripts to run a post-deployment script after deployment. This script allows the job to execute additional commands against a deployment.
If you intend to install VMware Tanzu Kubernetes Grid Integrated Edition (TKGI), you must enable post-deploy scripts.
To configure your VMs to use short-lived NATS credentials during the bootstrap process, select the Enable Short Lived NATS Bootstrap Credentials check box. This increases the security of your Tanzu Operations Manager deployment by rotating the TLS certificate that the BOSH Agents in your VMs use to communicate with the BOSH Director through BOSH NATS.
For more information, see Using Short-Lived NATS Bootstrap credentials.
Configuring your VMs to use short-lived NATS bootstrap credentials restarts the BOSH Agent in all VMs as they are being created, so VMs are created somewhat more slowly.
This configuration affects all new deployments of Tanzu Operations Manager. If you want to configure VMs in existing Tanzu Operations Manager deployments to use short-lived bootstrap credentials, you must recreate them.
Select Recreate VMs deployed by the BOSH Director to force BOSH to recreate BOSH-deployed VMs on the next deployment. This process does not recreate the BOSH Director VM or destroy any persistent disk data. This check box is cleared automatically after a successful redeployment.
Select Recreate BOSH Director VM to force the BOSH Director VM to be recreated on the next deploy. This process does not destroy any persistent disk data. This check box is cleared automatically after a successful redeployment.
Select Recreate All Persistent Disks to force BOSH to migrate and recreate persistent disks for the BOSH Director and all tiles. This process does not destroy any persistent disk data. This check box is cleared automatically after a successful redeployment.
Select Enable bosh deploy retries to instruct Tanzu Operations Manager to retry failed BOSH operations up to five times.
Select Skip Director Drain Lifecycle to prevent drain scripts from running when the BOSH Director is recreated.
Select Store BOSH Job Credentials on tmpfs (beta) to store credentials for BOSH jobs on temporary file storage (tmpfs) memory, rather than on disk. You must re-create all BOSH-deployed VMs for this setting to take effect.
Select Keep Unreachable Director VMs to preserve BOSH Director VMs after a failed deployment for troubleshooting purposes.
(Optional) Select Enable automatic rotation of the BOSH DNS CA certificate (experimental) if you want Tanzu Operations Manager to automatically rotate the BOSH DNS CA certificate and associated leaf certificates when you click Apply Changes. For more information about this feature, see Automatic rotation of BOSH DNS certificates.
(Optional) Modify the Director Workers value, which sets the number of workers available to run BOSH Director tasks. The default value is 5
.
(Optional) Max Threads sets the maximum number of threads that the BOSH Director can run simultaneously. VMware recommends that you leave the text box blank to use the default value, unless doing so results in rate limiting or errors on your IaaS.
(Optional) To add a custom URL for your BOSH Director, enter a valid hostname in the Director Hostname text box. You can also use this text box to configure a load balancer in front of your BOSH Director. For more information, see How to set up a Load Balancer in front of Tanzu Operations Manager Director.
(Optional) To set a custom banner that users see when you log in to the BOSH Director using SSH, enter text in the Custom SSH Banner text box.
(Optional) Enter your comma-separated custom Identification Tags. For example, iaas:foundation1, hello:world
. You can use the tags to identify your foundation when viewing VMs or disks from your IaaS.
For Certificate Duration Overrides, you can choose whether certificates generated within Tanzu Operations Manager and CredHub use the default duration specified for the certificate, or a custom duration value that you specify.
On: Use this option to set a value to override the duration for certificates created by all products. If a product creates a certificate with a longer duration than the value you set, the longer duration is used.
Select HM Pager Duty Plugin to enable Health Monitor integration with PagerDuty.
Select HM Email Plugin to enable Health Monitor integration with email.
For CredHub Encryption Provider, you can choose whether BOSH CredHub stores its encryption key internally on the BOSH Director and CredHub VM, or in an external hardware security module (HSM). The HSM option is more secure.
Before configuring an HSM encryption provider in the Director Config pane, you must follow the procedures and collect information described in Preparing CredHub HSMs for configuration.
After you deploy Tanzu Operations Manager with an HSM encryption provider, you cannot change BOSH CredHub to store encryption keys internally.
Luna HSM: Use this option to use a SafeNet Luna HSM as your permanent CredHub encryption provider, and fill in the following fields:
If you use multiple HSM hosts, you must use the Tanzu Operations Manager API to set or update the HSM configuration. For more information, see Updating a staged director's properties in the Tanzu Operations Manager API documentation.
1792
.Click Blobstore Location to configure the blobstore as either an internal server or an external endpoint.
After you deploy the BOSH Director, only Tanzu Operations Manager users in Advanced Mode can change the blobstore location. For more information, see Platform operator roles and permissions in Tanzu Operations Manager.
Internal: Use this option for an internal blobstore. No additional configuration is required.
S3 Compatible Blobstore: Use this option for an external S3-compatible endpoint. When you have created an S3 bucket, configure the following fields:
S3 Endpoint:
us-west-2
region, the URL you create would be https://s3.us-west-2.amazonaws.com
. Enter this URL in the S3 Endpoint field.Bucket Name: Enter the name of the S3 bucket.
S3 Backup Strategy: To configure whether and how to back up the BOSH Director’s S3 blobstore, select one of the following options:
Copy into an additional bucket: This option saves blobstore backups to a separate bucket, which is useful with blobstores that do not support versioning. This option requires you to configure the Backup Bucket Region and Backup Bucket Name fields.
iam_instance_policy
, additional steps are needed:
iam_instance_policy
to the backup_restore
job using the Operations Manager API. See Custom VM Extensions. GCS Blobstore: Use this option for an external Google Cloud Storage (GCS) endpoint.
To create a GCS bucket, follow the procedures in Creating Storage Buckets in the GCS documentation. To create a GCS bucket, you must have a GCS account. When you have created a GCS bucket, configure the following fields:
For Database Location, click External MySQL Database and complete the following steps:
Use of an External MySQL Database only applies to the BOSH Director. UAA and CredHub do not use these settings and continue to use the Postgres database co-located with the BOSH Director.
After you deploy the BOSH Director, you cannot change the Database Location from an External MySQL Database to an Internal database or from an Internal database to an External MySQL Database.
Refer to the following table to retrieve the values for the Director Config page:
RDS instance field | BOSH director field |
---|---|
Endpoint | Host |
Port | Port, which is 3306 . |
For Username, enter the user name that you defined for your MySQL database when you created in the Create a MySQL Database using AWS RDS in Deploying Tanzu Operations Manager on AWS.
For Password, enter the password that you defined for your MySQL database when you created in the Create a MySQL Database using AWS RDS in Deploying Tanzu Operations Manager on AWS.
For Database, enter bosh
.
In addition, if you selected the Enable TLS check box, fill in the following optional fields:
Click Save.
VMware recommends at least three availability zones (AZs) for a highly available installation of VMware Tanzu Application Service for VMs (TAS for VMs). The procedures in Preparing to Deploy Tanzu Operations Manager on AWS use 3 AZs.
Click Create Availability Zones.
To add the three AZs you specified in the Create a VPC section of Preparing to Deploy Tanzu Operations Manager on AWS:
REGION-#a
, REGION-#b
, and REGION-#c
. For example, us-west-2a
, us-west-2b
, and us-west-2c
.Click Save.
Click Create Networks.
(Optional) Click Enable ICMP checks to enable ICMP on your networks. Tanzu Operations Manager uses ICMP checks to confirm that components within your network are reachable.
Perform the following steps to add the network configuration that you created for your VPC in the Create a VPC in Preparing to Deploy Tanzu Operations Manager on AWS. Record your VPC CIDR if you set a CIDR other than the recommended one.
management
.Create a subnet for each availability zone by clicking Add Subnet. See the following table for the information required to create all three subnets. When entering the VPC Subnet ID for each subnet, you must enter the corresponding Subnet ID associated with that subnet in the AWS VPC dashboard:
First Subnet |
|
---|---|
VPC subnet ID | Subnet ID for pcf-management-subnet-az0 |
CIDR | 10.0.16.0/28 |
Reserved IP ranges | 10.0.16.0-10.0.16.4 |
DNS | 10.0.0.2 * |
Gateway | 10.0.16.1 |
Availability zones | REGION-#a . Example: us-west-2a |
Second Subnet |
|
VPC subnet ID | Subnet ID for pcf-management-subnet-az1 |
CIDR | 10.0.16.16/28 |
Reserved IP ranges | 10.0.16.16-10.0.16.20 |
DNS | 10.0.0.2 * |
Gateway | 10.0.16.17 |
Availability zones | REGION-#b . Example: us-west-2b |
Third Subnet |
|
VPC subnet ID | Subnet ID for pcf-management-subnet-az2 |
CIDR | 10.0.16.32/28 |
Reserved IP ranges | 10.0.16.32-10.0.16.36 |
DNS | 10.0.0.2 * |
Gateway | 10.0.16.33 |
Availability zones | REGION-#c . Example: us-west-2c |
If you set a VPC CIDR other than recommended, enter the second IP in your VPC CIDR. For example, for a 10.0.0.0/24
VPC CIDR, enter 10.0.0.2
in each subnet.
Click Add Network.
tas
or pks
.Create a subnet for each availability zone by clicking Add Subnet. For more information, see the following table for the information required to create all three subnets:
First Subnet |
|
---|---|
VPC subnet ID | Subnet ID for pcf-tas-subnet-az0 or pcf-pks-subnet-az0 |
CIDR | 10.0.4.0/24 |
Reserved IP ranges | 10.0.4.0-10.0.4.4 |
DNS | 10.0.0.2 * |
Gateway | 10.0.4.1 |
Availability zones | REGION-#a . Example: us-west-2a |
Second Subnet |
|
VPC subnet ID | Subnet ID for pcf-tas-subnet-az1 or pcf-pks-subnet-az1 |
CIDR | 10.0.5.0/24 |
Reserved IP ranges | 10.0.5.0-10.0.5.4 |
DNS | 10.0.0.2 * |
Gateway | 10.0.5.1 |
Availability zones | REGION-#b . Example: us-west-2b |
Third Subnet |
|
VPC subnet ID | Subnet ID for pcf-tas-subnet-az2 or pcf-pks-subnet-az2 |
CIDR | 10.0.6.0/24 |
Reserved IP ranges | 10.0.6.0-10.0.6.4 |
DNS | 10.0.0.2 * |
Gateway | 10.0.6.1 |
Availability zones | REGION-#c . Example: us-west-2c |
If you set a VPC CIDR other than recommended, enter the second IP in your VPC CIDR. For example, for a 10.0.0.0/24
VPC CIDR, enter 10.0.0.2
in each subnet.
Click Add Network.
services
.Create a subnet for each availability zone by clicking Add Subnet. See the following table for the information required to create all three subnets:
First Subnet |
|
---|---|
VPC subnet ID | Subnet ID for pcf-services-subnet-az0 |
CIDR | 10.0.8.0/24 |
Reserved IP ranges | 10.0.8.0-10.0.8.3 |
DNS | 10.0.0.2 * |
Gateway | 10.0.8.1 |
Availability zones | REGION-#a . Example: us-west-2a |
Second Subnet |
|
VPC subnet ID | Subnet ID for pcf-services-subnet-az1 |
CIDR | 10.0.9.0/24 |
Reserved IP ranges | 10.0.9.0-10.0.9.3 |
DNS | 10.0.0.2 * |
Gateway | 10.0.9.1 |
Availability zones | REGION-#b . Example: us-west-2b |
Third Subnet |
|
VPC subnet ID | Subnet ID for pcf-services-subnet-az2 |
CIDR | 10.0.10.0/24 |
Reserved IP ranges | 10.0.10.0-10.0.10.3 |
DNS | 10.0.0.2 * |
Gateway | 10.0.10.1 |
Availability zones | REGION-#c . Example: us-west-2c |
If you set a VPC CIDR other than recommended, enter the second IP in your VPC CIDR. For example, for a 10.0.0.0/24
VPC CIDR, enter 10.0.0.2
in each subnet.
Click Save.
If you are deploying VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) with a TKGI workload load balancer, you must tag each AWS subnet with your TKGI Kubernetes cluster unique identifier before you create the load balancer. For more information about tagging subnets with a TKGI cluster unique identifier, see AWS Prerequisites.
After you deploy Tanzu Operations Manager, you add subnets with overlapping AZs to expand your network. For more information about configuring additional subnets, see Expanding your Network with Additional Subnets.
Click Assign AZs and Networks.
Click a Singleton Availability Zone from the drop-down menu. The BOSH Director is deployed into this AZ.
Click management
under Network from the drop-down menu. The BOSH Director is deployed into this network.
Click Save.
Click Security.
In Trusted Certificates, paste in your custom certificate authority (CA) certificates to insert into your organization’s certificate trust chain. This feature enables all BOSH-deployed components in your deployment to trust custom root certificates. If you want to use Docker registries to run TAS for VMs app instances in Docker containers, enter the certificate for your private Docker registry in this text box. For more information about running app instances in TAS for VMs using Docker registries, see Using Docker Registries.
To enter multiple certificates, paste in your certificates one after the other. For example, format your certificates as shown in the following example:
-----BEGIN CERTIFICATE----- ABCDEFGH12345678ABCDEFGH12345678ABCDEFGH12345678AB EFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABCDEF GH12345678ABCDEFGH12345678ABCDEFGH12345678... ------END CERTIFICATE------ -----BEGIN CERTIFICATE----- BCDEFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABB EFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABCDEF GH12345678ABCDEFGH12345678ABCDEFGH12345678... ------END CERTIFICATE------ -----BEGIN CERTIFICATE----- CDEFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABBB EFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABCDEF GH12345678ABCDEFGH12345678ABCDEFGH12345678... ------END CERTIFICATE------
To include both the Tanzu Operations Manager root CA and the certificates pasted into Trusted Certificates in the trusted_certs
field in the BOSH director manifest, select the Include Tanzu Ops Manager Root CA in Trusted Certs check box. BOSH Director includes this CA in the trust store of every VM that it deploys.
You must select this check box if you are using Tanzu Operations Manager to generate certificates for a load balancer or a router.
To clear the default trusted certificates from all BOSH-deployed Linux VMs, select Clear the Default Trusted Certificates Store.
If you select this check box, you must provide your own trusted certificates. All TLS communication fails if trusted certificates are not available.
Select Generate passwords or Use default BOSH password. VMware recommends using the Generate passwords option for greater security.
Click Save. To view your saved BOSH Director password, click the Credentials tab.
In the BOSH DNS Config pane, you can configure DNS for BOSH Director by adding excluded recursors, a recursor timeout, and handlers.
The text boxes in the BOSH DNS Config pane are:
Excluded Recursors: Exclude recursor addresses, which are URL redirects, so that they are not contacted by the BOSH DNS server. For more information about how the BOSH DNS release selects recursors, see Recursors in Native DNS Support in the BOSH documentation.
Recursor Timeout: Specify a timeout for the BOSH DNS server when contacting any connected recursor addresses. The time limit includes dialing, writing, and reading from the recursor. If any of these actions exceeds the time limit, the action fails.
Handlers: Specify recursor addresses that apply to specific domains. For example, you can use handlers to forward all requests to a domain to a private DNS for resolution. For more information about using handlers, see Additional handlers in Native DNS Support in the BOSH documentation.
To add excluded recursors, a recursor timeout, or handlers to the BOSH DNS release:
Click BOSH DNS Config.
(Optional) In Excluded Recursors, enter a list of prohibited recursor addresses.
(Optional) In Recursor Timeout, enter a time limit for contacting the connected recursors. This time limit must include one of the Go parse duration time units. For example, entering 5s
sets the timeout limit to five seconds. For more information about supported time units, see func ParseDuration in the Go Programming Language documentation.
(Optional) In Handlers, enter an array of custom domain handlers in JSON format. For example:
[
{
"cache": {
"enabled": true
},
"domain": "example.com",
"source": {
"type": "http",
"url": "http://example.endpoint.local"
}
}
]
Click Save.
Click Syslog.
(Optional) To send BOSH Director system logs to a remote server, select Yes.
In Address, enter the IP address or DNS name for the remote server.
In Port, enter the port number that the remote server listens on.
Using the Transport Protocol drop-down menu, select TCP or UDP to specify the transport protocol to use to send the logs to the remote server.
(Optional) Select the Enable TLS check box to send encrypted logs to remote server with TLS. After you select the check box:
Important VMware recommends that you enable TLS encryption when you are forwarding logs. Logs can contain sensitive information, such as cloud provider credentials.
(Optional) In Queue Size, enter an integer that specifies the number of log entries held in the buffer. The default value is 100,000.
(Optional) Select the Forward Debug Logs check box to forward the logs to an external source. This option is deselected by default. If you select it, you might generate a large amount of log data.
(Optional) In the Custom rsyslog Configuration text box, enter the configuration details for rsyslog
. This text box requires the rainerscript syntax.
Click Save.
Click Resource Config.
Adjust any values as necessary for your deployment. Under the Instances, VM Type, and Persistent Disk Type fields, and select Automatic from the drop-down menu to allocate the recommended resources for the job. If the Persistent Disk Type field reads None, the job does not require persistent disk space.
For the BOSH Director job, click a VM type with at least 8 GB memory.
If you set a field to Automatic and the recommended resource allocation changes in a future version, Tanzu Operations Manager automatically uses the new recommended allocation.
If you install VMware Tanzu Application Service for VMs [Windows] (TAS for VMs [Windows]), provision your Main Compilation Job with at least 100 GB of disk space.
(Optional) To configure an Application Load Balancer (ALB) for your BOSH Director, click the icon next to the BOSH Director job name to see more fields. In the Load Balancers field for the BOSH Director job, enter your AWS target group name. Prepend the name with alb:
. For example, enter alb:target-group-name
.
To create an ALB and target group, follow the procedures in Getting Started with Application Load Balancers in the AWS documentation. Then go to Target Groups in the EC2 Dashboard menu to find your target group Name.
To configure an ALB, you must have the following AWS IAM permissions.
"elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DeregisterInstancesFromLoadBalancer", "elasticloadbalancing:RegisterInstancesWithLoadBalancer", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:RegisterTargets"
Click Save.
Return to the Tanzu Operations Manager Installation Dashboard.
Click Review Pending Changes.
Click Apply Changes.
The BOSH Director installation begins. The Changes Applied dialog box appears when the installation is complete.
After you follow the procedures in this topic, you must configure a runtime for Tanzu Operations Manager.
You can install Tanzu Operations Manager on AWS with the TAS for VMs runtime.
To configure TAS for VMs, see Configuring TAS for VMs.