forked from pivotal-cf/docs-ops-guide
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstorage_considerations.html.md.erb
64 lines (35 loc) · 4.41 KB
/
storage_considerations.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
---
title: Upgrade Considerations for Selecting File Storage in Pivotal Cloud Foundry
owner: Ops Manager
---
<strong><%= modified_date %></strong>
This topic describes critical factors to consider when evaluating the type of file storage to use in your Pivotal Cloud Foundry (PCF) deployment. The [Elastic Runtime blobstore](../concepts/architecture/cloud-controller.html#blob-store) relies on the file storage system to read and write resources, app packages, and droplets.
During an upgrade of PCF, file storage with insufficient IOPS numbers can negatively impact the performance and stability of your PCF deployment.
If disk processing time takes longer than the evacuation timeout for Diego cells, then Diego cells and app instances may take too long to start up, resulting in a cascading failure.
However, the minimum required IOPS depends upon a number of deployment-specific factors and configuration choices. Use this topic as a guide when deciding on the file storage configuration for your deployment.
To see an example of system performance and IOPS load during an upgrade, refer to [Pivotal Web Services Performance During Upgrade](./pws_upgrade_load.html).
## <a id="types"></a> Selecting Internal or External File Storage
When you deploy PCF, you can select internal file storage or external file storage, either network-accessible or IaaS-provided, as an option in the Elastic Runtime tile.
Selecting internal storage causes PCF to deploy a dedicated virtual machine (VM) that uses either NFS or WebDAV for file storage. Selecting external storage allows you to configure file storage provided in network-accessible location or by an IaaS, such as Amazon S3, Google Cloud Storage, or Azure Storage.
Whenever possible, Pivotal recommends using external file storage.
## <a id="load"></a> Calculating Potential Disk Load Requirements
As a best-effort calculation, estimate the total number of bits needed to move during a system upgrade to determine how IOPS-performant your file storage needs to be.
### <a id="num_cells"></a> Number of Diego Cells
As a first calculation, determine the number of Diego cells that your deployment currently uses.
To view the number of Diego cell instances currently running in your deployment, see the **Resource Config** section of your Elastic Runtime tile.
If you expect to scale up the number of instances, use the anticipated scaled number.
<p class="note"><b>Note</b>: If your deployment uses more than 20 Diego cells, you should avoid using internal file storage. Instead, you should always select external or IaaS-provided file storage.</p>
### <a id="max_in_flight"></a> Maximum In-Flight Load and Container Starts for Diego Cells
Operators can limit the number of containers and Diego cell instances that Diego starts concurrently. If operators impose no limits, your file storage may experience exceptionally heavy load during an upgrade.
<%= partial '../adminguide/diego-upgrade-limits' %>
<%= partial 'diego-upgrade-limits-table' %>
### <a id="instances"></a> Calculating Upgrade Load Based on Number of App Instances and Droplet Size
Using the above numbers, you can determine a rough estimate of the expected upgrade load by multiplying the total number of expected app instances for all cells with the size of the instance droplets.
For example, if your deployment starts 10 cells that each host 20 app instances, and each app instance droplet is an average of 100 MB in size, then you potentially have 20 GB of data hitting the disk at the same time. Depending on the IOPS capacity of your disk, this 20 GB of data will take a set amount of time to reassemble on a new disk.
Calculate the amount of time needed to process your potential upgrade load, and verify that the number falls under the evacuation timeout (default is 10 minutes) for Diego cells.
If the calculated processing time is longer than the evacuation timeout, you should upgrade your file storage to use disk with higher IOPS capacity.
For more information about how Diego cells are upgraded, see the [Managing Diego Cell Limits During an Upgrade](../adminguide/diego-cell-upgrade.html) topic.
## <a id="rel_links"></a> Related Links
* [How to use Elastic Runtime blob storage data](https://discuss.pivotal.io/hc/en-us/articles/217982188-How-to-use-Elastic-Runtime-blob-storage-data-)
* [Upgrading Pivotal Cloud Foundry](../customizing/upgrading-pcf.html)
* [Managing Diego Cell Limits During an Upgrade](../adminguide/diego-cell-upgrade.html)