Some checks failed
API CI / API Lint (push) Successful in 47s
API CI / API Type Check (push) Failing after 47s
API CI / API Test (push) Successful in 1m0s
API CI / API Build (push) Failing after 50s
API CI / Build Docker Image (push) Has been skipped
Build Crossplane Provider / build (push) Failing after 5m51s
CD Pipeline / Deploy to Staging (push) Failing after 29s
CI Pipeline / Lint and Type Check (push) Failing after 36s
CI Pipeline / Build (push) Has been skipped
CI Pipeline / Test Backend (push) Failing after 1m33s
CI Pipeline / Test Frontend (push) Failing after 30s
CI Pipeline / Security Scan (push) Failing after 1m16s
Crossplane Provider CI / Go Test (push) Failing after 3m23s
Crossplane Provider CI / Go Lint (push) Failing after 7m27s
Crossplane Provider CI / Go Build (push) Failing after 3m27s
Deploy to Staging / Deploy to Staging (push) Failing after 30s
Portal CI / Portal Lint (push) Failing after 21s
Portal CI / Portal Type Check (push) Failing after 21s
Portal CI / Portal Test (push) Failing after 21s
Portal CI / Portal Build (push) Failing after 22s
Test Suite / frontend-tests (push) Failing after 30s
Test Suite / api-tests (push) Failing after 49s
Test Suite / blockchain-tests (push) Failing after 30s
Type Check / type-check (map[directory:. name:root]) (push) Failing after 23s
Type Check / type-check (map[directory:api name:api]) (push) Failing after 21s
Type Check / type-check (map[directory:portal name:portal]) (push) Failing after 19s
Validate Configuration Files / validate (push) Failing after 1m52s
CD Pipeline / Deploy to Production (push) Has been skipped
Co-authored-by: Cursor <cursoragent@cursor.com>
153 lines
3.5 KiB
Markdown
153 lines
3.5 KiB
Markdown
# Manual Verification Steps for 250GB Drives on R630-01
|
|
|
|
**Date**: 2025-12-13
|
|
**Purpose**: Manual steps to verify 250GB drives when SSH access requires authentication
|
|
|
|
---
|
|
|
|
## Quick Verification Commands
|
|
|
|
SSH to R630-01 (192.168.11.11) and run these commands:
|
|
|
|
### Step 1: List All Block Devices
|
|
|
|
```bash
|
|
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,FSTYPE,MODEL,SERIAL
|
|
```
|
|
|
|
**Look for**: 6x drives around 250GB (232-260 GB range)
|
|
|
|
### Step 2: List All Physical Disks
|
|
|
|
```bash
|
|
fdisk -l | grep -E "^Disk /dev/sd" | sort
|
|
```
|
|
|
|
**Look for**: Disks showing ~250GB or ~232-260 GB
|
|
|
|
### Step 3: Check Current Ceph OSDs
|
|
|
|
```bash
|
|
ceph osd tree
|
|
ceph osd df
|
|
ceph health detail
|
|
```
|
|
|
|
**Expected**: Should show 2 OSDs currently
|
|
|
|
### Step 4: Check Storage Pools
|
|
|
|
```bash
|
|
pvesm status
|
|
```
|
|
|
|
**Look for**: Storage pools and their usage
|
|
|
|
### Step 5: Check Volume Groups
|
|
|
|
```bash
|
|
vgs
|
|
pvs
|
|
```
|
|
|
|
**Look for**: Which disks are in volume groups
|
|
|
|
---
|
|
|
|
## One-Line Verification Script
|
|
|
|
Copy and paste this entire block into R630-01:
|
|
|
|
```bash
|
|
echo "=== R630-01 Disk Verification ===" && \
|
|
echo "" && \
|
|
echo "1. All Block Devices:" && \
|
|
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,FSTYPE,MODEL,SERIAL && \
|
|
echo "" && \
|
|
echo "2. All Physical Disks:" && \
|
|
fdisk -l 2>/dev/null | grep -E "^Disk /dev/sd" | sort && \
|
|
echo "" && \
|
|
echo "3. 250GB Drives (232-260 GB):" && \
|
|
for disk in /dev/sd[a-z]; do [ -b "$disk" ] && fdisk -l "$disk" 2>/dev/null | grep "^Disk $disk" | awk -v d="$disk" '{size=$3" "$4; if (size ~ /232|233|234|235|236|237|238|239|240|241|242|243|244|245|246|247|248|249|250|251|252|253|254|255|256|257|258|259|260/) print d": "size}'; done && \
|
|
echo "" && \
|
|
echo "4. Current Ceph OSDs:" && \
|
|
ceph osd tree 2>/dev/null && \
|
|
echo "" && \
|
|
echo "5. Ceph Health:" && \
|
|
ceph health 2>/dev/null && \
|
|
echo "" && \
|
|
echo "6. Storage Pools:" && \
|
|
pvesm status 2>/dev/null && \
|
|
echo "" && \
|
|
echo "7. Volume Groups:" && \
|
|
vgs 2>/dev/null && \
|
|
echo "" && \
|
|
echo "8. Physical Volumes:" && \
|
|
pvs 2>/dev/null
|
|
```
|
|
|
|
---
|
|
|
|
## What to Look For
|
|
|
|
### Expected Output
|
|
|
|
You should see something like:
|
|
|
|
```
|
|
NAME SIZE TYPE MOUNTPOINT FSTYPE MODEL
|
|
sda 279G disk ST9300653SS # 300GB - Proxmox
|
|
sdb 279G disk HUC106030CSS600 # 300GB - Ceph OSD
|
|
sdc 250G disk # 250GB - Available?
|
|
sdd 250G disk # 250GB - Available?
|
|
sde 250G disk # 250GB - Available?
|
|
sdf 250G disk # 250GB - Available?
|
|
sdg 250G disk # 250GB - Available?
|
|
sdh 250G disk # 250GB - Available?
|
|
```
|
|
|
|
### Key Indicators
|
|
|
|
**Available Drive** (good for OSD):
|
|
- ✅ No MOUNTPOINT (empty)
|
|
- ✅ No FSTYPE (not formatted)
|
|
- ✅ Not in volume group (check `pvs`)
|
|
- ✅ Size around 232-260 GB
|
|
|
|
**Drive in Use** (not available):
|
|
- ❌ Has MOUNTPOINT (mounted)
|
|
- ❌ Has FSTYPE (formatted)
|
|
- ❌ In volume group (shows in `pvs`)
|
|
|
|
---
|
|
|
|
## After Verification
|
|
|
|
Once you've identified available 250GB drives, share:
|
|
1. How many 250GB drives were found
|
|
2. Which device names (sdc, sdd, etc.)
|
|
3. Which ones are available (no mount, no partitions, not in VG)
|
|
4. Current Ceph OSD status
|
|
|
|
Then we can proceed with creating the third OSD!
|
|
|
|
---
|
|
|
|
## Alternative: Copy Script to R630-01
|
|
|
|
If you have access to copy files:
|
|
|
|
```bash
|
|
# From your local machine
|
|
scp scripts/verify-r630-250gb-drives.sh root@192.168.11.11:/tmp/
|
|
|
|
# Then on R630-01
|
|
ssh root@192.168.11.11
|
|
bash /tmp/verify-r630-250gb-drives.sh
|
|
```
|
|
|
|
---
|
|
|
|
**Last Updated**: 2025-12-13
|
|
|