Close Menu
    DevStackTipsDevStackTips
    • Home
    • News & Updates
      1. Tech & Work
      2. View All

      CodeSOD: A Unique Way to Primary Key

      July 22, 2025

      BrowserStack launches Figma plugin for detecting accessibility issues in design phase

      July 22, 2025

      Parasoft brings agentic AI to service virtualization in latest release

      July 22, 2025

      Node.js vs. Python for Backend: 7 Reasons C-Level Leaders Choose Node.js Talent

      July 21, 2025

      The best CRM software with email marketing in 2025: Expert tested and reviewed

      July 22, 2025

      This multi-port car charger can power 4 gadgets at once – and it’s surprisingly cheap

      July 22, 2025

      I’m a wearables editor and here are the 7 Pixel Watch 4 rumors I’m most curious about

      July 22, 2025

      8 ways I quickly leveled up my Linux skills – and you can too

      July 22, 2025
    • Development
      1. Algorithms & Data Structures
      2. Artificial Intelligence
      3. Back-End Development
      4. Databases
      5. Front-End Development
      6. Libraries & Frameworks
      7. Machine Learning
      8. Security
      9. Software Engineering
      10. Tools & IDEs
      11. Web Design
      12. Web Development
      13. Web Security
      14. Programming Languages
        • PHP
        • JavaScript
      Featured

      The Intersection of Agile and Accessibility – A Series on Designing for Everyone

      July 22, 2025
      Recent

      The Intersection of Agile and Accessibility – A Series on Designing for Everyone

      July 22, 2025

      Zero Trust & Cybersecurity Mesh: Your Org’s Survival Guide

      July 22, 2025

      Execute Ping Commands and Get Back Structured Data in PHP

      July 22, 2025
    • Operating Systems
      1. Windows
      2. Linux
      3. macOS
      Featured

      A Tomb Raider composer has been jailed — His legacy overshadowed by $75k+ in loan fraud

      July 22, 2025
      Recent

      A Tomb Raider composer has been jailed — His legacy overshadowed by $75k+ in loan fraud

      July 22, 2025

      “I don’t think I changed his mind” — NVIDIA CEO comments on H20 AI GPU sales resuming in China following a meeting with President Trump

      July 22, 2025

      Galaxy Z Fold 7 review: Six years later — Samsung finally cracks the foldable code

      July 22, 2025
    • Learning Resources
      • Books
      • Cheatsheets
      • Tutorials & Guides
    Home»Development»How to Set Up a Proxmox Cluster for Free – Virtualization Basics

    How to Set Up a Proxmox Cluster for Free – Virtualization Basics

    April 14, 2025

    Virtualization is a game-changer for developers, hobbyists, and IT enthusiasts. It lets you run multiple operating systems on one machine, which is perfect for testing apps, hosting servers, or learning new tech. If you want to take it further, clustering ties multiple machines together for more power and flexibility. And you can use Proxmox Virtual Environment (VE) to build a cluster for free – no expensive licenses required.

    In this tutorial, you’ll set up a 3-node Proxmox cluster using three computers (or virtual machines for practice). By the end, you’ll have a working cluster ready to host virtual machines (VMs) and experiment with cool features like guest migration and VM replication etc.

    Let’s dive in!

    Prerequisites: What You’ll Need to Know

    This guide is beginner-friendly for clustering, but you’ll need some basic skills to follow along. You should be comfortable with:

    • Installing an OS from a USB drive (don’t worry, I’ll walk you through the steps).

    • Using a terminal for simple commands like ping or nano.

    • Setting up a home network with static IPs (for example, knowing your router’s IP range). No advanced virtualization or clustering experience is required—I’ll explain the key concepts as we go.

    What You’ll Need

    • Three computers (or VMs): Start with at least 8GB RAM and 100GB storage per machine, plus a virtualization-capable CPU (most modern ones work). These specs are a baseline—actual RAM and storage depend on how many VMs you want to host (e.g., more VMs need more resources).

    • Proxmox VE: Free and open-source. Grab the ISO from proxmox.com.

    • Network connection: All three must be on the same network and be able to ping each other.

    • A web browser: For Proxmox’s web interface.

    • 30–60 minutes: Depending on your setup pace.

    Why Proxmox and Clustering?

    Proxmox VE is a free, open-source virtualization platform built on Debian Linux. It uses KVM for VMs (fully virtualized systems) and LXC for containers (lightweight app environments), all managed via a slick web interface.

    Clustering means linking multiple Proxmox machines—called nodes—so they act as one system. Think of it like a team: each node shares the workload, and you control them from a single dashboard. This setup lets you move (migrate) VMs between nodes, boost reliability, and experiment with high availability (HA)—where VMs auto-restart (on healthy node) if a node fails.

    Plus, Proxmox offers a handy replication feature: it can sync VM data between nodes automatically, keeping backups ready if something goes wrong.

    It’s a must-have skill for DevOps, app testing, or IT tinkering.

    2 Nodes vs. 3 Nodes: Which Should You Choose?

    Before we build your 3-node cluster, let’s explore your options. Clustering can start with 2 nodes or go to 3 (or more). Here’s why you might pick one over the other:

    • 2-Node Cluster:

      • Pros: Easier setup with just two machines. Great for learning basics or small projects. Uses less hardware.

      • Cons: No quorum—a voting majority to keep the cluster running if a node fails—so HA isn’t reliable. You’d need an extra trick (like a quorum device) to avoid stalling.

      • Best For: Learning, Testing clustering, or limited resources.

    • 3-Node Cluster:

      • Pros: Built-in quorum—two out of three nodes keep things going if one crashes. Ideal for HA practice. More stable and scalable.

      • Cons: Needs an extra machine and a bit more setup time.

      • Best For: Serious learners or small production setups.

    We’ll go with 3 nodes—it’s the sweet spot for stability and real-world skills.

    Step 1: Install Proxmox VE on All Three Machines

    First, download the Proxmox VE ISO from proxmox.com. Make a bootable USB with Rufus (Windows), dd (Linux/macOS), or Raspberry Pi Imager (available for all platforms).

    For dd, use this command (replace placeholders with your ISO and USB device):

    sudo dd if=proxmox-ve.iso of=/dev/sdX bs=1M status=progress oflag=sync
    

    Proxmox VE installer screen showing target disk for storage configuration.

    Boot each machine from the USB and follow the installer. Stick with the default partitioning scheme (it uses EXT4 filesystem) and set static IPs and hostnames as follows (or you can use your own IPs knowing your router’s IP range):

    • Node 1: 172.20.1.101 [hostname: node01.local]

    • Node 2: 172.20.1.102 [hostname: node02.local]

    • Node 3: 172.20.1.103 [hostname: node03.local]

    Proxmox VE installer screen showing network configuration with hostname and IP entered for Node 1.

    After installation, each node displays its IP on the console (for example, https://172.20.1.101:8006). Test it by opening a browser, visiting each IP, and logging in with root and your password. You’ll see the Proxmox dashboard.

    Step 2: Prepare Your Nodes

    Now, let’s get your nodes ready to talk to each other—a crucial step for clustering. Without this, they won’t recognize each other properly.

    Update /etc/hosts on all three nodes to map IPs to hostnames (since we’re not using a DNS server). Open the file with:

    nano /etc/hosts

    Add these lines (IPs and hostnames) on each node:

    172.20.1.101 node01.local node01
    172.20.1.102 node02.local node02
    172.20.1.103 node03.local node03
    

    Terminal window displaying /etc/hosts file in nano editor with IP and hostname entries for three Proxmox nodes.

    Save and exit (Ctrl+O, Enter, Ctrl+X). This ensures nodes can resolve each other’s names (for example, node01 pings node02.local).

    Next, check connectivity. From Node 1’s console (or SSH), ping the others:

    ping 172.20.1.102

    ping 172.20.1.103

    Repeat from Node 2 and Node 3. If pings fail, check your network or firewall.

    Finally, sync their clocks—clusters need precise time to coordinate. On each node, run:

    ntpdate pool.ntp.org

    All three nodes are now primed for clustering.

    Step 3: Create the Cluster on Node 1

    Let’s set up the cluster starting with Node 1. Log into its web interface at https://172.20.1.101:8006. On the left sidebar, click Datacenter, then Cluster. Hit the Create Cluster button, and a dialog pops up. Name your cluster—let’s call it MyCluster and click Create. A task window will appear, showing the process. Wait a few seconds until you see “TASK OK”—that means your cluster is live and Node 1 is its first member. Now we can add the other nodes!

    Proxmox web interface showing the Create Cluster dialog with ‘MyCluster’ entered.

    Step 4: Join Node 2 and Node 3 to the Cluster

    With the cluster created, let’s bring in Node 2 and Node 3. On Node 1’s cluster page, click Join Information, then Copy Information—this copies a key you’ll need.

    Open Node 2’s web interface (https://172.20.1.102:8006), go to Datacenter > Cluster > Join Cluster, paste the key into the Information field, enter Node 1’s root password, and click Join MyCluster.

    Proxmox web interface showing the Join Cluster dialog with ‘join information’ entered.

    Repeat this process on Node 3’s interface (https://172.20.1.103:8006). Refresh Node 1’s dashboard—under Datacenter, you’ll see all three nodes with green checkmarks.

    Proxmox web interface displaying the Datacenter view with three nodes (node01, node02, node03) showing green status icons.

    Your 3-node cluster is up!

    Step 5: Test Your Cluster

    Let’s verify it works by creating and moving a test VM. On Node 1, click Create VM, name it TestVM, skip the ISO, and finish with defaults (no disk content needed). Hit the Start button to boot it up.

    Now, let’s migrate it around—migration means moving the VM from one node to another to test your cluster’s flexibility. Right-click TestVM, select Migrate, choose Node 2, and click Migrate. The VM stops briefly, copies to Node 2, and restarts (normal without shared storage).

    Repeat this, migrating it from Node 2 to Node 3. If it hops between nodes successfully, your cluster’s rocking! With three nodes, you’ve got quorum—try shutting down Node 3 to see the others stay active.

    What’s Next?

    You’ve built a 3-node Proxmox cluster for free—congrats! Take it further with:

    • Shared storage: Add NFS or a spare drive for live VM migration (no stopping/shutdown needed).

    • High Availability: Enable HA—VMs auto-restart on a healthy node if one fails.

    • VM Replication: Configure Replication—Sync VM data between nodes automatically, keeping backups ready if something goes wrong.

    • Scale up: Add more nodes or try LXC containers.

    Check your cluster’s health anytime (from console) with:

    pvecm status

    Wrapping Up

    You’ve just set up a 3-node Proxmox cluster at no cost. It’s a playground for virtualization, DevOps practice, or even hosting small projects. Share your thoughts with me – I’d love to hear how you liked it.

    Source: freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More 

    Facebook Twitter Reddit Email Copy Link
    Previous ArticleHow to Use the CSS text-wrap Property to Create Balanced Text Layouts on Your Websites
    Next Article How to Use Django Signals in Your Projects

    Related Posts

    Development

    GPT-5 is Coming: Revolutionizing Software Testing

    July 22, 2025
    Development

    Win the Accessibility Game: Combining AI with Human Judgment

    July 22, 2025
    Leave A Reply Cancel Reply

    For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

    Continue Reading

    CVE-2025-3931 – Yggdrasil DBus Unauthenticated Command Injection Vulnerability

    Common Vulnerabilities and Exposures (CVEs)

    CVE-2025-4538 – KKFileView Unrestricted File Upload Vulnerability

    Common Vulnerabilities and Exposures (CVEs)

    21 million employee screenshots leaked in bossware breach blunder

    Development

    CVE-2025-4133 – Blog2Social Cross-Site Scripting (XSS)

    Common Vulnerabilities and Exposures (CVEs)

    Highlights

    How Yelp’s latest AI updates better connect restaurant owners and diners

    April 29, 2025

    Want to make a reservation? Now you have more control over where to sit and…

    CVE-2025-37882 – Linux Kernel USB xHCI Isochronous Ring Handling Vulnerability

    May 9, 2025

    The Future of Work: How AI Automation Is Revolutionizing Business Processes💼

    July 7, 2025

    Arriva Agama 15, l’installatore di openSUSE con miglioramenti all’usabilità

    May 29, 2025
    © DevStackTips 2025. All rights reserved.
    • Contact
    • Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.