Files
Sankofa/docs/ceph/ISSUE_ANALYSIS.md
defiQUG 33d50fb91e
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
chore: consolidate local WIP (repo cleanup 20260707)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 09:41:34 -07:00

296 lines
6.4 KiB
Markdown

# Ceph OSD Creation Issue - Comprehensive Analysis
**Date**: 2025-12-13
**Status**: 🔍 **ANALYZING ROOT CAUSES**
---
## Problem Summary
OSD creation commands are **hanging/timing out** when trying to create OSDs on the 6x 250GB drives. The process stops at the "osd new" step, which requires cluster authentication.
---
## Root Cause Analysis
### Issue 1: Bootstrap Keyring Missing/Inaccessible
**Symptom**:
```
unable to find a keyring on /etc/pve/priv/ceph.client.bootstrap-osd.keyring
RADOS timed out (error connecting to the cluster)
RuntimeError: Unable to create a new OSD id
```
**Root Cause**:
- `ceph-volume` needs bootstrap keyring to authenticate with Ceph cluster
- Keyring should be at `/var/lib/ceph/bootstrap-osd/ceph.keyring` OR `/etc/pve/priv/ceph.client.bootstrap-osd.keyring`
- Neither location has the keyring, or it's not accessible
**Why It Happens**:
- Ceph cluster may not have bootstrap-osd client created
- Keyring may have been deleted or never created
- Proxmox Ceph integration may use different keyring location
### Issue 2: Ceph Cluster Connectivity
**Symptom**:
- Commands hang at "osd new" step
- "RADOS timed out" errors
- Cannot connect to cluster
**Possible Causes**:
1. **Ceph monitors not accessible** from R630-01
2. **Network connectivity issues** between nodes
3. **Ceph services not running** properly
4. **Firewall blocking** Ceph ports (6789 for monitors)
### Issue 3: Ceph Cluster Configuration
**Current State**:
- 2 OSDs (one on ml110-01, one on r630-01)
- Ceph cluster exists and is running
- Health warnings present
- Cluster is functional but degraded
**Questions**:
- Is this a Proxmox-managed Ceph cluster?
- Or a standalone Ceph cluster?
- Where are the monitors running?
- What's the cluster configuration?
---
## Detailed Investigation Needed
### Step 1: Check Ceph Cluster Status
```bash
# On R630-01
ceph health
ceph mon stat
ceph mon dump
ceph osd tree
```
**What to look for**:
- Are monitors accessible?
- What are monitor addresses?
- Is cluster in quorum?
- Can we connect to cluster?
### Step 2: Check Bootstrap Keyring
```bash
# Check standard location
ls -la /var/lib/ceph/bootstrap-osd/ceph.keyring
# Check Proxmox location
ls -la /etc/pve/priv/ceph.client.bootstrap-osd.keyring
# Check if bootstrap-osd client exists
ceph auth list | grep bootstrap-osd
```
**What to look for**:
- Does keyring exist?
- Is it readable?
- Does bootstrap-osd client exist in cluster?
### Step 3: Check Ceph Services
```bash
# Check Ceph services
systemctl status ceph.target
systemctl status ceph-mon@*
systemctl status ceph-osd@*
# Check if monitors are running
ps aux | grep ceph-mon
# Check network connectivity
netstat -tlnp | grep 6789
```
**What to look for**:
- Are Ceph services running?
- Are monitors listening on port 6789?
- Can we reach monitor addresses?
### Step 4: Check Network Connectivity
```bash
# Check if we can reach monitors
# First, find monitor addresses
ceph mon dump
# Then test connectivity
ping <monitor-ip>
telnet <monitor-ip> 6789
```
**What to look for**:
- Can we ping monitor IPs?
- Can we connect to port 6789?
- Are there firewall rules blocking?
---
## Likely Scenarios
### Scenario 1: Proxmox-Managed Ceph
**If Ceph was set up via Proxmox**:
- Keyring should be in `/etc/pve/priv/`
- May need to use `pveceph` commands instead
- Proxmox manages Ceph configuration
**Solution**:
```bash
# Use Proxmox Ceph tool
pveceph create /dev/sdc
```
### Scenario 2: Standalone Ceph Cluster
**If Ceph was set up manually**:
- Keyring should be in `/var/lib/ceph/bootstrap-osd/`
- Need to create/bootstrap keyring
- Standard Ceph commands should work
**Solution**:
```bash
# Create/bootstrap keyring
mkdir -p /var/lib/ceph/bootstrap-osd
ceph auth get client.bootstrap-osd -o /var/lib/ceph/bootstrap-osd/ceph.keyring
```
### Scenario 3: Cluster Connectivity Issue
**If monitors are not accessible**:
- Network issue between nodes
- Firewall blocking
- Monitors not running
**Solution**:
- Fix network connectivity
- Check firewall rules
- Ensure monitors are running
---
## Diagnostic Commands
Run these on R630-01 to diagnose:
```bash
# 1. Ceph cluster status
ceph health
ceph mon stat
ceph osd tree
# 2. Bootstrap keyring check
ls -la /var/lib/ceph/bootstrap-osd/ 2>/dev/null
ls -la /etc/pve/priv/ceph.client.bootstrap-osd.keyring 2>/dev/null
ceph auth list | grep bootstrap
# 3. Ceph services
systemctl status ceph.target
systemctl status ceph-mon@*
# 4. Network connectivity
ceph mon dump | grep -E "rank|addr"
# Then test connectivity to monitor IPs
# 5. Check if pveceph available
which pveceph
pveceph status 2>/dev/null || echo "pveceph not available"
```
---
## Recommended Fix Strategy
### Option A: Use Proxmox Ceph Tool (If Available)
```bash
# Check if available
which pveceph
# If yes, use it
for drive in sdc sdd sde sdf sdg sdh; do
pveceph create /dev/$drive
done
```
### Option B: Fix Bootstrap Keyring
```bash
# 1. Check if cluster is accessible
ceph health
# 2. Get or create bootstrap keyring
mkdir -p /var/lib/ceph/bootstrap-osd
ceph auth get client.bootstrap-osd -o /var/lib/ceph/bootstrap-osd/ceph.keyring 2>/dev/null || \
ceph auth add client.bootstrap-osd mon 'allow profile bootstrap-osd' -i /var/lib/ceph/bootstrap-osd/ceph.keyring
# 3. Verify
ls -la /var/lib/ceph/bootstrap-osd/ceph.keyring
# 4. Create OSDs
for drive in sdc sdd sde sdf sdg sdh; do
ceph-volume lvm create --data /dev/$drive
done
```
### Option C: Check Cluster Connectivity First
```bash
# 1. Verify cluster is accessible
ceph health
ceph mon stat
# 2. If not accessible, check:
# - Network connectivity
# - Firewall rules
# - Monitor services
# - Cluster configuration
```
---
## Key Questions to Answer
1. **Is Ceph cluster accessible from R630-01?**
- Can we run `ceph health` successfully?
- Are monitors reachable?
2. **Where is the bootstrap keyring?**
- Does it exist?
- Is it in the right location?
- Is it readable?
3. **Is this Proxmox-managed Ceph?**
- Should we use `pveceph`?
- Is Ceph integrated with Proxmox?
4. **What's the cluster configuration?**
- Where are monitors running?
- What's the cluster name?
- What's the authentication method?
---
## Next Steps
1. **Run diagnostic commands** to understand current state
2. **Identify root cause** (keyring, connectivity, or configuration)
3. **Apply appropriate fix** based on findings
4. **Retry OSD creation** after fix
---
**Last Updated**: 2025-12-13
**Status**: 🔍 **NEEDS DIAGNOSTIC INFORMATION**