DevOps Dudes
Published in

DevOps Dudes

Proxmox 101

Photo by Taylor Vick on Unsplash

What is Proxmox?? 🤔

Proxmox VE is an open-source server management platform for your enterprise virtualization. It tightly integrates KVM hypervisor and LXC, software-defined storage, and networking functionality on a single platform. With the integrated web-based user interface you can easily manage VMs and containers, highly available clusters, or the integrated disaster recovery tools with ease. Proxmox VE is under the GNU Affero General Public License (V3), there is simple subscription structure for those who are interested in more than community support. Simplicity is great advantage of PVE over other virtualization solutions. even a novice user can setup and install it within minutes. And most importantly because it is running on Debian, all Linux experience apply.

Proxmox implements also non-Docker , container based virtualization with LXC. It provides a small wrapper called pct which I can use to connect to LXC containers after ssh to host, by just typing ‘pct enter 108’, where 108 is ID of the container. Command line can be used to manage VMs, (QEMU ‘qm’ commands, i.e. qm stop 105).

Proxmox VE provides for live migration — the movement of a virtual machine or container from one cluster node to another without any disruption of services. The cluster file system (“pmxcfs”) is a database-driven file system for storing configuration files, replicated in real time to all cluster nodes using Corosync. It is used to store all PVE related configuration files i.e.

If your mind not clear about how proxmox actually works than this architecture diagram will help you ⤏

Minimum Requirements

  • CPU: 64bit (Intel EMT64 or AMD64)
  • Intel VT/AMD-V capable CPU/Mainboard (for KVM Full Virtualization support)
  • Minimum 8GB RAM ( Recommanded 16+ or as far as you go ( There is no end of cool selfhosted things!))
  • Hard Drive
  • One NIC

Note: If you want to compare proxmox with any other virtualization solution or looking for any specific feature. Look it here ⤏ Proxmox vs OtherVE

Other Note — For homelab you can use old PC, laptop, any Mini PC like ( Intel NUC, Hp, Lenevo, Dell Mini PC Clients ( they are around 200–300 $))

So, enough of intro now. Let’s install this thing.

Installation

  • Step1 — Pick You USB ( 8GB Size )
  • Step2 — Download Proxmox VE ISO
  • Step3 — Download balenaEtcher or Rufus
  • Step4 — Put USB into your PC/Laptop & use any one of booting tool
  • Step5 — Put your USB into you Bare Metel machine ( Make sure to config boot order ) and its shows you a start screen of proxmox.

Note — If you are using Rufus make sure use DD mode.

Proxmox Dashboard

Post Installation Tasks

  • Proxmox Installer show Private IP ( when installing ), now go to that IP ( https://IP:8006 ) and use your credentials ( You set when installing ) and BANG ⤏ You will see your own mini data center console!

Task — 1: Remove Subscription Message

Subscription Message
Remove Subscription Message

TASK — 2: Setup Community Subscription Repo

Setup Community Repository

Note — Now you can update your proxmox in future.

TASK — 3 Setup a Dark Theme 😎

Proxmox Dark Theme

Note — — 👏 Thank You Creator 👏 ( So much relief to the eyeballs! )

Add Storage Drives

ZFS Pools

It is recommended by proxmox and other peoples to use ZFS Pools for Storing your VMS ( It gives you more performance and Redundancy )

ZFS Pools Configuration

LVM

No worries, if you have single disk ( Use LVM )

Proxmox LVM Setup

Backup & Restore VM’s

Backup and Restore VM’s

Monitor Proxmox with Grafana and InfluxDB

Monitor Proxmox
Grafana Dashboard

Extra Tip — Setup a Minimal Docker Client

Find something useful? Hold down the 👏 to support and help others find this article. Thanks for reading!!

Follow me on Twitter @akash_Rajvanshi

--

--

--

A collection of stories that have anything and everything to do with DevOps from horror stories to success stories. If it's about Gitlab, Jenkins, Chef, Ansible, AWS, Azure, Kubernetes, Software Engineer then it belongs here.

Recommended from Medium

Pyspark: fetch data parallelly

Is it easy or difficult to become a Web Developer?

Collection Views with Compositional Layout

Using WP-CLI To Migrate WordPress to another server or your dev environment

LeetCode: Week 2 — Power of Two

Today any turn follow so.

Expert: How to Integrate GameAnalytics in Unity (Part-1)

How to deploy a MongoDB replicaset using docker-compose

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Akash Rajvanshi

Akash Rajvanshi

Developer || Engineer || Writer 🤟

More from Medium

WHY YOU SHOULD USE LINUX.

Linux — Networking Deep Dive

Multi-Nodes K8S clusters the Quick and Easy way

How can I get my external IP address?