kubeflow-cluster

Deepbody-inc/kubeflow-cluster/gke

Terraform Module HCL GKE

Terraform module for creating GKE clusters to run Kubeflow

Install
module "kubeflow-cluster" {
source = "Deepbody-inc/kubeflow-cluster/gke"
version = "0.0.1"
}
plain text: /constructs/tfmod-deepbody-inc-kubeflow-cluster-gke/install.txt
⭐ Source on GitHub 📦 Registry page
README

terraform-gke-kubeflow-cluster ![lifecycle](https://img.shields.io/badge/lifecycle-alpha-blue.svg) ![License](LICENSE.txt) A [Terraform][] module for creating a GKE cluster to run Kubeflow on. This module creates a GKE cluster similiar to how the [kfctl][kfctl] tool does, with a few changes: - adds a Cloud SQL instance to use for the metadata store/databases - creates a GCE Persistent Disk to use for the artifact store This module was originally created by the ML Infrastructure team at Spotify to create and manage long-lived GKE clusters for many Kubeflow-using teams at Spotify to use, whereas the kfctl tool and documentation around creating a cluster for Kubeflow tends to assume that individual clusters are quickly spun-up and torn-down by engineers using Kubeflow. For more details on how

Inputs (30)
NameTypeDescriptionDefault
mysql_developer_passwordstringCloudSQL MySQL instance developer user password required
mysql_read_only_user_passwordstringCloudSQL MySQL instance read only user password required
cluster_regionstringThe region of the cluster and is also used for Cloud SQL instance and artifact s required
main_node_pool_min_nodesstringValue to set for min node count for cluster autoscaler for the main node pool. required
cluster_zonestringThe location of the cluster - can be a zone or region name. Set to zone name for required
upstream_nameserversstringList of upstream DNS resolvers (IP addresses) to set in kube-dns ConfigMap as up required
gpu_node_pool_namestring required
env_labelstringEnvironment label: test, dev, prod required
highmem_node_pool_namestring required
main_node_pool_max_nodesstringValue to set for max node count for cluster autoscaler for the main node pool. required
main_node_pool_namestring required
projectstringGCP project to create the resources in required
cluster_namestringName of the GKE cluster, will also be used as a part of the name for related res required
networkstringSet this to the network of another project (along with subnetwork, cluster_secon required
subnetworkstringhttps://www.terraform.io/docs/providers/google/r/container_cluster.html#subnetwo required
highmem_node_pool_machine_typestring"n2-highmem-16"
issue_client_certificatestringIdeally this should always be set to false, this feature is going away eventuallfalse
services_secondary_range_namestringOnly set for Shared VPC clusters. https://www.terraform.io/docs/providers/google""
auto_upgradestring"false"
main_node_pool_machine_typestring"n1-standard-8"
gpu_node_pool_machine_typestring"n1-standard-8"
min_master_versionstringMinimum version of Kubernetes to install on master (optional), see https://www.t""
node_versionstring(optional) https://www.terraform.io/docs/providers/google/r/container_cluster.ht""
istio_enabledstringBoolean, if Istio is enabled (in Kubeflow versions 0.6 and greater)false
network_policy_enabledstringBoolean, to enable Network Policy or nottrue
initial_node_countstring3
timeoutstring"30m"
auto_repairstring"true"
max_pods_per_nodestringSets the default_max_pods_per_node setting on the container_cluster resource.110
cluster_secondary_range_namestringOnly set for Shared VPC clusters. https://www.terraform.io/docs/providers/google""
Resources (18)
google_compute_diskgoogle_compute_resource_policygoogle_container_clustergoogle_container_node_poolgoogle_project_iam_membergoogle_service_accountgoogle_service_account_keygoogle_sql_database_instancegoogle_sql_usergoogle_storage_bucketgoogle_storage_bucket_iam_bindingkubernetes_config_mapkubernetes_namespacekubernetes_rolekubernetes_role_bindingkubernetes_secretnull_resourcerandom_id
Details
FrameworkTerraform Module
LanguageHCL
Version0.0.1
Cloud GKE
★ Stars0
Forks0
Total downloads799
Inputs30
Resources18
LicenseApache-2.0
NamespaceDeepbody-inc
Updated