Compute configurations
A compute configuration defines the virtual hardware used by a cluster. These resources make up the shape of the cluster and the cluster's setup for running applications and workloads in a distributed computing environment. If you are familiar with a Ray cluster.yaml
, an Anyscale compute config is a superset of that comprehensive configuration.
Compute configs are specific to an Anyscale Cloud. This association ensures that for a given compute config, Anyscale always launches workloads in the same Anyscale cloud.
A compute config allows you to control the following:
- Instance types: Virtual machine instance types for head and worker nodes.
- Network settings: Network interfaces, including subnet settings, security groups, regions, and private/public IP options.
- Storage options: Node-attached storage, including disk types and sizes.
- Tags: Add custom tags to your instances, for example for custom tracking of usage and spending.
- Scaling parameters: Minimum and maximum worker node counts to determine scaling behavior based on workload.
- Spot instance configuration: Spot instances for cost savings, and related enhancements (for example, fallback to on-demand instances when spot instances are not available).
- Auto-select worker nodes: beta feature allows defining the accelerator type in the Ray application. Instead of manually specifying instance types and counts, the Anyscale autoscaler dynamically chooses the best-fit instances based on resources requests, instance cost, and availability.
- Advanced features: Advanced options such as node ranking strategy, cross-zone scaling, etc.
- Cloud-specific configurations: Configurations specific to an Anyscale Cloud. Anyscale Clouds deployed on different stacks (EC2, GCE, Kubernetes, or on-premises) have different configurations for features like capacity reservations, subnet control, and so on.
Create a compute config
You can create a compute config with one of three options: the console UI, CLI, or the Python SDK. The CLI requires a YAML file, which allows you to version control compute configurations over time.
Versions
Anyscale supports versioning of compute configs, allowing easy updating of the compute resource requirements for a workload over time.
Supported instance types
When deployed on cloud VMs, Anyscale supports a wide variety of instance types. For a full list, visit Supported Machine Types.
On machine pool and Kubernetes deployments, instance types are defined & managed by cloud administrators.