Terraform modules to manage Kubernetes infrastructure for Anyscale. This builds the foundational cloud resources needed to run Anyscale on Kubernetes and should be paired with the Anyscale AWS and Anyscale GCP Terraform Modules.
THIS IS PROVIDED AS A STARTING POINT
USE AT YOUR OWN RISK
To streamline long-term management and to enable customization, we've modularized the resources into the following Terraform sub-modules:
- anyscale-k8s-helm - Required Helm Charts for Anyscale on Kubernetes
- anyscale-k8s-configmap - A sample configmap for Anyscale. This can also be managed via the Anyscale Kubernetes Manager Helm Chart.
- anyscale-k8s-namespace - The Namespace for Anyscale. This can also be managed via the Anyscale Kubernetes Manager Helm Chart.
These modules are designed with best practices in mind, ensuring a secure, efficient, and scalable Anyscale deployment. Each module is standalone, allowing you the flexibility to disable any you don't need. This is handy if you're looking to incorporate custom solutions for specific resources.
The examples folder has a couple common use cases that have been tested. These include:
- Anyscale - AWS & EKS
- Anyscale - GCP & GKE
- Build everything - use a common name for all resources, public networking ** Not Started **
- Build everything - use a common name for all resources, private networking ** Not Started **
Additional examples can be requested via an issues ticket.
We use GitHub Issues to track community reported issues and missing features.
Name | Version |
---|---|
terraform | >= 1.0 |
helm | ~> 2.0 |
kubernetes | ~> 2.0 |
time | >= 0.12 |
No providers.
No modules.
No resources.
Name | Description | Type | Default | Required |
---|---|---|---|---|
cloud_provider | (Required) The cloud provider (aws or gcp) ex: cloud_provider = "aws" |
string |
n/a | yes |
aws_controlplane_role_arn | (Optional) The ARN of the AWS IAM role that will be used by the EKS cluster to access AWS services. Required if cloud_provider is set to aws .ex: aws_controlplane_role_arn = "arn:aws:iam::123456789012:role/my-eks-controlplane-role" |
string |
null |
no |
aws_dataplane_role_arn | (Optional) The ARN of the AWS IAM role that will be used by the EKS cluster to access AWS services. Required if cloud_provider is set to aws .ex: aws_dataplane_role_arn = "arn:aws:iam::123456789012:role/my-eks-dataplane-role" |
string |
null |
no |
kubernetes_cluster_name | (Optional) The name of the Kubernetes cluster. ex: kubernetes_cluster_name = "my-cluster" |
string |
null |
no |
No outputs.