Files
proxmox/docs/archive/ML110_SYNC_GUIDE.md

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