Skip to content

Commit d454d5d

Browse files
committed
Add Managed lustre support in gke-a4x blueprint
1 parent 765c491 commit d454d5d

1 file changed

Lines changed: 65 additions & 3 deletions

File tree

examples/gke-a4x/gke-a4x.yaml

Lines changed: 65 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,28 @@ vars:
5656
nvidia_dra_driver_path: $(ghpc_stage("./nvidia-dra-driver.yaml"))
5757
kueue_configuration_path: $(ghpc_stage("./kueue-configuration.yaml.tftpl"))
5858
accelerator_type: nvidia-gb200
59+
version_prefix: "1.33."
60+
61+
# # To enable Managed-Lustre please uncomment this section and fill out the settings.
62+
# # Additionally, please uncomment the private_service_access, lustre_firewall_rule, managed-lustre and lustre-pv modules.
63+
# # Managed Lustre is only supported in specific regions and zones
64+
# # Please refer https://cloud.google.com/managed-lustre/docs/locations
65+
66+
# # Managed-Lustre instance name. This should be unique for each deployment.
67+
# lustre_instance_id: gke-lustre-instance-a4x1
68+
69+
# # The values of size_gib and per_unit_storage_throughput are co-related
70+
# # Please refer https://cloud.google.com/managed-lustre/docs/create-instance#performance-tiers
71+
# # Storage capacity of the lustre instance in GiB
72+
# lustre_size_gib: 36000
73+
74+
# # Maximum throughput of the lustre instance in MBps per TiB
75+
# per_unit_storage_throughput: 500
5976

6077
terraform_providers:
6178
google:
6279
source: hashicorp/google
63-
version: 6.34.0
80+
version: 7.2.0
6481
configuration:
6582
project: $(vars.project_id)
6683
region: $(vars.region)
@@ -69,7 +86,7 @@ terraform_providers:
6986

7087
google-beta:
7188
source: hashicorp/google-beta
72-
version: 6.34.0
89+
version: 7.2.0
7390
configuration:
7491
project: $(vars.project_id)
7592
region: $(vars.region)
@@ -170,6 +187,7 @@ deployment_groups:
170187
system_node_pool_taints: []
171188
enable_dcgm_monitoring: true
172189
enable_gcsfuse_csi: true
190+
enable_managed_lustre_csi: true # Enable Managed Lustre for the cluster
173191
enable_k8s_beta_apis:
174192
- "resource.k8s.io/v1beta1/deviceclasses"
175193
- "resource.k8s.io/v1beta1/resourceclaims"
@@ -181,7 +199,7 @@ deployment_groups:
181199
master_authorized_networks:
182200
- cidr_block: $(vars.authorized_cidr) # Allows your machine to run the kubectl command. Required for multi network setup.
183201
display_name: "kubectl-access-network"
184-
version_prefix: "1.32."
202+
version_prefix: $(vars.version_prefix)
185203
release_channel: RAPID
186204
maintenance_exclusions:
187205
- name: no-minor-or-node-upgrades-indefinite
@@ -206,6 +224,50 @@ deployment_groups:
206224
))
207225
outputs: [instructions]
208226

227+
# # --- MANAGED LUSTRE ADDITIONS ---
228+
# # Private Service Access (PSA) requires the compute.networkAdmin role which is
229+
# # included in the Owner role, but not Editor.
230+
# # PSA is required for all Managed Lustre functionality.
231+
# # https://cloud.google.com/vpc/docs/configure-private-services-access#permissions
232+
# - id: private_service_access
233+
# source: community/modules/network/private-service-access
234+
# use: [gke-a4x-net-0]
235+
# settings:
236+
# prefix_length: 24
237+
238+
# # Firewall to allow Managed Lustre connection
239+
# - id: lustre_firewall_rule
240+
# source: modules/network/firewall-rules
241+
# use: [gke-a4x-net-0]
242+
# settings:
243+
# ingress_rules:
244+
# - name: $(vars.deployment_name)-allow-lustre-traffic
245+
# description: Allow Managed Lustre traffic
246+
# source_ranges:
247+
# - $(private_service_access.cidr_range)
248+
# allow:
249+
# - protocol: tcp
250+
# ports:
251+
# - "988"
252+
253+
# - id: managed-lustre
254+
# source: modules/file-system/managed-lustre
255+
# use: [gke-a4x-net-0, private_service_access]
256+
# settings:
257+
# name: $(vars.lustre_instance_id)
258+
# local_mount: /lustre
259+
# remote_mount: lustrefs
260+
# size_gib: $(vars.lustre_size_gib)
261+
# per_unit_storage_throughput: $(vars.per_unit_storage_throughput)
262+
# zone: us-central1-a
263+
264+
265+
# - id: lustre-pv
266+
# source: modules/file-system/gke-persistent-volume
267+
# use: [managed-lustre, a4x-cluster]
268+
# settings:
269+
# capacity_gib: $(vars.lustre_size_gib)
270+
209271
- id: workload_policy
210272
source: modules/compute/resource-policy
211273
settings:

0 commit comments

Comments
 (0)