github.com/filecoin-project/bacalhau@v0.3.23-0.20230228154132-45c989550ace/ops/terraform/variables.tf (about)

     1  variable "bacalhau_version" {
     2    type = string
     3  }
     4  # allows deploying bacalhau from a specific branch instead of a release
     5  variable "bacalhau_branch" {
     6    type = string
     7    default = ""
     8  }
     9  variable "bacalhau_port" {
    10    type = string
    11  }
    12  # used to quickly provision a connected cluster using the unsafe private key
    13  # IMPORTANT - only use this for test clusters or stress test clusters
    14  # it will result in node0 having an unsafe private key
    15  variable "bacalhau_unsafe_cluster" {
    16    type    = bool
    17    default = false
    18  }
    19  # these are used for long lived clusters that have already been bootstrapped
    20  # and the node0, node1 and node2 ids are derived from a persisted known private key
    21  variable "bacalhau_node_id_0" {
    22    type    = string
    23    default = ""
    24  }
    25  variable "bacalhau_node_id_1" {
    26    type    = string
    27    default = ""
    28  }
    29  variable "bacalhau_node_id_2" {
    30    type    = string
    31    default = ""
    32  }
    33  variable "ipfs_version" {
    34    type = string
    35  }
    36  variable "gcp_project" {
    37    type = string
    38  }
    39  variable "machine_type" {
    40    type = string
    41  }
    42  variable "instance_count" {
    43    type = string
    44  }
    45  variable "volume_size_gb" {
    46    type = number
    47  }
    48  variable "boot_disk_size_gb" {
    49    type    = number
    50    default = 10
    51  }
    52  // should we add delete protection to public ip addresses and disks?
    53  variable "protect_resources" {
    54    type    = bool
    55    default = true
    56  }
    57  // should we automatically make subnets (for long lived clusters)
    58  // set to false if this is a short lived cluster
    59  variable "auto_subnets" {
    60    type    = bool
    61    default = false
    62  }
    63  variable "restore_from_backup" {
    64    type    = string
    65    default = ""
    66  }
    67  variable "region" {
    68    type = string
    69  }
    70  variable "zone" {
    71    type = string
    72  }
    73  variable "ingress_cidrs" {
    74    type    = set(string)
    75    default = []
    76  }
    77  variable "ssh_access_cidrs" {
    78    type    = set(string)
    79    default = []
    80  }
    81  
    82  // Out of a total of var.instance_count machines, how many do you want to be GPU machines?
    83  // I chose this, rather than making a new pool of machines, to maintain configuration parity
    84  variable "num_gpu_machines" {
    85    type    = number
    86    default = 0
    87  }
    88  
    89  // Number of GPUs attached to each machine
    90  variable "num_gpus_per_machine" {
    91    type    = number
    92    default = 1
    93  }
    94  
    95  // The sku of the GPU
    96  variable "gpu_type" {
    97    type    = string
    98    default = "nvidia-tesla-t4"
    99  }
   100  
   101  // The machine type to attach the GPU to. Unfortunately not all machines support attaching GPUs. I suggest using the UI to figure this out.
   102  variable "gpu_machine_type" {
   103    type    = string
   104    default = "n1-standard-4"
   105  }
   106  
   107  // Grafana: you can find the /api/prom/push URL, username, and password for your metrics
   108  // endpoint by clicking on Details in the Prometheus card of the Cloud Portal
   109  // https://grafana.com/docs/grafana-cloud/fundamentals/cloud-portal/
   110  // Note: this is not an account-wide API key, but rather a key for Prometheus
   111  variable "grafana_cloud_prometheus_api_key" {
   112    type      = string
   113    default   = ""
   114    sensitive = true
   115  }
   116  
   117  variable "grafana_cloud_prometheus_user" {
   118    type    = string
   119    default = ""
   120  }
   121  
   122  // Remote Write Endpoint 
   123  // e.g. https://prometheus-prod-01-eu-west-0.grafana.net/api/prom/push
   124  variable "grafana_cloud_prometheus_endpoint" {
   125    type    = string
   126    default = ""
   127  }
   128  
   129  variable "grafana_cloud_loki_user" {
   130    type    = string
   131    default = ""
   132  }
   133  
   134  variable "grafana_cloud_loki_api_key" {
   135    type      = string
   136    default   = ""
   137    sensitive = true
   138  }
   139  
   140  variable "grafana_cloud_loki_endpoint" {
   141    type    = string
   142    default = ""
   143  }
   144  
   145  variable "loki_version" {
   146    type    = string
   147    default = ""
   148  }
   149  
   150  variable "grafana_cloud_tempo_api_key" {
   151    type      = string
   152    default   = ""
   153    sensitive = true
   154  }
   155  
   156  variable "grafana_cloud_tempo_user" {
   157    type    = string
   158    default = ""
   159  }
   160  
   161  variable "grafana_cloud_tempo_endpoint" {
   162    type    = string
   163    default = ""
   164  }
   165  
   166  variable "estuary_api_key" {
   167    type      = string
   168    default   = ""
   169    sensitive = true
   170  }
   171  
   172  variable "internal_ip_addresses" {
   173    type    = list(string)
   174    default = []
   175  }
   176  
   177  variable "public_ip_addresses" {
   178    type    = list(string)
   179    default = []
   180  }
   181  
   182  variable "log_level" {
   183    type    = string
   184    default = "debug"
   185  }
   186  
   187  // Version number, omit the 'v' prefix
   188  variable "otel_collector_version" {
   189    type    = string
   190    default = ""
   191  }
   192  
   193  variable "otel_collector_endpoint" {
   194    type    = string
   195    default = ""
   196  }