Skip to content

Commit e281a88

Browse files
authored
Merge pull request GoogleCloudPlatform#4654 from parulbajaj01/parul/lustre
Add Managed Lustre support in gke-a4
2 parents 8183d57 + 15db65a commit e281a88

1 file changed

Lines changed: 60 additions & 1 deletion

File tree

examples/gke-a4/gke-a4.yaml

Lines changed: 60 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ vars:
4848
system_node_pool_disk_size_gb: 200
4949
a4_node_pool_disk_size_gb: 100
5050
accelerator_type: nvidia-b200
51-
version_prefix: "1.32."
51+
version_prefix: "1.33."
5252

5353
enable_periodic_health_checks: false # Make this true to run CHS (healthchecks)
5454
health_check_schedule: "0 0 * * 0" # Run the health check at 12:00 AM (midnight) every Sunday
@@ -59,6 +59,22 @@ vars:
5959
chs_cronjob_rendered_path: $(ghpc_stage("./chs-cronjob.yaml.tftpl"))
6060
chs_pvc_rendered_path: $(ghpc_stage("./chs-pvc.yaml.tftpl"))
6161

62+
# # To enable Managed-Lustre please uncomment this section and fill out the settings.
63+
# # Additionally, please uncomment the private_service_access, lustre_firewall_rule, managed-lustre and lustre-pv modules.
64+
# # Managed Lustre is only supported in specific regions and zones
65+
# # Please refer https://cloud.google.com/managed-lustre/docs/locations
66+
67+
# # Managed-Lustre instance name. This should be unique for each deployment.
68+
# lustre_instance_id: gke-lustre-instance
69+
70+
# # The values of size_gib and per_unit_storage_throughput are co-related
71+
# # Please refer https://cloud.google.com/managed-lustre/docs/create-instance#performance-tiers
72+
# # Storage capacity of the lustre instance in GiB
73+
# lustre_size_gib: 36000
74+
75+
# # Maximum throughput of the lustre instance in MBps per TiB
76+
# per_unit_storage_throughput: 500
77+
6278
deployment_groups:
6379
- group: primary
6480
modules:
@@ -171,6 +187,7 @@ deployment_groups:
171187
system_node_pool_taints: []
172188
enable_dcgm_monitoring: true
173189
enable_gcsfuse_csi: true
190+
enable_managed_lustre_csi: true # Enable Managed Lustre for the cluster
174191
enable_private_endpoint: false # Allows access from authorized public IPs
175192
configure_workload_identity_sa: true
176193
master_authorized_networks:
@@ -203,6 +220,48 @@ deployment_groups:
203220
exclusion_scope: NO_MINOR_OR_NODE_UPGRADES
204221
outputs: [instructions]
205222

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

0 commit comments

Comments
 (0)