This topic describes how to configure BOSH Director to deploy VMware Tanzu Operations Manager (Ops Manager) on Amazon Web Services (AWS).
Before beginning this procedure, ensure that you have completed all of the steps in Deploying Ops Manager on AWS.
In a web browser, navigate to the fully qualified domain you created in the Configure DNS Records step of Deploying Ops Manager on AWS.
Log in to Ops Manager. To log in, see Log In to Ops Manager For the First Time.
Click the BOSH Director tile.
Click AWS Config. The AWS Management Console Config page is shown.
Select 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 Ops Manager VMs in the Step 6: Configure a Security Group for Ops Manager VMs in Preparing to Deploy Ops 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 Ops Manager in Preparing to Deploy Ops Manager on AWS. Copy the contents of the .pem
file and paste it into the SSH Private Key text box.AWS EBS disk type: Select the type of EBS volume for BOSH-deployed VMs to use.
Caution: If you change this value, BOSH re-creates all VMs when you apply changes.
Encrypt Linux EBS Volumes: Select this checkbox to enable full encryption on persistent disks of all BOSH-deployed VMs except the Ops Manager VM and BOSH Director VM. For more information about using EBS encryption, see Configuring Amazon EBS Encryption for Ops Manager on AWS.
Note: Enabling EBS encryption only encrypts Linux VMs. The Windows VMs deployed with VMware Tanzu Application Service for VMs [Windows] (TAS for VMs [Windows]) or TAS for VMs [Windows] 2012 R2 are not encrypted.
Click Save.
To configure the Director Config pane:
Select Director Config.
In the NTP Servers (comma delimited) field, 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 which has a dedicated IP that does not require access to the internet or configuration changes to your security group or network ACL rules to access.
Leave the Bosh HM Forwarder IP Address field blank.
Note: Starting in Pivotal Application Service (PAS) v2.0, 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. To prevent this, leave the Bosh HM Forwarder IP Address field blank.
Select the Enable VM Resurrector Plugin checkbox to enable the BOSH Resurrector functionality and increase your runtime availability.
The Enable BOSH System Metrics Server checkbox is deprecated, only keep it selected if your metrics system relies upon the format used. It is recommended that you switch away from this format as soon as possible, as this option is going away in future releases.
Keep the Enable System Metrics checkbox selected to collect system metrics, including load, CPU, memory, swap, and disk metrics, and make them available for scraping from agents on each VM. This is recommended if you are using TAS, as it will scrape the agents automatically and insert the metrics into the regular logging and metrics egress stream. For a list of metrics collected, see System Metrics Agent in GitHub.
Select Enable Post Deploy Scripts to run a post-deploy script after deployment. This script allows the job to execute additional commands against a deployment.
Note: If you intend to install VMware Tanzu Kubernetes Grid Integrated Edition (TKGI), you must enable post-deploy scripts.
Select Recreate VMs deployed by the BOSH Director to force BOSH to re-create BOSH-deployed VMs on the next deploy. This process does not re-create the BOSH Director VM or destroy any persistent disk data. This checkbox is cleared automatically after a successful re-deployment.
Select Recreate BOSH Director VMs to force the BOSH Director VM to be re-created on the next deploy. This process does not destroy any persistent disk data. This checkbox is cleared automatically after a successful re-deployment.
Select Recreate All Persistent Disks to force BOSH to migrate and re-create persistent disks for the BOSH Director and all tiles. This process does not destroy any persistent disk data. This checkbox is cleared automatically after a successful re-deployment.
Select Enable bosh deploy retries to instruct Ops 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 re-created.
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) Modify the Director Workers value, which sets the number of workers available to execute BOSH Director tasks. This field defaults to 5
.
(Optional) Max Threads sets the maximum number of threads that the BOSH Director can run simultaneously. VMware recommends that you leave the field 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 Director Hostname. You can also use this field 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 Operations Manager Director in the VMware Tanzu Support knowledge base.
(Optional) To set a custom banner that users see when logging in to the BOSH Director using SSH, enter text in the Custom SSH Banner field.
(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 Ops Manager and CredHub use the default duration specified for the certificate or a custom duration value that you specify.
On: Select 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, then the longer duration is used.
Note: After you set a certificate duration override, you must take additional steps to apply the setting to all certificates. For more information, see Overriding Duration for Certificates.
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.
Note: After you deploy Ops Manager with an HSM encryption provider, you cannot change BOSH CredHub to store encryption keys internally.
Luna HSM: Select this option to use a SafeNet Luna HSM as your permanent CredHub encryption provider, and fill in the following fields:
Note: If you use multiple HSM hosts, you must use the Ops Manager API to set or update the HSM configuration. For more information, see Updating director and Iaas properties (Experimental) in the Ops Manager API documentation.
1792
.Select a Blobstore Location to configure the blobstore as either an internal server or an external endpoint.
Note: After you deploy the BOSH Director, only Ops Manager users in Advanced Mode can change the blobstore location. For more information, see Ops Manager Fields That Lock On Deploy.
Internal: Select this option to use an internal blobstore. No additional configuration is required.
S3 Compatible Blobstore: Select this option to use 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 into the S3 Endpoint field.If you are using a non-public S3-compatible endpoint (Ops Manager v2.10.19 or earlier):
SSH into the Ops Manager VM by running:
ssh ubuntu@OPS-MANAGER-FQDN
Where OPS-MANAGER-FQDN
is the fully-qualified domain name (FQDN) of your Ops Manager deployment.
Copy the custom public CA certificate you used to sign the S3 endpoint into the /etc/ssl/certs
directory on the Ops Manager VM.
On the Ops Manager VM, import the custom CA certificate into the Ops Manager VM truststore by running:
sudo update-ca-certificates -f -v
Add this custom CA certificate into the Trusted Certificates field in the Security page. For instructions, see Security Page.
Bucket Name: Enter the name of the S3 bucket.
Important: AWS ends support for path-style URLs for all S3 buckets created after September 30, 2020. For more information, see Support for Virtual-Hosted-Style URLs for AWS S3 Blobstores.
Note: This feature is only available for BOSH VMs that use Xenial stemcell line 621 or later.
Note: AWS recommends using Signature Version 4. For more information about AWS S3 Signatures, see Authenticating Requests in the AWS documentation.
GCS Blobstore: Select this option to use 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, select External MySQL Database and complete the following steps:
Note: Use of an External MySQL Database only applies to the BOSH Director. UAA and CredHub will not use these settings and will continue to use the Postgres database colocated with the BOSH Director.
Caution: 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 username that you defined for your MySQL database when you created in the Create a MySQL Database using AWS RDS in Deploying Ops Manager on AWS.
bosh
.In addition, if you selected the Enable TLS for Director Database checkbox, you can fill out the following optional fields:
Click Save.
Note: 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 Ops Manager on AWS use 3 AZs.
Select Create Availability Zones.
To add the three AZs you specified in the Create a VPC section of Preparing to Deploy Ops Manager on AWS:
REGION-#a
, REGION-#b
, and REGION-#c
. For example, us-west-2a
, us-west-2b
, and us-west-2c
.Click Save.
Select Create Networks.
(Optional) Select Enable ICMP checks to enable ICMP on your networks. Ops 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 Ops Manager on AWS. Record your VPC CIDR if you set a CIDR other than the recommendation.
management
.Create a subnet for each availability zone by clicking Add Subnet. Refer to the table below 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. See the table below 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. Refer to the table below 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.
Note: 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.
Note: After you deploy Ops Manager, you add subnets with overlapping Availability Zones to expand your network. For more information about configuring additional subnets, see Expanding Your Network with Additional Subnets.
Click Assign AZs and Networks.
Use the drop-down menu to select a Singleton Availability Zone. The BOSH Director is deployed into this AZ.
Use the drop-down menu to select management
under Network. The BOSH Director is deployed into this network.
Click Save.
Select Security.
In Trusted Certificates, enter 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.
To enter multiple certificates, paste your certificates one after the other. For example, format your certificates like the example below:
-----BEGIN CERTIFICATE----- ABCDEFGH12345678ABCDEFGH12345678ABCDEFGH12345678AB EFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABCDEF GH12345678ABCDEFGH12345678ABCDEFGH12345678... ------END CERTIFICATE------ -----BEGIN CERTIFICATE----- BCDEFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABB EFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABCDEF GH12345678ABCDEFGH12345678ABCDEFGH12345678... ------END CERTIFICATE------ -----BEGIN CERTIFICATE----- CDEFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABBB EFGH12345678ABCDEFGH12345678ABCDEFGH12345678ABCDEF GH12345678ABCDEFGH12345678ABCDEFGH12345678... ------END CERTIFICATE------
Note: 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 field. For more information about running app instances in TAS for VMs using Docker registries, see Using Docker Registries.
To include the Ops Manager root CA in the Trusted Certificates field, select the Include OpsManager Root CA in Trusted Certs checkbox. BOSH Director includes this CA in the trust store of every VM that it deploys.
Important: If you are using Ops Manager to generate certificates for either a load balancer or router, then you must select this checkbox.
To clear the default trusted certificates from all BOSH-deployed Linux VMs, select the Clear the Default Trusted Certificates Store checkbox. You must provide your own trusted certificates when selecting this checkbox as all TLS communication fails without trusted certificates available.
Note: This option is available in Ops Manager v2.10.21 and later.
Choose Generate passwords or Use default BOSH password. VMware recommends that you use the Generate passwords option for greater security.
Click Save. To view your saved BOSH Director password, click the Credentials tab.
The BOSH DNS Config pane allows you to configure DNS for BOSH Director by adding excluded recursors, a recursor timeout, and handlers.
The fields 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 to contact 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:
Select 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.
Note: 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.
Select Syslog.
(Optional) Select Yes to send BOSH Director system logs to a remote server.
Enter the IP address or DNS name for the remote server in Address.
Enter the port number that the remote server listens on in Port.
Select TCP or UDP from the Transport Protocol dropdown. This selection determines which transport protocol is used to send the logs to the remote server.
(Optional) Select the Enable TLS checkbox to send encrypted logs to remote server with TLS. After you select the checkbox:
Note: VMware strongly recommends that you enable TLS encryption when you are forwarding logs. Logs can contain sensitive information, such as cloud provider credentials.
(Optional) Enter an integer in Queue Size. This value specifies the number of log messages held in the buffer. The default value is 100,000.
(Optional) Select the checkbox to Forward Debug Logs to an external source. This option is deselected by default. If you select it, you may generate a large amount of log data.
(Optional) Enter configuration details for rsyslog in the Custom rsyslog Configuration field. This field requires the rainerscript syntax.
Click Save.
Select Resource Config.
Adjust any values as necessary for your deployment. Under the Instances, VM Type, and Persistent Disk Type fields, 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.
Note: For the BOSH Director job, select a VM type with at least 8 GB memory.
Note: If you set a field to Automatic and the recommended resource allocation changes in a future version, Ops Manager automatically uses the new recommended allocation.
Note: 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. Enter your AWS target group name in the Load Balancers field for the BOSH Director job. 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 navigate to Target Groups in the EC2 Dashboard menu to find your target group Name.
Note: 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 Ops Manager Installation Dashboard.
Click Review Pending Changes, then Apply Changes.
BOSH Director begins to install. The Changes Applied window displays when installation is complete.
After completing the procedures in this topic, you must configure a runtime for Ops Manager. You can install Ops Manager on AWS with the TAS for VMs runtime.
To configure TAS for VMs, see Configuring TAS for VMs.