204 lines
5.0 KiB
Markdown
204 lines
5.0 KiB
Markdown
# ML110 Sync Guide
|
|
|
|
**Target**: ml110 (192.168.11.10)
|
|
**Purpose**: Clean and sync verified working files to ml110
|
|
|
|
## Overview
|
|
|
|
This guide explains how to clean the old files on ml110 and sync only verified working files from the updated project.
|
|
|
|
## Current State on ML110
|
|
|
|
**Location**: `/opt/`
|
|
|
|
```
|
|
/opt/
|
|
├── smom-dbis-138/ # Source project (config and keys)
|
|
│ ├── config/ # Configuration files
|
|
│ ├── keys/ # Validator and oracle keys
|
|
│ └── logs/ # Deployment logs
|
|
└── smom-dbis-138-proxmox/ # Proxmox deployment project
|
|
├── config/ # Proxmox configuration
|
|
├── scripts/ # Deployment scripts
|
|
├── install/ # Installation scripts
|
|
└── docs/ # Documentation
|
|
```
|
|
|
|
## What Will Be Synced
|
|
|
|
### smom-dbis-138-proxmox (Complete Sync)
|
|
- ✅ All updated configuration files
|
|
- ✅ All verified scripts
|
|
- ✅ All install scripts
|
|
- ✅ All library files
|
|
- ✅ Updated documentation
|
|
- ❌ Excludes: logs, .git, node_modules
|
|
|
|
### smom-dbis-138 (Selective Sync)
|
|
- ✅ Config files (genesis.json, permissions, etc.)
|
|
- ✅ Validator keys (preserves existing, updates if newer)
|
|
- ✅ Oracle keys
|
|
- ❌ Excludes: logs (can be regenerated)
|
|
|
|
## Sync Process
|
|
|
|
### Option 1: Automated Sync (Recommended)
|
|
|
|
```bash
|
|
cd /home/intlc/projects/proxmox
|
|
./scripts/sync-to-ml110.sh
|
|
```
|
|
|
|
This script will:
|
|
1. Create a backup of existing files
|
|
2. Remove old smom-dbis-138-proxmox directory
|
|
3. Copy all verified working files
|
|
4. Set correct permissions
|
|
5. Verify the sync
|
|
|
|
### Option 2: Manual Clean Then Sync
|
|
|
|
**Step 1: Clean old files**
|
|
```bash
|
|
./scripts/clean-ml110.sh
|
|
```
|
|
|
|
**Step 2: Sync files**
|
|
```bash
|
|
./scripts/sync-to-ml110.sh
|
|
```
|
|
|
|
### Option 3: Manual Process
|
|
|
|
**1. SSH to ml110**
|
|
```bash
|
|
ssh root@192.168.11.10
|
|
```
|
|
|
|
**2. Backup existing files**
|
|
```bash
|
|
cd /opt
|
|
BACKUP_DIR="/opt/backup-$(date +%Y%m%d-%H%M%S)"
|
|
mkdir -p "$BACKUP_DIR"
|
|
cp -r smom-dbis-138 "$BACKUP_DIR/" 2>/dev/null || true
|
|
cp -r smom-dbis-138-proxmox "$BACKUP_DIR/" 2>/dev/null || true
|
|
```
|
|
|
|
**3. Remove old proxmox project**
|
|
```bash
|
|
rm -rf /opt/smom-dbis-138-proxmox
|
|
```
|
|
|
|
**4. From local machine, sync files**
|
|
```bash
|
|
cd /home/intlc/projects/proxmox
|
|
|
|
# Sync proxmox project
|
|
rsync -avz --delete \
|
|
--exclude='.git' \
|
|
--exclude='*.log' \
|
|
--exclude='logs/*' \
|
|
-e "sshpass -p 'L@kers2010' ssh -o StrictHostKeyChecking=no" \
|
|
smom-dbis-138-proxmox/ \
|
|
root@192.168.11.10:/opt/smom-dbis-138-proxmox/
|
|
|
|
# Sync source project config and keys
|
|
rsync -avz \
|
|
-e "sshpass -p 'L@kers2010' ssh -o StrictHostKeyChecking=no" \
|
|
../smom-dbis-138/config/ \
|
|
root@192.168.11.10:/opt/smom-dbis-138/config/
|
|
|
|
rsync -avz \
|
|
-e "sshpass -p 'L@kers2010' ssh -o StrictHostKeyChecking=no" \
|
|
../smom-dbis-138/keys/ \
|
|
root@192.168.11.10:/opt/smom-dbis-138/keys/
|
|
```
|
|
|
|
## Verification
|
|
|
|
After syncing, verify files:
|
|
|
|
```bash
|
|
./scripts/verify-ml110-sync.sh
|
|
```
|
|
|
|
Or manually:
|
|
|
|
```bash
|
|
ssh root@192.168.11.10
|
|
|
|
# Check proxmox project
|
|
cd /opt/smom-dbis-138-proxmox
|
|
ls -la
|
|
cat config/proxmox.conf | grep VALIDATOR_COUNT
|
|
cat config/network.conf | grep GATEWAY
|
|
|
|
# Check source project
|
|
cd /opt/smom-dbis-138
|
|
ls -la config/
|
|
ls -la keys/validators/
|
|
```
|
|
|
|
## Important Notes
|
|
|
|
### Validator Keys
|
|
- Current state: 4 validator keys (validator-1 through validator-4)
|
|
- Expected: 5 validator keys (validator-5 missing)
|
|
- Action: Keys will be preserved. Generate validator-5 if needed.
|
|
|
|
### Configuration Files
|
|
- All config files will be updated with latest changes
|
|
- `network.conf` will use 192.168.11.X subnet
|
|
- `proxmox.conf` will have correct VMID ranges
|
|
|
|
### Scripts
|
|
- All scripts will have execute permissions set
|
|
- All scripts use updated VMID ranges and IP addresses
|
|
|
|
## Troubleshooting
|
|
|
|
### Connection Issues
|
|
```bash
|
|
# Test SSH connection
|
|
sshpass -p 'L@kers2010' ssh -o StrictHostKeyChecking=no root@192.168.11.10 "echo 'Connected'"
|
|
```
|
|
|
|
### Permission Issues
|
|
```bash
|
|
# Fix permissions on ml110
|
|
ssh root@192.168.11.10
|
|
chmod +x /opt/smom-dbis-138-proxmox/scripts/*.sh
|
|
chmod +x /opt/smom-dbis-138-proxmox/scripts/*/*.sh
|
|
chmod 600 /opt/smom-dbis-138/keys/**/*.priv
|
|
```
|
|
|
|
### Missing Files
|
|
```bash
|
|
# Re-run sync
|
|
./scripts/sync-to-ml110.sh
|
|
```
|
|
|
|
## Files Preserved
|
|
|
|
The sync process preserves:
|
|
- ✅ Existing validator keys (unless newer versions exist)
|
|
- ✅ Configuration customizations (if any)
|
|
- ✅ Backup of old files (in /opt/backup-YYYYMMDD-HHMMSS/)
|
|
|
|
## Files Updated
|
|
|
|
The sync process updates:
|
|
- ✅ All scripts with latest fixes
|
|
- ✅ All configuration files with current values
|
|
- ✅ All documentation with latest information
|
|
- ✅ Network configuration (192.168.11.X)
|
|
- ✅ VMID ranges (1000-1004, 1500-1503, 2500-2502)
|
|
|
|
## Next Steps After Sync
|
|
|
|
1. **Verify sync**: Run `./scripts/verify-ml110-sync.sh`
|
|
2. **Check configuration**: Review `config/proxmox.conf` and `config/network.conf`
|
|
3. **Generate validator-5 key** (if needed): See `docs/VALIDATOR_KEY_DETAILS.md`
|
|
4. **Deploy**: Run `./deploy-all.sh` on ml110
|
|
|