Files
aitbc/.windsurf/skills/ssh-access-patterns.md
aitbc 054adaf7be
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
CLI Tests / test-cli (push) Successful in 4s
Integration Tests / test-service-integration (push) Failing after 12s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 3s
Python Tests / test-python (push) Successful in 11s
Security Scanning / security-scan (push) Successful in 1m11s
feat: switch SQLite to WAL mode and disable Btrfs CoW for data directory
- Change SQLite journal mode from DELETE to WAL for better concurrency
- Add chattr +C to /var/lib/aitbc in setup.sh to disable Btrfs Copy-on-Write
- Add fallback logging when chattr is unavailable or fails
- Prevent SQLite corruption on Btrfs filesystems by ensuring overwrite-in-place behavior
2026-04-21 22:00:47 +02:00

1.4 KiB

SSH Access Patterns for AITBC Nodes

Purpose

Document SSH access patterns for all AITBC nodes in the infrastructure.

Node Access Patterns

aitbc (localhost)

Direct access - no SSH required.

# Run commands directly on localhost
echo "command"
systemctl restart service-name

aitbc1

Direct SSH access.

ssh aitbc1
# Or execute single command
ssh aitbc1 "command"

gitea-runner (also hosts aitbc2)

Direct SSH access. aitbc2 blockchain node runs on the same host.

ssh gitea-runner
# Or execute single command
ssh gitea-runner "command"

Common Operations

Check service status on aitbc1

ssh aitbc1 "systemctl status aitbc-blockchain-node --no-pager"

Restart service on gitea-runner (aitbc2)

ssh gitea-runner "systemctl restart aitbc-blockchain-node"

Copy file to aitbc1

scp /path/to/file aitbc1:/path/to/destination

Execute script on gitea-runner

ssh gitea-runner "bash /path/to/script.sh"

Multi-Node Operations

Run command on all remote nodes

for node in aitbc1 gitea-runner; do
  ssh "$node" "systemctl status aitbc-blockchain-node --no-pager"
done

Check block heights across all nodes

for node in aitbc1 gitea-runner; do
  echo "=== $node ==="
  ssh "$node" "curl -s http://localhost:8006/rpc/bestBlock | jq '.height'"
done