forked from pivotal-cf/docs-pcf-install
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcloudform-er-config.html.md.erb
285 lines (189 loc) · 11.3 KB
/
cloudform-er-config.html.md.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
---
title: Deploying Elastic Runtime on AWS
owner: Ops Manager
---
<strong><%= modified_date %></strong>
<% $this_IaaS = 'AWS-cloudform' %>
This topic describes how to install and configure Elastic Runtime after
deploying the CloudFormation template for [Pivotal Cloud Foundry®](https://network.pivotal.io/products/pivotal-cf) (PCF) on Amazon Web Services (AWS).
Use this topic when [installing Pivotal Cloud Foundry® on AWS](./cloudform.html).
Before beginning this procedure, ensure that you have successfully completed all
steps in the [Deploying the CloudFormation Template for PCF on AWS](./cloudform-template.html) and [Configuring Ops Manager Director after Deploying PCF on AWS using CloudFormation](./cloudform-om-config.html) topics.
## <a id='open-outputs'></a>Step 1: Open the Outputs Tab in AWS ##
<%= partial 'aws_stacks_view_outputs' %>
## <a id='add-er'></a>Step 2: Add Elastic Runtime to Ops Manager ##
1. Navigate to the Pivotal Cloud Foundry® Operations Manager Installation
Dashboard.
1. If you have not downloaded Elastic Runtime, click the Pivotal Network link on the left to download the Elastic Runtime .pivotal file. Click **Import a Product** to add the tile to Ops Manager. For more information, refer to the [Adding and Deleting Products](/pivotalcf/customizing/add-delete.html) topic.
1. Click the **Elastic Runtime** tile in the Installation Dashboard.
<%= image_tag("cloudform/er-tile.png") %>
## <a id='assign-az'></a>Step 3: Assign Availability Zones ##
1. Select **Assign Availability Zones**.
1. Select the option button and checkbox to define the Availability Zone for singleton jobs and job balancing.
<%= image_tag("cloudform/er-az.png") %>
1. Click **Save**.
## <a id='create-dbs'></a>Step 4: Create System Databases ##
You must create the databases required by Elastic Runtime on the RDS instance provisioned by the CloudFormation script.
1. Add the AWS-provided key pair to your SSH profile so that you can access the Ops Manager VM:
<pre class='terminal'>ssh-add aws-keypair.pem</pre>
1. SSH into your Ops Manager VM using its IP address and the username `ubuntu`:
<pre class='terminal'>ssh ubuntu@OPS_MANAGER_IP</pre>
Use the **Public IP** address that you noted when [configuring Ops Manager] (cloudform-om-config.html#access-om), or find the IP address for the Ops Manager VM on the AWS EC2 console.
1. Run the following terminal command to log in to your RDS instance through the MySQL client, using values from your AWS dashboard [**Outputs**](#open-outputs) tab to fill in the following output keys:
<pre class='terminal'>mysql --host=PcfRdsAddress --user=PcfRdsUsername --password=PcfRdsPassword</pre>
For example:
<pre class='terminal'>mysql --host=pp19dd336auydlw.cpdgtp8njpud.us-west-2.rds.amazonaws.com --user=docs --password=jks563!fjlksd</pre>
1. Run the following MySQL commands to create databases for each of the six Elastic Runtime components that require a database:
<pre class="terminal">CREATE database uaa;
CREATE database ccdb;
CREATE database console;
CREATE database notifications;
CREATE database autoscale;
CREATE database app\_usage\_service;</pre>
1. Type `exit` to quit the MySQL client and `exit` again to close your connection to the Ops Manager VM.
## <a id='sys-db'></a>Step 5: Configure System Databases ##
1. Select **System Database Config**.
1. Select the **External Databases** option.
<%= image_tag("cloudform/sys-db.png") %>
1. Complete the **System Database Config** page with information from the corresponding **Outputs** tab in the AWS Console, according to the following table:
<table border="1" class="nice" >
<tr>
<th><strong>Ops Manager Field</strong></th>
<th><strong>Outputs Key</strong></th>
</tr>
<tr>
<td><str>Hostname DNS Name</str></td>
<td><str>PcfRdsAddress</str></td>
</tr>
<tr>
<td><str>TCP Port</str></td>
<td><str>PcfRdsPort</str></td>
</tr>
<tr>
<td><str>Username</str></td>
<td><str>PcfRdsUsername</str></td>
</tr>
<tr>
<td><str>Password</str></td>
<td><str>PcfRdsPassword</str></td>
</tr>
</table>
1. Click **Save**.
1. <%= partial 'mysql_proxy_config' %>
## <a id='filestore'></a>Step 6: Configure File Storage ##
1. In the Elastic Runtime tile, select **File Storage Config**.
1. Select the **External S3-Compatible Filestore** option and complete the
following fields:
<%= image_tag("cloudform/external_filestore_config.png") %>
* For **URL Endpoint**:
1. In a browser, open the [Amazon Simple Storage Service (Amazon S3) table](http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region).
1. Prepend `https://` to the **Endpoint** for your region and copy it
into the Ops Manager **URL Endpoint** field.
<br />
For example, in the **us-west-2** region, use
`https://s3-us-west-2.amazonaws.com/`.
* Use the values in your AWS [**Outputs**](#open-outputs) tab to complete the remaining fields as follows:
<table border="1" class="nice" >
<tr>
<th>Ops Manager Field</th>
<th>Outputs Key</th>
</tr>
<tr>
<td>Buildpacks Bucket Name</td>
<td>PcfElasticRuntimeS3BuildpacksBucket</td>
</tr>
<tr>
<td>Droplets Bucket Name</td>
<td>PcfElasticRuntimeS3DropletsBucket</td>
</tr>
<tr>
<td>Packages Bucket Name</td>
<td>PcfElasticRuntimeS3PackagesBucket</td>
</tr>
<tr>
<td>Resources Bucket Name</td>
<td>PcfElasticRuntimeS3ResourcesBucket</td>
</tr>
<tr>
<td>Access Key ID</td>
<td>PcfIamUserAccessKey</td>
</tr>
<tr>
<td>AWS Secret Key</td>
<td>PcfIamUserSecretAccessKey</td>
</tr>
</table>
<p class="note"><b>Note</b>: If you are performing an upgrade from Elastic Runtime 1.5 to 1.6, do not modify the existing Bucket Name configuration or you may lose data. You must migrate your existing data first before changing the configuration. See the <a href="upgrading-pcf.html#pcf16upgrade">Upgrading Ops Manager</a> topic for additional upgrade information.</p>
1. Click **Save**.
##Step 7: Set IPs and Loggregator Port ##
1. Select **IPs and Ports**.
<%= image_tag("cloudform/ips_and_ports.png") %>
1. Leave the **Router IPs** and **HAProxy IPs** fields blank.
1. Set **Loggregator Port** to **4443**.
1. Click **Save**.
## <a id='security-config'></a>Step 8: Configure Security and SSL Certificates
<%= partial 'security_config' %>
## <a id='cname'></a>Step 9: Add CNAME Record for Your Custom Domain ##
In the [Use the AWS CLI to upload your SSL Cert](./cloudform-template.html#upload-cert) step, you uploaded an SSL certificate for your PCF wildcard domain to AWS.
In this step you redirect all wildcard queries for your domain to the DNS name of your ELB.
<p class='note'><strong>Note</strong>: Do not point your wildcard domain at the numeric IP address for your ELB because this changes frequently.</p>
1. Find the DNS hostname of your ELB. The **Output** tab of the CloudFormation page in the AWS dashboard lists this as the value for the key **PcfElbDnsName**.
1. Log in to the DNS registrar that hosts your domain (for example, Network Solutions, Godaddy, or Register.com).
1. Create a CNAME record with your DNS registrar that points `*.YOUR-DOMAIN.com` to the DNS hostname of your ELB.
1. Save changes within the web interface of your DNS registrar.
1. In the terminal, run the following `dig` command to confirm that you created your CNAME record successfully:
<pre class='terminal'>dig xyz.MY-DOMAIN.COM</pre>
You should see the CNAME record that you just created:
<pre class='terminal'>
;; ANSWER SECTION:
xyz.MY-DOMAIN.COM. 1767 IN CNAME pcf-ert-frankfurt-pcf-elb-428333773.eu-central-1.elb.amazonaws.com.</pre>
<p class='note'><strong>Note</strong>: You <strong>must</strong> complete this step before proceeding to Cloud Controller configuration. A difficult-to-resolve problem can occur if the wildcard domain is improperly cached before the CNAME is registered. </p>
## <a id='cloud-controller'></a>Step 10: Configure Cloud Controller Page ##
1. Select **Cloud Controller** and enter your system and application domains.
<%= image_tag("cloudform/cloud_controller_domain_config.png") %>
* The **System Domain** defines your target when you push apps to Elastic
Runtime.
* The **Apps Domain** defines where Elastic Runtime should serve your apps.
<p class="note"><b>Note</b>: Pivotal recommends that you use the same domain name but different subdomain names for your system and app domains. This prevents system and apps routes from overlapping. You will require two wildcard DNS entries: one for the system and the other for apps. For example, <code>*.system.EXAMPLE.COM</code> and <code>*.apps.EXAMPLE.COM</code>. Point both wildcard domains at your internal router IP address, which can be found under the status tab in the Elastic Runtime tile.</p>
1. Click **Save**.
## <a id='smtp'></a>Step 11: (Optional) Configure SMTP ##
Elastic Runtime uses SMTP to send invitations and confirmations to Apps Manager
users.
You must complete the **Configuration for SMTP** page if you want to enable
end-user self-registration.
1. Select **SMTP Config**.
<%= image_tag("cloudform/smtp.png") %>
1. Enter your reply-to and SMTP email information.
1. For **SMTP Authentication Mechanism**, select `none`.
1. Click **Save**.
<p class='note'><strong>Note</strong>: If you do not configure the SMTP
settings using this form, the administrator must create orgs and users using
the cf CLI tool. See <a href="../adminguide/cli-user-management.html">Creating and Managing Users with the cf CLI</a> for more information.</p>
## <a id='diego'></a>Step 12: Configure Diego ##
<%= partial 'diego_config' %>
## <a id='experimental-features'></a>Step 13: (Optional) Enable Experimental Features ##
<%= partial 'experimental-features' %>
## <a id='errands'></a>Step 14: Configure Errands Page ##
<%= partial 'errands' %>
## <a id='config-elb'></a>Step 15: Configure Router to Elastic Load Balancer ##
<%= partial 'resource_config_elb' %>
## <a id='disable-resources'></a>Step 16: (Optional) Disable Unused Resources ##
<%= partial 'disable_resources' %>
## <a id='stemcell'></a>Step 17: Download Stemcell ##
This step is only required if your Ops Manager does not already have the Stemcell version required by Elastic Runtime.
1. Select **Stemcell**.
1. Log into the [Pivotal Network](https://network.pivotal.io/products/pivotal-cf) and click on **Stemcells**.
1. Download the appropriate stemcell version targeted for your IaaS.
1. In Ops Manager, import the downloaded stemcell <code>.tgz</code> file.
## <a id='complete'></a>Step 18: Complete the Elastic Runtime Installation ##
1. Click the **Installation Dashboard** link to return to the Installation
Dashboard.
1. Click **Apply Changes**. If the following ICMP error message appears, click
**Ignore errors and start the install**.
<%= image_tag("cloudform/install-error.png") %>
The install process generally requires a minimum of 90 minutes to complete.
The image shows the Changes Applied window that displays when the
installation process successfully completes.
<%= image_tag("cloudform/ops-manager-complete.png") %>
---
Return to [Installing Pivotal Cloud Foundry® Using AWS CloudFormation](./cloudform.html).