Skip to content

Commit a9b2789

Browse files
committed
feat: cluster per EL onboarding
1 parent 0fe64b8 commit a9b2789

File tree

3 files changed

+32
-3
lines changed

3 files changed

+32
-3
lines changed

README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ MIT
519519

520520
| Name | Version |
521521
|------|---------|
522-
| <a name="provider_castai"></a> [castai](#provider\_castai) | 8.23.0 |
522+
| <a name="provider_castai"></a> [castai](#provider\_castai) | 8.23.3 |
523523
| <a name="provider_helm"></a> [helm](#provider\_helm) | 3.1.1 |
524524
| <a name="provider_kubernetes"></a> [kubernetes](#provider\_kubernetes) | 3.0.1 |
525525

@@ -553,12 +553,15 @@ MIT
553553
| <a name="input_cluster_region"></a> [cluster\_region](#input\_cluster\_region) | Not used. This variable is kept for backwards compatibility, will be removed in the future. | `string` | `""` | no |
554554
| <a name="input_cluster_zone"></a> [cluster\_zone](#input\_cluster\_zone) | Not used. This variable is kept for backwards compatibility, will be removed in the future. | `string` | `""` | no |
555555
| <a name="input_k8s_provider"></a> [k8s\_provider](#input\_k8s\_provider) | Kubernetes cloud provider (gke, eks, aks) | `string` | n/a | yes |
556-
| <a name="input_omni_agent_chart_version"></a> [omni\_agent\_chart\_version](#input\_omni\_agent\_chart\_version) | OMNI agent helm chart version | `string` | `"1.7.0"` | no |
556+
| <a name="input_kvisor_grpc_url"></a> [kvisor\_grpc\_url](#input\_kvisor\_grpc\_url) | Kvisor gRPC URL | `string` | `"kvisor.prod-master.cast.ai:443"` | no |
557+
| <a name="input_loadbalancer_provider"></a> [loadbalancer\_provider](#input\_loadbalancer\_provider) | LoadBalancer provider for edge cluster. This setting is used only for EKS clusters (accepted values are `nlb` and `external`). If empty, it will be defaulted to `external` for EKS | `string` | `null` | no |
558+
| <a name="input_omni_agent_chart_version"></a> [omni\_agent\_chart\_version](#input\_omni\_agent\_chart\_version) | OMNI agent helm chart version | `string` | `"1.10.0"` | no |
557559
| <a name="input_organization_id"></a> [organization\_id](#input\_organization\_id) | CAST AI organization ID | `string` | n/a | yes |
558560
| <a name="input_pod_cidr"></a> [pod\_cidr](#input\_pod\_cidr) | Pod CIDR for network configuration | `string` | n/a | yes |
559561
| <a name="input_reserved_subnet_cidrs"></a> [reserved\_subnet\_cidrs](#input\_reserved\_subnet\_cidrs) | List of reserved subnet CIDR's (relevant for GKE) | `list(string)` | `[]` | no |
560562
| <a name="input_service_cidr"></a> [service\_cidr](#input\_service\_cidr) | Service CIDR for network configuration | `string` | n/a | yes |
561563
| <a name="input_skip_helm"></a> [skip\_helm](#input\_skip\_helm) | Skip installing any helm release; allows managing helm releases using GitOps | `bool` | `false` | no |
564+
| <a name="input_storage_provider"></a> [storage\_provider](#input\_storage\_provider) | Storage provider (storageclass) for the edge clusters. If empty, they will be defaulted to `premium-rwo` for GKE and `gp3` for EKS | `string` | `null` | no |
562565

563566
## Outputs
564567

main.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ locals {
4848
castai_helm_repository = "https://castai.github.io/helm-charts"
4949
castai_agent_secret_ref = "castai-omni-agent-token"
5050

51+
storage_provider = var.storage_provider != null ? var.storage_provider : (var.k8s_provider == "gke" ? "premium-rwo" : (var.k8s_provider == "eks" ? "gp3" : ""))
52+
loadbalancer_provider = var.loadbalancer_provider != null ? var.loadbalancer_provider : (var.k8s_provider == "eks" ? "external" : "")
53+
5154
# Select the appropriate yaml_values based on k8s_provider
5255
liqo_yaml_values = merge(
5356
{ for v in module.liqo_helm_values_gke : "gke" => v.liqo_yaml_values },
@@ -60,12 +63,17 @@ locals {
6063
helm_yaml_values = {
6164
castai = {
6265
apiUrl = var.api_url
66+
grpcAddr = var.kvisor_grpc_url
6367
apiKeySecretRef = local.castai_agent_secret_ref
6468
organizationID = var.organization_id
6569
clusterID = var.cluster_id
6670
clusterName = var.cluster_name
6771
}
6872
liqo = local.liqo_yaml_values[var.k8s_provider].liqo
73+
edgeCluster = {
74+
storageProvider = local.storage_provider
75+
loadBalancerProvider = local.loadbalancer_provider
76+
}
6977
}
7078
}
7179

variables.tf

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ variable "api_url" {
1313
default = "https://api.cast.ai"
1414
}
1515

16+
variable "kvisor_grpc_url" {
17+
description = "Kvisor gRPC URL"
18+
type = string
19+
default = "kvisor.prod-master.cast.ai:443"
20+
}
21+
1622
variable "api_token" {
1723
description = "CAST AI API token (key) for authentication"
1824
type = string
@@ -55,10 +61,22 @@ variable "reserved_subnet_cidrs" {
5561
default = []
5662
}
5763

64+
variable "storage_provider" {
65+
description = "Storage provider (storageclass) for the edge clusters. If empty, they will be defaulted to `premium-rwo` for GKE and `gp3` for EKS"
66+
type = string
67+
default = null
68+
}
69+
70+
variable "loadbalancer_provider" {
71+
description = "LoadBalancer provider for edge cluster. This setting is used only for EKS clusters (accepted values are `nlb` and `external`). If empty, it will be defaulted to `external` for EKS"
72+
type = string
73+
default = null
74+
}
75+
5876
variable "omni_agent_chart_version" {
5977
description = "OMNI agent helm chart version"
6078
type = string
61-
default = "1.7.0"
79+
default = "1.10.0"
6280
}
6381

6482
variable "skip_helm" {

0 commit comments

Comments
 (0)