Commit Graph

44 Commits

Author SHA1 Message Date
93aeb84c65 Add micro chassis layout for ZimaBoard and similar SBCs
- Implement generate_micro_layout() for single board computers
- Shows onboard eMMC storage if present
- Shows 2 rear SATA ports
- Add monitor-02 entry (ZimaBoard 832)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 21:05:53 -05:00
d5dbdd7869 Add storage-01 mapping and fix NVMe serial display
- Add PCI path mappings for storage-01 (4 SATA drives on AMD controller)
- Fix NVMe serial: use smartctl instead of nvme list for accurate serial numbers
- NVMe now shows actual serial number instead of /dev/ng device path

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 17:31:05 -05:00
982d3f5c05 Add compute-storage-gpu-01 mapping and fix output formatting
- Add PCI path mappings for compute-storage-gpu-01 (5 SATA + 1 NVMe)
- Fix NVMe drives output formatting (use lsblk for size, parse columns properly)
- Fix Ceph RBD devices output formatting (proper column alignment)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 17:27:08 -05:00
418d4d4170 Fix Ceph OSD status parsing to correctly read up/down and in/out
Fixed parsing of ceph osd tree output:
- Column 5 is STATUS (up/down) not column 6
- Column 6 is REWEIGHT (1.0 = in, 0 = out)
- Now correctly shows up/in for active OSDs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:30:21 -05:00
1800b59a25 Add Ceph OSD status and boot drive detection
New features:
- Added STATUS column showing Ceph OSD up/down and in/out status
  Format: "up/in", "up/out", "down/in", etc.
- Added USAGE column to identify boot drives and mount points
  Shows "BOOT" for root filesystem, mount point for others, "-" for OSDs
- Improved table layout with all relevant drive information

Now you can see at a glance:
- Which drives are boot drives
- Which OSDs are up and in the cluster
- Any problematic OSDs that are down or out

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:28:44 -05:00
5430a9242f Add bay-sorted drive table and Ceph OSD tracking
Major enhancements:
- Drive details now sorted by physical bay position (1-10) instead of alphabetically
- Added BAY column to show physical location
- Added CEPH OSD column to show which OSD each drive hosts
- Fixed ASCII art right border alignment (final fix)
- Drives now display in logical order matching physical layout

This makes it much easier to correlate physical drives with their Ceph OSDs
and understand the layout at a glance.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:25:56 -05:00
fd587eca64 Correct HBA PHY to bay mappings based on verified serial numbers
Fixed bay mappings for HBA-connected drives (5-10):
- Bay 5: phy6 -> sde (serial Z4Y6MJ2Q)
- Bay 6: phy7 -> sdf (serial WD-WCAW37306731) ✓ verified
- Bay 7: phy5 -> sdd (serial WD-WCAW32312416)
- Bay 8: phy2 -> sda (serial ZL2L59XD, 16TB)
- Bay 9: phy4 -> sdc (serial ZL2KE9CM, 16TB)
- Bay 10: phy3 -> sdb (serial WD-WCC4N2FYYCXP) ✓ verified

Mappings verified by matching visible drive serial numbers on
physical bay labels with SMART serial number output.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:21:56 -05:00
03cb9e3ea8 Fix ASCII art right border alignment
Added extra spacing to align the right border of the chassis box correctly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:17:38 -05:00
d5c784033e Add serial numbers to drive details output
Changes:
- Added SERIAL column to SATA/SAS drive details table
- Added SERIAL column to NVMe drive details table
- Updated get_drive_smart_info() to extract and return serial numbers
- Widened output format to accommodate serial numbers
- NVMe serials now display correctly from nvme list output

This makes it much easier to match drives to their physical locations
by comparing visible serial numbers on drive labels with the output.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:16:04 -05:00
be541cba97 Fix ASCII art rendering and correct bay 1 mapping
Fixed issues:
- ASCII art boxes now render correctly with fixed-width layout
- Corrected bay 1 mapping: ata-2 -> bay 1 (sdh SSD confirmed)
- Adjusted mobo SATA port mappings based on physical verification
- Simplified layout to use consistent 10-character wide bay boxes

Bay 1 is confirmed to contain sdh (Crucial SSD boot drive) which maps
to pci-0000:0d:00.0-ata-2, so the mapping has been corrected.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:13:17 -05:00
1b35db6723 Fix PCI path mappings and line endings for compute-storage-01
Hardware discovered:
- LSI SAS3008 HBA at 01:00.0 (bays 5-10 via mini-SAS HD cables)
- AMD SATA controller at 0d:00.0 (bays 1-4)
- NVMe at 0e:00.0 (M.2 slot)

Changes:
- Updated SERVER_MAPPINGS with correct PCI paths based on actual hardware
- Fixed diagnose-drives.sh CRLF line endings (was causing script errors)
- Updated README with accurate controller information
- Mapped all 10 bays plus M.2 NVMe slot
- Added detailed cable mapping comments from user documentation

The old mapping referenced non-existent controller 0c:00.0. Now uses
actual SAS PHY paths and ATA port numbers that match physical bays.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 16:04:15 -05:00
38c3dc910e Refactor Drive Atlas with modular chassis templates and PCI path mapping
Major improvements:
- Separated chassis types from server hostnames for better reusability
- Implemented template-based layout system (10bay, large1)
- Renamed medium2 to compute-storage-01 for clarity
- All three Sliger CX471225 servers now use unified 10bay layout
- Added comprehensive PCI path-based drive mapping system
- Created diagnose-drives.sh helper script for mapping new servers
- Added DEBUG mode for troubleshooting drive mappings

Technical changes:
- Replaced DRIVE_MAPPINGS with separate SERVER_MAPPINGS and CHASSIS_TYPES
- Removed spare-10bay layout (all Sliger chassis use same template)
- Improved drive detection and SMART data collection
- Better error handling for missing drives and unmapped servers
- Cleaner code structure with sectioned comments

Documentation:
- Complete rewrite of README with setup guide and troubleshooting
- Added detailed todo.txt with action plan and technical notes
- Documented Sliger CX471225 4U chassis specifications
- Included step-by-step instructions for mapping new servers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 15:54:53 -05:00
657b7d9a2d Refactor Drive Atlas with modular chassis templates and PCI path mapping
Major improvements:
- Separated chassis types from server hostnames for better reusability
- Implemented template-based layout system (10bay, large1, spare-10bay)
- Renamed medium2 to compute-storage-01 for clarity
- Added comprehensive PCI path-based drive mapping system
- Created diagnose-drives.sh helper script for mapping new servers
- Added DEBUG mode for troubleshooting drive mappings
- Documented Sliger CX471225 4U chassis model

Technical changes:
- Replaced DRIVE_MAPPINGS with separate SERVER_MAPPINGS and CHASSIS_TYPES
- Improved drive detection and SMART data collection
- Better error handling for missing drives and unmapped servers
- Cleaner code structure with sectioned comments

Documentation:
- Complete rewrite of README with setup guide and troubleshooting
- Added detailed todo.txt with action plan and technical notes
- Included step-by-step instructions for mapping new servers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 15:52:24 -05:00
585240b03f Updated hostnames 2025-07-24 20:28:00 -04:00
918536e4df more padding 2025-03-01 14:33:42 -05:00
6b93173d9b dynamic box widths 2025-03-01 14:32:10 -05:00
f8d5cfa1d4 adjusting spacing on boxes 2025-03-01 14:27:08 -05:00
03d61f284d ascii formatting 2025-03-01 14:25:32 -05:00
8d36842ee4 addjusted collon to space 2025-03-01 14:22:23 -05:00
37ebd0c23f testing change 2025-03-01 14:17:41 -05:00
762be270d5 Reduced code base 2025-03-01 13:53:08 -05:00
d3673f022d Updated git_bay_number 2025-03-01 13:40:31 -05:00
9877377bbf updated drive mapping 2025-03-01 13:39:03 -05:00
d2b14ed43a added get bay number 2025-03-01 13:34:53 -05:00
54c5955f32 changed physical mapping 2025-03-01 13:31:59 -05:00
de1e6148c4 added smart monitoring 2025-03-01 13:22:51 -05:00
aa6eca3713 usbs are split 2025-03-01 13:11:59 -05:00
628111f477 added bay numbers 2025-03-01 13:08:32 -05:00
ab30387714 /dev/disk/by-path/ mapping 2025-03-01 13:00:53 -05:00
9d29708b64 just drive letters 2025-03-01 12:39:53 -05:00
96b5afae12 sata markdown 2025-03-01 12:35:06 -05:00
f592783359 dynamic usb and sata? 2025-03-01 12:28:18 -05:00
351270b886 dynamic ascii art med 2 2025-03-01 12:23:33 -05:00
d9a7a13bcd added physical mapping 2025-03-01 12:22:15 -05:00
81d7d17370 added nvme and usb back 2025-03-01 12:17:43 -05:00
a6cb3400be Vertical Drive Bays 2025-03-01 12:15:51 -05:00
07e64d50fc sata detection logic 2025-03-01 12:14:14 -05:00
5ba1cc070d moved functions before execution and changed to vertical 2025-03-01 11:58:15 -05:00
0c5e1e1021 medium2 update 2025-03-01 11:43:21 -05:00
4be09875c4 updated large1 ascii 2025-02-21 20:41:24 -05:00
d523cc5c5c Added Ceph RBD support and made not found message. 2024-12-12 21:48:11 -05:00
4f8c5f1bc9 Added support for eMMC storage and changes to SATA/NVME 2024-12-12 21:42:56 -05:00
dfa19271d0 Enhanced README.md and added SMART status indications 2024-12-09 22:07:59 -05:00
805f3fd834 Created basic drive maps and starts of the script 2024-12-09 21:59:32 -05:00