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>
4.1 KiB
4.1 KiB
Fresh Ceph Setup on Proxmox VE
Prerequisites
- Proxmox VE installed on both nodes
- Nodes are in a Proxmox cluster (or standalone)
- Network connectivity between nodes (192.168.11.0/24)
- Root access to both nodes
Node Information
- ML110-01: ml110-01.sankofa.nexus (192.168.11.10)
- R630-01: r630-01.sankofa.nexus (192.168.11.11)
Step-by-Step Setup
Step 1: Install Ceph on Both Nodes
Run on both nodes:
apt-get update
apt-get install -y ceph ceph-common ceph-base
Step 2: Initialize Ceph Cluster (ML110-01 only)
Run on ml110-01:
pveceph init --network 192.168.11.0/24 --cluster-network 192.168.11.0/24
This will:
- Create
/etc/pve/ceph.conf - Generate cluster FSID
- Set up bootstrap keyrings
Step 3: Create Monitors
Run on ml110-01:
pveceph mon create
Run on r630-01:
pveceph mon create
Step 4: Verify Quorum
Run on either node:
ceph quorum_status
ceph -s
You should see both monitors in quorum.
Step 5: Create OSDs
On ML110-01
Identify available drives:
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,FSTYPE
Create OSD on available drive (replace /dev/sdX with actual drive):
ceph-volume lvm create --data /dev/sdX
On R630-01
Create OSDs on the 6x 250GB drives (sdc, sdd, sde, sdf, sdg, sdh):
for disk in sdc sdd sde sdf sdg sdh; do
echo "Creating OSD on /dev/$disk..."
ceph-volume lvm create --data /dev/$disk
sleep 2
done
Step 6: Verify Cluster Health
Run on either node:
ceph -s
ceph osd tree
ceph health detail
Step 7: Create Storage Pools
Create RBD Pool (for VM disks)
ceph osd pool create rbd 32 32
ceph osd pool application enable rbd rbd
rbd pool init rbd
Create CephFS (for shared storage)
ceph osd pool create cephfs_data 32 32
ceph osd pool create cephfs_metadata 16 16
ceph fs new ceph-fs cephfs_metadata cephfs_data
Step 8: Add Storage to Proxmox
Add Ceph RBD Storage
In Proxmox Web UI:
- Datacenter → Storage → Add → RBD
- ID:
ceph-rbd - Pool:
rbd - Nodes: Select both nodes
- Add
Add CephFS Storage
In Proxmox Web UI:
- Datacenter → Storage → Add → CephFS
- ID:
ceph-fs - FS Name:
ceph-fs - Nodes: Select both nodes
- Add
Verification Checklist
- Both monitors in quorum
- At least 3 OSDs created (for replication factor 3)
- Cluster health is HEALTH_OK or HEALTH_WARN (not HEALTH_ERR)
- Storage pools created (rbd, cephfs_data, cephfs_metadata)
- CephFS filesystem created
- Storage added to Proxmox Web UI
Troubleshooting
Monitors Not Forming Quorum
-
Check monitor services:
systemctl status ceph-mon@$(hostname -s) -
Check monitor logs:
journalctl -u ceph-mon@$(hostname -s) -n 50 -
Verify network connectivity:
ping 192.168.11.10 ping 192.168.11.11 -
Check firewall:
# Allow Ceph ports ufw allow 6789/tcp # Classic msgr ufw allow 3300/tcp # msgr2
OSD Creation Fails
-
Check if drive is available:
lsblk /dev/sdX -
Wipe drive if needed:
wipefs -a /dev/sdX -
Check for existing LVM volumes:
pvs | grep sdX vgs | grep ceph
Cluster Health Issues
-
Check detailed health:
ceph health detail -
Check OSD status:
ceph osd tree ceph osd stat -
Check placement groups:
ceph pg stat
Next Steps
After Ceph is set up:
- Fix PG allocation: Ensure pools have appropriate PG counts
- Create VMs: Use Ceph storage for VM disks
- Monitor cluster: Set up monitoring and alerts
- Backup configuration: Backup
/etc/pve/ceph.confand keyrings
Important Notes
- Minimum OSDs: For
osd_pool_default_size = 3, you need at least 3 OSDs - PG Count: Use calculator: https://ceph.io/pgcalc/
- Network: Ensure cluster network has sufficient bandwidth
- Backup: Always backup Ceph configuration and keyrings