hyperpod-ssm
/hyperpod-ssm
Wykonuje polecenia i przesyła pliki na węzłach klastra HyperPod przez AWS Systems Manager, bo SSH nie jest dostępny.
- Autor
- 420company ↗
- Repozytorium
- artemis ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 25.10.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 6
- Skrypty
- 3
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 25.10.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
- 3 skrypty w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.
Skrypty: scripts/get-cluster-info.sh, scripts/list-nodes.sh, scripts/ssm-exec.sh
Co robi i kiedy
Wykonuje polecenia i przesyła pliki na węzłach klastra HyperPod przez AWS Systems Manager, bo SSH nie jest dostępny.
Oryginalny opis (EN)
Remote command execution and file transfer on SageMaker HyperPod cluster nodes via AWS Systems Manager (SSM). This is the primary interface for accessing HyperPod nodes — direct SSH is not available. Use when any skill, workflow, or user request needs to execute commands on cluster nodes, upload files to nodes, read/download files from nodes, run diagnostics, install packages, or perform any operation requiring shell access to HyperPod instances. Other HyperPod skills depend on this skill for all node-level operations.
Jak działa
- SSM Target Format
- Scripts
- Running Commands Across Many Nodes
- Manual SSM Commands
- Common Diagnostic Commands
- Key Details
Podgląd SKILL.md
---
name: hyperpod-ssm
description: Remote command execution and file transfer on SageMaker HyperPod cluster nodes via AWS Systems Manager (SSM). This is the primary interface for accessing HyperPod nodes — direct SSH is not available. Use when any skill, workflow, or user request needs to execute commands on cluster nodes, upload files to nodes, read/download files from nodes, run diagnostics, install packages, or perform any operation requiring shell access to HyperPod instances. Other HyperPod skills depend on this skill for all node-level operations.
metadata:
version: "1.0.0"
---
# HyperPod SSM Access
## SSM Target Format
Target: `sagemaker-cluster:<CLUSTER_ID>_<GROUP_NAME>-<INSTANCE_ID>`
- `CLUSTER_ID`: Last segment of cluster ARN (NOT the cluster name). Extract via `get-cluster-info.sh`.
- `GROUP_NAME`: Instance group name — retrieve via `list-nodes.sh`.
- `INSTANCE_ID`: EC2 instance ID (e.g., `i-0123456789abcdef0`)
## Scripts
Three scripts under `scripts/`. Resolve cluster info and nodes **once**, then execute per node.
### get-cluster-info.sh — Resolve cluster name → ID (call once)
```bash
scripts/get-cluster-info.sh CLUSTER_NAME [--region REGION]
# Output: {"cluster_id":"...","cluster_arn":"...","cluster_name":"...","region":"..."}
```
### list-nodes.sh — List all nodes with pagination (call once)
```bash
scripts/list-nodes.sh CLUSTER_NAME [--region REGION] [--instance-group GROUP] [--instance-id ID]
# Output: JSON array of ClusterNodeSummaries (InstanceId, InstanceGroupName, InstanceStatus, etc.)
```
`list-cluster-nodes` paginates at 100 nodes. This script handles pagination automatically.
### ssm-exec.sh — Execute command on a node (call per node)
```bash
# Execute — with pre-built target
scripts/ssm-exec.sh --target "sagemaker-cluster:CLUSTERID_GROUP-INSTANCEID" 'command' [--region REGION]
# Execute — with parts
scripts/ssm-exec.sh --cluster-id ID --group GROUP --instance-id INSTANCE_ID 'command' [--region REGION]
# Upload
scripts/ssm-exec.sh --target TARGET --upload LOCAL_PATH REMOTE_PATH [--region REGION]
# Read remote file
scripts/ssm-exec.sh --target TARGET --read REMOTE_PATH [--region REGION]
```
## Running Commands Across Many Nodes
SSM `start-session` rate limit: **3 TPS** per account. Plan batch size and delay accordingly.
`aws ssm send-command` does NOT support `sagemaker-cluster:` targets — only `start-session` works.
## Manual SSM Commands
When the scripts aren't suitable, use `aws ssm start-session` directly with `AWS-StartNonInteractiveCommand`:
```bash
cat > /tmp/cmd.json << 'EOF'
{"command": ["bash -c 'echo hello && whoami'"]}
EOF
aws ssm start-session \
--target sagemaker-cluster:{CLUSTER_ID}_{GROUP_NAME}-{INSTANCE_ID} \
--region REGION \
--document-name AWS-StartNonInteractiveCommand \
--parameters file:///tmp/cmd.json
```
Always use a JSON file for `--parameters` — inline parameters break with special characters.
## Common Diagnostic Commands
| Task | Command |
| ---------------- | -------------------------------------------------------------- |
| Lifecycle logs | `cat /var/log/provision/provisioning.log` |
| Memory | `free -h` |
| Disk/mounts | `df -h && lsblk` |
| GPU status | `nvidia-smi` |
| GPU memory | `nvidia-smi --query-gpu=memory.used,memory.total --format=csv` |
| EFA/network | `fi_info -p efa` |
| CloudWatch agent | `sudo systemctl status amazon-cloudwatch-agent` |
| Top processes | `ps aux --sort=-%mem \| head -20` |
## Key Details
- Default SSM non-interactive user is `root`.
- SSM rate limit: **3 TPS** per account.
- For interactive sessions (rare), omit `--document-name` to get a shell.
- Interactive commands (vim, top) are not supported via `AWS-StartNonInteractiveCommand`.
- Large outputs may be truncated by SSM.
- For troubleshooting common errors, see [references/troubleshooting.md](references/troubleshooting.md).
Pliki w paczce (6)
- SKILL.json 1 KB
- SKILL.md 4 KB
- references/troubleshooting.md 2 KB
- scripts/get-cluster-info.sh 1 KB
- scripts/list-nodes.sh 2 KB
- scripts/ssm-exec.sh 3 KB
Wersje
| Repozytorium | Wynik | Licencja |
|---|---|---|
| Ta strona · 420company/artemis | 95 | MIT |
| awslabs/agent-plugins | 100 | Apache-2.0 |
Migawka bazy z 28.10.2026 · wersja paczki a9ca2e11126c (skrót SHA-256 całej paczki)
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 95hyperpod-issue-report
Zbiera diagnostykę z węzłów klastra SageMaker HyperPod i przygotowuje raport problemu do zgłoszenia w wsparciu AWS. - 100hyperpod-issue-report
Generuje raporty problemów z klastrów HyperPod (EKS i Slurm), zbierając logi diagnostyczne i konfiguracje do rozwiązywania problemów i zgłoszeń do AWS Support. - 95hyperpod-version-checker
Sprawdza i porównuje wersje komponentów na węzłach klastra SageMaker HyperPod (sterowniki NVIDIA, CUDA, NCCL, EFA, Neuron SDK, PyTorch) i wykrywa niezgodności między węzłami. - 100sagemaker-ai
Buduje, trenuje, wdraża i monitoruje obciążenia na Amazon SageMaker AI, w tym inferencję, Pipelines, HyperPod i Model Monitor. - 100env-secrets-manager
Obsługuje cykl życia zmiennych i sekretów: szablony .env, walidację, wykrywanie wycieków i rotację w Vault, AWS SSM, 1Password i Doppler. - 90ssh-remote-operations
Wykonuje operacje DevOps na zdalnych serwerach przez konfigurację SSH w katalogu projektu, bez ujawniania kluczy i haseł.