Commit b1d59b5
committed
terraform: Add DataCrunch GPU cloud provider integration
Add comprehensive DataCrunch cloud provider support for GPU instances
ranging from Blackwell B300 to Tesla V100.
Features intelligent GPU selection with three strategies: wildcard
variant selection (ANY_1H100), tier-based fallback (H100_OR_LESS,
B300_OR_LESS) for automatic fallback through GPU tiers when top options
unavailable, and explicit instance types for production workloads.
GPU tier hierarchy supports 10 tiers with automatic fallback to
maximize provisioning success while capping costs. Tier-based selection
recommended for most users (~$1.99/hr cap for H100 tier).
Add capacity checking infrastructure to validate instance availability
before provisioning. API credential management uses OAuth2 with secure
token retrieval from ~/.datacrunch/credentials.
Special handling for local provider development with dev_overrides in
~/.terraformrc, skipping force_init in Ansible terraform module.
Add ML environment setup for DataCrunch instances: package updates, ML
dependencies, PyTorch in virtualenv, NVIDIA driver reload with proper
module unload sequence (nvidia_uvm, nvidia_drm, nvidia_modeset, nvidia)
to avoid PyTorch/driver mismatch, Claude Code installation, MOTD with
PyTorch activation instructions, and bashrc auto-activation.
Add persistent volume support with KEEP=1 configuration option. Volume
mappings cached in ~/.cache/kdevops/datacrunch/ enable fast
reprovisioning (seconds vs minutes) while managing ~$10/month storage
costs. Volume lifecycle wrapper scripts automate volume ID tracking
across instance destroy/recreate cycles.
Add defconfig files for tier-based selection, specific GPUs, and
multi-GPU configurations. Comprehensive documentation focuses on
capacity challenges, selection strategies, and best practices.
Generated-by: Claude AI
Signed-off-by: Luis Chamberlain <[email protected]>1 parent dbc36fd commit b1d59b5
File tree
55 files changed
+5398
-10
lines changed- defconfigs
- docs
- playbooks
- roles
- devconfig/tasks
- gen_tfvars
- defaults
- templates/datacrunch
- terraform/tasks
- scripts
- terraform
- datacrunch
- kconfigs
- scripts
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
55 files changed
+5398
-10
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
| 134 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
30 | 39 | | |
31 | 40 | | |
32 | 41 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
0 commit comments