OSX-PROXMOX/README.md

8.5 KiB
Raw Blame History

🚀 Dell R730 ORION - Hybrid Network Infrastructure

OSX-PROXMOX + NixOS Router + AI Agent + BGP Integration

GitHub stars GitHub forks GitHub license GitHub issues


🎯 ORION Hybrid Architecture

This repository combines the power of OSX-PROXMOX for macOS virtualization with a complete enterprise-grade network infrastructure for the Dell PowerEdge R730 (CQ5QBM2).

What's Included

  • Proxmox VE - Enterprise hypervisor with web management
  • NixOS + VyOS Router - High-performance routing with BGP (AS 394955)
  • AI Autonomous Agent - Intelligent network monitoring and self-healing
  • macOS Sequoia - Full macOS 15 support for development
  • iDRAC Automation - Complete remote management via Redfish API
  • Prometheus + Grafana - Real-time monitoring and dashboards
  • BGP Routing - Multi-peer BGP with Telus (AS 6939)

🚀 Quick Start (ORION Hybrid)

# Clone repository
git clone https://github.com/luci-digital/luci-macOSX-PROXMOX.git
cd luci-macOSX-PROXMOX

# Install dependencies
pip3 install requests

# Run automated deployment
python3 deploy-orion-hybrid.py

Documentation:

🏗️ Architecture Overview

Dell R730 ORION (384GB RAM, 56 threads)
├─ Proxmox VE 8.x (Hypervisor)
│  ├─ VM 200: NixOS + VyOS Router (8 cores, 32GB)
│  │  └─ BGP, Firewall, DHCP, DNS, NAT
│  ├─ VM 300: AI Agent (4 cores, 16GB)
│  │  └─ Autonomous monitoring, Prometheus, Grafana
│  └─ VM 100: macOS Sequoia (12 cores, 64GB)
│     └─ Development environment
└─ iDRAC Enterprise - Full remote management

📦 Repository Structure

luci-macOSX-PROXMOX/
├── deploy-orion-hybrid.py          # Main deployment automation
├── deploy-orion.sh                 # Legacy Proxmox deployment
├── orion-config.json               # Hardware & VM configuration
├── vm-configs/                     # NixOS VM configurations
│   ├── router-vm/                  # Router VM (NixOS + VyOS)
│   └── ai-agent-vm/                # AI monitoring agent
├── ORION_HYBRID_ARCHITECTURE.md    # Full architecture docs
├── QUICKSTART_HYBRID.md            # Quick start guide
└── tools/                          # Utility scripts

🌟 Key Features

Hybrid Design: Best of both worlds - virtualization flexibility with bare-metal routing performance

Full Automation: Deploy entire stack with one command via iDRAC Redfish API

Declarative Configuration: NixOS-based router and AI agent for reproducible deployments

AI-Powered Monitoring: Autonomous agent that monitors, alerts, and self-heals network issues

BGP Routing: Production-grade routing with BIRD2, supporting multi-peer BGP

macOS Development: Native macOS Sequoia environment via OSX-PROXMOX


🍎 Original OSX-PROXMOX Guide

v15 - Sequoia

The following guide provides the original OSX-PROXMOX installation method for running macOS on Proxmox VE with AMD or Intel hardware.


🛠 Installation Guide

  1. Install a FRESH/CLEAN version of Proxmox VE (v7.0.XX ~ 8.4.XX) - just follow the Next, Next & Finish (NNF) approach.
    • Preliminary support for Proxmox VE V9.0.0 BETA.
  2. Open the Proxmox Web Console → Navigate to Datacenter > YOUR_HOST_NAME > Shell.
  3. Copy, paste, and execute the command below:
/bin/bash -c "$(curl -fsSL https://install.osx-proxmox.com)"

🎉 Voilà! You can now install macOS! osx-terminal

🔧 Additional Configuration

Install EFI Package in macOS (Disable Gatekeeper First)

sudo spctl --master-disable

🍏 macOS Versions Supported

macOS High Sierra - 10.13
macOS Mojave - 10.14
macOS Catalina - 10.15
macOS Big Sur - 11
macOS Monterey - 12
macOS Ventura - 13
macOS Sonoma - 14
macOS Sequoia - 15


🖥 Proxmox VE Versions Supported

v7.0.XX ~ 8.4.XX

🔄 OpenCore Version

  • April/2025 - 1.0.4 → with SIP Enabled, DMG only signed by Apple and all features of securities

☁️ Cloud Support (Run Hackintosh in the Cloud!)

  • 🌍 VultR
  • 📺 Video Tutorial (Enable captions for better understanding)
  • Now has configurable bridges, and can add as many bridges and specify the subnet for them.

⚠️ Disclaimer

🚨 FOR DEVELOPMENT, STUDENT, AND TESTING PURPOSES ONLY.

I am not responsible for any issues, damage, or data loss. Always back up your system before making any changes.


📌 Requirements

Since macOS Monterey, your host must have a working TSC (timestamp counter). Otherwise, if you assign multiple cores to the VM, macOS may crash due to time inconsistencies. To check if your host is compatible, run the following command in Proxmox:

dmesg | grep -i -e tsc -e clocksource

Expected Output (for working hosts):

clocksource: Switched to clocksource tsc

Problematic Output (for broken hosts):

tsc: Marking TSC unstable due to check_tsc_sync_source failed
clocksource: Switched to clocksource hpet

🛠 Possible Fixes

  1. Disable "ErP mode" and all C-state power-saving modes in your BIOS. Then power off your machine completely and restart.
  2. Try forcing TSC in GRUB:
    • Edit /etc/default/grub and add:
      clocksource=tsc tsc=reliable
      
    • Run update-grub and reboot (This may cause instability).
  3. Verify the TSC clock source:
    cat /sys/devices/system/clocksource/clocksource0/current_clocksource
    
    The output must be tsc.

Read More


🔍 Troubleshooting

High Sierra & Below - Recovery Server Could Not Be Contacted

If you encounter this error, you need to switch from HTTPS to HTTP in the installation URL:

  1. When the error appears, leave the window open.

  2. Open Installer Log (Window > Installer Log).

  3. Search for "Failed to load catalog" → Copy the log entry.

  4. Close the error message and return to macOS Utilities.

  5. Open Terminal, paste the copied data, and remove everything except the URL (e.g., https://example.sucatalog).

  6. Change https:// to http://.

  7. Run the command:

    nvram IASUCatalogURL="http://your-http-url.sucatalog"
    
  8. Quit Terminal and restart the installation.

Reference & More Details

Problem for GPU Passthrough

If you see an Apple logo and the bar doesnt move on your external display, you need to disable “above 4g decoding” in the motherboards BIOS.

In some environments it is necessary to segment the IOMMU Groups to be able to pass the GPU to the VM.

  1. Add the content pcie_acs_override=downstream,multifunction pci=nommconf in the file /etc/default/grub at the end of the line GRUB_CMDLINE_LINUX_DEFAULT;
  2. After changing the grub file, run the command update-grub and reboot your PVE.

🎥 Demonstration (in Portuguese)

📽️ Watch on YouTube
(Enable auto-translate captions for English subtitles!)


🎖 Credits

  • OpenCore/Acidanthera Team - Open-source bootloader
  • Corpnewt - Tools (ProperTree, GenSMBIOS, etc.)
  • Apple - macOS
  • Proxmox - Fantastic virtualization platform & documentation

🌎 Join Our Community - Universo Hackintosh Discord

💬 Join Here!