Celil Buğra Karacan

Unattended Clonezilla Disk Backup

TL;DR: Scripted away Clonezilla interactions to blindly backup and then restore Proxmox VE disk image, as wanted to move Ryzen 5850X PVE node onto faster NVMe SSD in an automated way. I can finally get to compiling that KVM-enabled LineageOS kernel for the coming post. There will be plenty of screenshots, but they are stashed at the end. Acquiring ocs-sr commands Clonezilla has ocs-sr programme to do its bidding. By default users interact with the Clonezilla TUI to provide their desired operation....

2024-05-04 · 7 min · 1354 words · Celil Buğra Karacan

WoL-enabled Psuedo-headless Proxmox Nodes with Custom NIC Names

I had some spare parts and wanted to setup a Proxmox Backup Server for my 3-node ceph-enabled cluster. It didn’t go strictly as planned, but I found a way to ditch GPUs on my nodes, which then turned out to be too good to be true. Now, here I am with extra NICs and fancy names returned by ip addr. Lemons -> Lemonade WoL, How? As of now, my cluster is tethered only to a power outlet with a wireless network uplink....

2024-04-22 · 8 min · 1666 words · Celil Buğra Karacan

Mermaid Diagram

I am late to the party! But hey, each to their own… My archaic plan of getting fluent in plantUML has failed, mermaid.js.org should do. To be honest, if I had known early on that diagrams.net had plantUML insertion capability, then I might have stuck to it. I also came across D2, but I do not need server-side image generation just yet. Until then mermaid’s ubiquity wins. So an example is placed below to ensure mermaid integration on my blog blocks Gitlab Pages pipeline....

2024-04-18 · 2 min · 215 words · Celil Buğra Karacan

On Proxmox 8.1 Cloudinit ARM64 VM Creation

TL;DR: This is a guide on running 64-bit ARM operating systems on Proxmox (amd64) via emulation. Although cloudinit is the charm in here, an ordinary ISO mount for manually installing an OS works as well. This guide assumes previous experience in setting up a VM on Proxmox VE Web UI and acquaintance with CLI. Following are the steps taken in an ordered list. Terminal use is minimal, however, checkout Techno Tim’s Notes and Proxmox VE documentation for terminal use for creating and modifying a VM....

2024-04-13 · 6 min · 1136 words · Celil Buğra Karacan

Proxmox 8.1 Ceph with Routed IPv6 Physically Isolated Network

Another short one. After sourcing some almost-dead second-hand enterprise SSDs and crimping some short ethernet cables, I can migrate VMs and CTs at will or with HA policy. Homelab 2.0 is here. ASCII diagram: Below diagram does not show corona/internet NIC. Below is only CEPH related, physically closed loop network. 1 2 3 4 5 6 7 8 9 10 11 +------+ +------+ +------+ | | | | | | ###[0]### | ###[0]### | ###[0]### | # # | # # | # # | # pve # | # pve # | # pve # | # 1 # | # 2 # | # 3 # | # # | # # | # # | ###[1]### | ###[1]### | ###[1]### | T | T | T | | +------+ +------+ | +----------------------------------+ End result: Proxmox has a Full Mesh - Routed (Simple) example for IPv4, here is my IPv6 version....

2024-03-12 · 4 min · 699 words · Celil Buğra Karacan

How I made my own R8 5850X (10c/20t)

TL;DR: Adventure of reviving a CPU as a hypervisor About few months ago, I found a bargain on a seemingly faulty Ryzen R9 5900X unit. Stangely enough, it was said to drop internet connectivity while gaming. Long story short, there are 2 defective physical cores out of the 12 present. I ended up isolating them with isolcpus= kernel parameter within boot menu. Methodology: Video recording of the process. Includes temporary solution for GRUB2 (see /etc/default/grub or /etc/kernel/cmdline for proxmox sysboot for persistence), an example of OS installation failure without modification, and a test example....

2024-01-22 · 4 min · 751 words · Celil Buğra Karacan

Terraform Provider Libvirt

dmacvicar’s libvirt provider is already in the official registry. Yet, I indend to contribute functionalities, which I would like to use in my homelab. This post is the progressive summary of the process. Development setup Set the environment: 1 2 mkdir -p ~/GitRepos mkdir -p ~/terraform.d/plugins/local-registry/cbugk/libvirt/0.7.0/linux_amd64 For installing terrraform and the initial provider test Fabian Lee’s introduction was followed. His main.tf file: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 terraform { required_version = ">= 1....

2022-11-13 · 2 min · 389 words · Celil Buğra Karacan

Windows Virtual Machine on Bare-metal

Why exactly? I wanted to have duos (dual-boot) of Windows and Fedora on my “server”. However, I don’t want to reboot every five minutes unlike the olden days. I also wanted to game natively on this system. One could run a VM under KVM and setup PCIe passthrough for peripherals and I intend to set it up and try gaming modest titles once my new GPU arrives. But there is another orthogonal way of solving this, booting the same disk both as bare-metal and as VM....

2022-07-13 · 3 min · 622 words · Celil Buğra Karacan

KVM Guest Network Isolation

Edited: 2022-06-30, added capability to block multiple subnets. First things first! 1 2 mkdir -p ~/Bench/libvirt-nwfilter-test cd ~/Bench/libvirt-nwfilter-test Preface Until I learn how to tame VXLAN for a virtualization cluster, I need a dirty way of seperating infrastructure network and the VM network. The solution presented in this post is to apply libvirt’s network filters (nwfilter) to drop packages from and to the “uplink”, namely home LAN (10.0.0.0/18), for any guest connected to the NAT (192....

2022-06-29 · 5 min · 992 words · Celil Buğra Karacan

ZeroTier Install

Last time i had come accross ZeroTier, a virtual LAN/ Hamachi alternative. For future reference for myself, the steps to install it on: Ubuntu 20.04 Fedora 36 Archlinux (Pi-KVM) Ubuntu 20.04 Let’s start with the simplest. Though mind that it’s said this no longer works for 22.04. 1 2 sudo sudo # so that it will not expect password endlessly curl -s https://install.zerotier.com | sudo bash # official less secure way Fedora 36 Well official script would work it it wasn’t for openssl1....

2022-06-08 · 2 min · 232 words · Celil Buğra Karacan