-
Notifications
You must be signed in to change notification settings - Fork 140
/
azure.html.md.erb
193 lines (141 loc) · 11.3 KB
/
azure.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
---
title: Installing Ops Manager on Azure
owner: Ops Manager
---
This topic describes how to install <%= vars.platform_name %> on Microsoft Azure.
It includes resource requirements, prerequisites, instructions for installing <%= vars.platform_name %> on Azure, and additional resources.
## <a id="overview"></a> Overview
You can install <%= vars.platform_name %> on Azure, Azure Government Cloud, or Azure Germany. For more information about Azure regions, see [Azure regions](https://azure.microsoft.com/en-us/global-infrastructure/regions/) in the Microsoft Azure documentation.
You can install <%= vars.platform_name %> on Azure with the <%= vars.app_runtime_full %> (<%= vars.app_runtime_abbr %>) runtime. There are resource requirements specific to both <%= vars.app_runtime_abbr %> and Azure. Ensure you meet the requirements for <%= vars.app_runtime_abbr %> and the requirements specific to Azure before installing <%= vars.platform_name %> on Azure. For more information, see [Requirements](#requirements).
## <a id="requirements"></a> Requirements
This section lists the following resource requirements for installing <%= vars.platform_name %> on Azure:
* <%= vars.app_runtime_abbr %> resource requirements. For more information, see [<%= vars.app_runtime_abbr %> Resource Requirements](#pcf-requirements).
* Azure-specific resource requirements. For more information, see [Azure Resource Requirements](#azure-requirements).
### <a id="pcf-requirements"></a> <%= vars.app_runtime_abbr %> Resource Requirements
The following are general resource requirements for deploying and managing an <%= vars.platform_name %> deployment with <%= vars.app_runtime_abbr %>:
* <%= vars.app_runtime_abbr %> requires sufficient IP allocation. The following lists the minimum required IP allocations:
* One static IP address for either HAProxy or one of your Gorouters.
* One static IP address for each job in each tile. For a full list, see the **Resource Config** pane for each tile.
* One static IP address for each job listed below:
* Consul
* NATS
* File Storage
* MySQL Proxy
* MySQL Server
* Backup Restore Node
* HAProxy
* Router
* MySQL Monitor
* Diego Brain
* TCP Router
* One IP for each VM instance created by the service.
* An additional IP address for each compilation worker. Use the following formula to determine the total IPs required: `IPs needed = static IPs + VM instances + compilation workers`.
* <%= vars.company_name %> recommends that you allocate at least 36 dynamic IP addresses when deploying <%= vars.ops_manager %> with <%= vars.app_runtime_abbr %>. BOSH requires additional dynamic IP addresses during installation to compile and deploy VMs, install <%= vars.app_runtime_abbr %>, and connect to services.
* <%= vars.company_name %> recommends using a network without DHCP for deploying <%= vars.app_runtime_abbr %> VMs.
<p class="note"><strong>Note:</strong> If you have DHCP, see <a href="./troubleshooting.html">Troubleshooting Deployment Problems</a> to avoid issues with your installation.</p>
### <a id="azure-requirements"></a> Azure Resource Requirements
The following are the minimum resource requirements for deploying an <%= vars.platform_name %> deployment with <%= vars.app_runtime_abbr %> on Azure:
* An OS disk of 120 GB for the <%= vars.ops_manager %> VM.
<p class="note"><strong>Note:</strong> <%= vars.ops_manager %> v1.11 requires a BOSH Director VM with at least 8 GB memory.</p>
* A minimum of the following VM instance limits in your Azure account. The number of VMs required depends on the number of tiles and availability zones (AZs) you plan to deploy. The following VM guidelines apply to the <%= vars.app_runtime_abbr %> and Small Footprint <%= vars.app_runtime_abbr %> runtimes:
* **<%= vars.app_runtime_abbr %>:** A new Azure deployment requires the following VMs for <%= vars.app_runtime_abbr %> and <%= vars.ops_manager %>:
<table border='1' class='nice'>
<tr>
<th>VM Type</th>
<th>VM Count</th>
</tr>
<tr>
<td>F1s</td>
<td>22</td>
</tr>
<tr>
<td>F2s</td>
<td>22</td>
</tr>
<tr>
<td>DS1 v2</td>
<td>2</td>
</tr>
<tr>
<td>DS11 v2</td>
<td>10</td>
</tr>
<tr>
<td>DS12 v2</td>
<td>24</td>
</tr>
</table>
<p class="note"><strong>Note:</strong> If you are deploying a test or sandbox <%= vars.platform_name %> that does not require high availability, then you can scale down the number of VM instances in your deployment. For more information, see <a href="../opsguide/scaling-ert-components.html">Scaling <%= vars.app_runtime_abbr %></a>.</p>
* **Small Footprint <%= vars.app_runtime_abbr %>:** A new Azure deployment requires the following VMs for Small Footprint <%= vars.app_runtime_abbr %> and <%= vars.ops_manager %>:
<table id='azure-requirements' border="1" class="nice">
<tr>
<th></th>
<th>VM Type</th>
<th>VM Count</th>
<th>Notes</th>
</tr>
<tr>
<th rowspan=4>Small Footprint <%= vars.app_runtime_abbr %></th>
<td>DS11 v2</td>
<td>1</td>
<td></td>
</tr>
<tr>
<td>DS12 v2</td>
<td>2</td>
<td></td>
</tr>
<tr>
<td>F2s</td>
<td>0</td>
<td>Add 1 to count if using HAProxy</td>
</tr>
<tr>
<td>F1s</td>
<td>5</td>
<td></td>
</tr>
<tr>
<th rowspan=2><%= vars.ops_manager %></th>
<td>DS2 v2</td>
<td>1</td>
<td></td>
</tr>
<tr>
<td>F4s</td>
<td>4</td>
<td></td>
</tr>
</table>
<p class="note"><strong>Note:</strong> Some VM instance types are only supported in certain Azure regions. For more information, see <a href="https://azure.microsoft.com/en-us/regions/services/">Products available by region</a> in the Microsoft Azure documentation. To deploy <%= vars.platform_name %> on an Azure region that does not support the above VM instance types, you must override the default VM sizes. For more information, see <a href="https://docs.pivotal.io/pivotalcf/2-2/opsman-api#overriding-defaults-with-custom-disk-types">Overriding defaults with custom disk types</a> in the <%= vars.ops_manager %> API documentation. Changing the default VM sizes may increase the cost of your deployment.</p>
## <a id="prerequisites"></a> Prerequisites
Before installing <%= vars.platform_name %> on Azure, you must:
* Install the Azure CLI v2.0. To install the Azure CLI for your operating system, see [Preparing to Deploy <%= vars.ops_manager %> on Azure Manually](/platform/ops-manager/<%= vars.current_major_version.sub('.', '-') %>/azure/prepare-env-manual.html).
* Configure sufficient IP allocation for <%= vars.app_runtime_abbr %>. For more information about IP allocation requirements, see [<%= vars.app_runtime_abbr %> Resource Requirements](#pas).
* Create an SSL certificate for your <%= vars.platform_name %> domain.
<p class="note"><strong>Note:</strong> To deploy <%= vars.platform_name %> to a production environment, you must obtain a certificate from a certificate authority (CA). <%= vars.company_name %> recommends using a self-signed certificate generated by <%= vars.ops_manager %> for development and testing purposes only.</p>
* Assign administrative rights to a domain for <%= vars.platform_name %>. You must be able to add wildcard records to this domain.
* Create a wildcard DNS record that points to your Gorouter or load balancer. Alternatively, you can use a service such as xip.io. For example, `203.0.113.0.xip.io`. Then, create at least one wildcard TLS certificate that matches the DNS record you configured.
<p class="note"><strong>Note:</strong> With a wildcard DNS record, every hostname in your domain resolves to the IP address of your Gorouter or load balancer. For example, if you create a DNS record `*.example.com` pointing to your Gorouter, every app deployed to the `example.com` domain resolves to the IP address of your Gorouter.</p>
* Create one or more NTP servers, if the NTP servers are not already provided by your Azure project.
* Install the most recent version of the Cloud Foundry Command Line Interface (cf CLI). For more information, see the [Cloud Foundry Command Line Interface](https://github.com/cloudfoundry/cli) repository on GitHub.
* (Optional) Configure external storage. <%= vars.company_name %> recommends using external storage if possible. For more information about how file storage location affects platform performance and stability during upgrades, see [Configure File Storage](https://docs.pivotal.io/application-service/<%= vars.current_major_version %>/operating/configuring.html#file-storage) in _Configuring <%= vars.app_runtime_abbr %> for Upgrades_.
* (Optional) Configure external databases. <%= vars.company_name %> recommends using external databases in production deployments for BOSH Director and <%= vars.app_runtime_abbr %>. An external database must be configured to use the UTC timezone.
* (Optional) Configure external user stores. When you deploy <%= vars.platform_name %>, you can select a SAML user store for <%= vars.ops_manager %> or a SAML or LDAP user store for <%= vars.app_runtime_abbr %>, to integrate existing user accounts.
## <a id='install'></a> Install <%= vars.platform_name %> on Azure
You can install <%= vars.platform_name %> on Azure either manually or using Terraform.
To install <%= vars.platform_name %> on Azure, see one of the following topics:
* [Installing <%= vars.platform_name %> on Azure Manually](pcf-azure-manual-config.html)
* [Installing <%= vars.platform_name %> on Azure Using Terraform](azure-terraform.html)
## <a id='install-gov'></a> Install <%= vars.platform_name %> on Azure Government Cloud
To install <%= vars.platform_name %> on Azure Government Cloud, see [Configuring BOSH Director on Azure Government Cloud](/platform/ops-manager/<%= vars.current_major_version.sub('.', '-') %>/azure/gov-cloud.html).
## <a id='install-germany'></a> Install <%= vars.platform_name %> on Azure Germany
To install <%= vars.platform_name %> in Azure Germany, see [Configuring BOSH Director on Azure Germany](/platform/ops-manager/<%= vars.current_major_version.sub('.', '-') %>/azure/german-cloud.html).
## <a id='resources'></a> Additional Resources
The following are additional resources related to installing <%= vars.platform_name %> on GCP:
* For information about troubleshooting the <%= vars.platform_name %> on Azure install process, see [Troubleshooting <%= vars.platform_name %> on Azure](azure-troubleshooting.html).
* For production-level deployment options for <%= vars.platform_name %> on Azure, see [Reference Architecture for <%= vars.platform_name %> on Azure](../plan/azure/azure_ref_arch.html).
* For information about how to manage IaaS users and credentials in Azure, see the [Azure security documentation](https://docs.microsoft.com/en-us/azure/security/).
* For recommendations on how to create and scope Azure accounts for <%= vars.platform_name %>, see [IaaS Permissions Guidelines](iaas-user-roles.html).
* For information about deleting a <%= vars.platform_name %> on Azure installation, see [Deleting <%= vars.platform_name %> from Azure](deleting-azure-install.html).
* For information about upgrading <%= vars.platform_name %> on Azure, see [Upgrading BOSH Director on Azure](azure-om-upgrade.html).