Appearance
Acquire ODCRs
Acquiring on-demand capacity reservations (ODCRs) is recommended prior to installation. ODCRs reserve compute capacity for EC2 instances in a specific availability zone and for a specific duration.
Reserving ODCRs is a means of ensuring that Yellowbrick instances and virtual compute clusters can be created and used when they are needed. ODCRs are of significant value as a boot-strapping mechanism during initial Yellowbrick installation. You can use ODCRs to make sure that sufficient hardware resources are available for creating the software stack and running all of its services. Once Yellowbrick is installed, you may decide to drop the ODCRs and rely on reserved nodes (a Yellowbrick Manager feature, defined per data warehouse instance), or you may wish to use the two mechanisms in a complementary way. (See also the discussion of "reserved nodes" in the main Yellowbrick documentation.)
In the AWS Console, go to EC2 Dashboard > Capacity Reservations, where you can view or create ODCRs.
Note that ODCRs represent a pool of resources that are reserved under an AWS account, and they are not exclusive to Yellowbrick. Any other application operated through that AWS account could take resources from the ODCR pool. ODCRs are available to all Yellowbrick data warehouse instances and associated Yellowbrick services that run in their own EC2 instances (shared services, bulk load servers, and so on).
The following table shows the instance types that are used to run AWS and Yellowbrick shared services. Note that the instance type depends on the choice of Standard (the default, smaller footprint) or Scaled shared services.
Component | AWS Instance Type: Standard | AWS Instance Type: Scaled | Quantity |
---|---|---|---|
AWS shared services and CDWM service | t3.large (2 vCPUs) | t3.xlarge (4 vCPUs) | 2 |
Monitoring services (observability) | m5.xlarge (4 vCPUs) | m5.8xlarge (32 vCPUs) | 1 |
Compiler service | m5.2xlarge (8 vCPUs) | m5.8xlarge (32 vCPUs) | 1 |
Bulk load service | m5.2xlarge (8 vCPUs) | c5n.9xlarge (32 vCPUs) | 1 |
Data warehouse instance | m5d.4xlarge (16 vCPUs) | m5dn.12xlarge (48 vCPUs) | 1 |
The following table shows the AWS instance types that are used for large and small compute nodes (worker nodes assigned to compute clusters).
Compute Node Type | Instance Type | Quantity |
---|---|---|
Large compute nodes (V1) | i3en.metal | 1+ |
Large compute nodes (V2) | i4i.32xlarge | 1+ |
Small compute nodes (V1) | m5dn.4xlarge | 1+ |
Small compute nodes (V2) | i4i.4xlarge | 1+ |
Availability of hardware resources in AWS may never be guaranteed, but ODCRs make compute resources more immediately available. In order to decide how many ODCRs your Yellowbrick deployment is going to benefit from in practice (beyond the installation stage), consider the following questions:
- How many Yellowbrick data warehouse instances are you going to create?
- How many compute clusters will be created for each instance, and what instance types and number of nodes will you allocate?
- How dynamic is the behavior of your cloud operations in Yellowbrick? Will clusters be routinely suspended and resumed, or expanded and shrunken? How variable is the general use of compute clusters going to be? In other words, how many compute nodes need to be readily available at any given time?
- What will the additional cost overhead be if you create ODCRs?
Parent topic:Preparing for a New Installation