<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Andre Rocha</title>
    <description>The latest articles on Forem by Andre Rocha (@andre_rocha_b9cf185456d05).</description>
    <link>https://forem.com/andre_rocha_b9cf185456d05</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3200333%2F1500456f-b10f-4368-8f5e-bae4b5dd8ab4.jpg</url>
      <title>Forem: Andre Rocha</title>
      <link>https://forem.com/andre_rocha_b9cf185456d05</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/andre_rocha_b9cf185456d05"/>
    <language>en</language>
    <item>
      <title>Creating VMs on Proxmox.</title>
      <dc:creator>Andre Rocha</dc:creator>
      <pubDate>Sun, 12 Oct 2025 01:55:35 +0000</pubDate>
      <link>https://forem.com/andre_rocha_b9cf185456d05/creating-vms-on-proxmox-1mg1</link>
      <guid>https://forem.com/andre_rocha_b9cf185456d05/creating-vms-on-proxmox-1mg1</guid>
      <description>&lt;p&gt;Hey all, this post I will cover how I create virtual machines on proxmox. It is a very basic example without automation or anything. The purpose is simply create the infrastructure required for my adventure on installing an openshift cluster, the hard way...&lt;/p&gt;

&lt;h2&gt;
  
  
  Check main post!
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dev.to/andre_rocha_b9cf185456d05/installing-openshift-the-hard-way-4oie"&gt;Installing Openshift the hard way&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Building VMs
&lt;/h1&gt;

&lt;p&gt;This section is dedicated for the build of the virtual machines required for the openshift environment.&lt;/p&gt;

&lt;p&gt;We are going to build the following VMs:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Hostname&lt;/th&gt;
&lt;th&gt;Function&lt;/th&gt;
&lt;th&gt;CPU&lt;/th&gt;
&lt;th&gt;Memory&lt;/th&gt;
&lt;th&gt;Storage&lt;/th&gt;
&lt;th&gt;Image&lt;/th&gt;
&lt;th&gt;Network&lt;/th&gt;
&lt;th&gt;IP address&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ocp-bastion.ocp.lan&lt;/td&gt;
&lt;td&gt;Offline Registry/Proxy&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;8192&lt;/td&gt;
&lt;td&gt;500&lt;/td&gt;
&lt;td&gt;Ubuntu 24.04&lt;/td&gt;
&lt;td&gt;ocp + external&lt;/td&gt;
&lt;td&gt;192.168.1.10, 10.0.0.36&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-tools.ocp.lan&lt;/td&gt;
&lt;td&gt;DHCP+NTP&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;4096&lt;/td&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;Ubuntu 24.04&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-dns.ocp.lan&lt;/td&gt;
&lt;td&gt;DNS&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;4096&lt;/td&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;Ubuntu 24.04&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-lbexternal.ocp.lan&lt;/td&gt;
&lt;td&gt;External LB&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;2048&lt;/td&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;Ubuntu 24.04&lt;/td&gt;
&lt;td&gt;ocp + external&lt;/td&gt;
&lt;td&gt;192.168.1.6, 10.0.0.35&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-bootstrap.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;bootstrap&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;16384&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.200&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-cp-1.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;Control plane&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;16384&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.201&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-cp-2.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;Control plane&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;16384&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.202&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-cp-3.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;Control plane&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;16384&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.203&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-w-1.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;Worker Node&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;8192&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.204&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-w-2.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;Worker Node&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;8192&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.205&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ocp-w-3.lab.ocp.lan&lt;/td&gt;
&lt;td&gt;Worker Node&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;8192&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;Rhcos-4.18.1&lt;/td&gt;
&lt;td&gt;ocp&lt;/td&gt;
&lt;td&gt;192.168.1.206&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Downloading the ISO images
&lt;/h2&gt;

&lt;p&gt;Bellow the necessary images for our openshift build: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://ubuntu.com/download/server" rel="noopener noreferrer"&gt;Ubuntu 24.04&lt;/a&gt;  - I selected Ubuntu due to the ease of use and the number of available tutorials.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.18/4.18.1/rhcos-4.18.1-x86_64-live.x86_64.iso" rel="noopener noreferrer"&gt;Rhcos-4.18.1-x86_64-live.x86_64.iso&lt;/a&gt; - This is an immutable OS ideal for container load and recommended for openshift installation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Loading the image into proxmox
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;On the proxmox server, select the disk where the image will be stored.&lt;/li&gt;
&lt;li&gt;Select ISO Images.&lt;/li&gt;
&lt;li&gt;Click on Upload.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fskgwwhmuj0em1k5omime.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fskgwwhmuj0em1k5omime.JPG" alt="Upload Image" width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the location of the file and upload it to proxmox server.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvajma3hkak3js2ukq6tq.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvajma3hkak3js2ukq6tq.JPG" alt="Upload Image" width="800" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating dedicated network
&lt;/h2&gt;

&lt;p&gt;I am creating a new and isolated network to host my cluster. I want to simulate the scenario where it is common in my workplace, a totally isolated cluster.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your proxmox server and select network.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd2vs3zyz7i6b2padnk0k.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd2vs3zyz7i6b2padnk0k.JPG" alt="Creating a network step 1" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a Linux bridge.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvshwysnspmqfpkwiea1c.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvshwysnspmqfpkwiea1c.JPG" alt=" " width="758" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Apply the new configuration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmf75x82hql8zmjjq7d07.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmf75x82hql8zmjjq7d07.JPG" alt="Creating a network step 3" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating the VMs
&lt;/h2&gt;

&lt;p&gt;Lets create the VMs that I have specified on the table above.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On proxmox, click create VM.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4a4l2l5pgeab6i9ld8eb.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4a4l2l5pgeab6i9ld8eb.JPG" alt="Creating a vm step 1" width="800" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Choose the name.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3m4bzhw9f6pmq0nnv1t5.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3m4bzhw9f6pmq0nnv1t5.JPG" alt="Creating a vm step 2" width="800" height="598"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Make the selection for image, disk, CPU, memory, network as the table. and confirm to create the VM.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb78g3chgrio8pw91qlln.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb78g3chgrio8pw91qlln.JPG" alt="Creating a vm step 3" width="800" height="598"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxxmsa0evh9ggcbeh4hmt.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxxmsa0evh9ggcbeh4hmt.JPG" alt="Creating a vm step 4" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5xgnlu03cn5xhrc0ic7.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5xgnlu03cn5xhrc0ic7.JPG" alt="Creating a vm step 5" width="800" height="599"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxlrj5fa53t7gujp2unbg.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxlrj5fa53t7gujp2unbg.JPG" alt="Creating a vm step 6" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxtea9yd62y3j9w3vcrqe.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxtea9yd62y3j9w3vcrqe.JPG" alt="Creating a vm step 7" width="800" height="602"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbbatx8mhq4xz5hfpsm0t.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbbatx8mhq4xz5hfpsm0t.JPG" alt="Creating a vm step 8" width="800" height="602"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd94l2hu1fgojbugyzsit.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd94l2hu1fgojbugyzsit.JPG" alt="Creating a vm step 9" width="800" height="602"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For machines that have 2 networks connected, we have to add the second network after the VM is created. Click on the VM, Hardware and add a network device. Choose the OCP network.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fervk0jf8y5xkxtoeof10.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fervk0jf8y5xkxtoeof10.JPG" alt="Creating a vm step 10" width="800" height="358"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxw84ic8h41c1s4jlaq91.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxw84ic8h41c1s4jlaq91.JPG" alt="Creating a vm step 11" width="777" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Take note of the mac address, we will need this info to populate the DHCP server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd9hi84alzcmg2xlrsvjz.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd9hi84alzcmg2xlrsvjz.JPG" alt="Creating a vm step 12" width="800" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Repeat same process for all other nodes.&lt;/p&gt;

</description>
      <category>proxmox</category>
      <category>virtualmachine</category>
    </item>
    <item>
      <title>Installing Openshift: The hard way!</title>
      <dc:creator>Andre Rocha</dc:creator>
      <pubDate>Fri, 19 Sep 2025 18:49:46 +0000</pubDate>
      <link>https://forem.com/andre_rocha_b9cf185456d05/installing-openshift-the-hard-way-4oie</link>
      <guid>https://forem.com/andre_rocha_b9cf185456d05/installing-openshift-the-hard-way-4oie</guid>
      <description>&lt;p&gt;Welcome to my adventure learning Red Hat Openshift. &lt;br&gt;
And before you start asking why I am doing this way, remember, I am learning and doing it the hard way!&lt;/p&gt;

&lt;p&gt;My repository for this project is:&lt;br&gt;
&lt;a href="https://github.com/ancrocha/openshift_hard_way" rel="noopener noreferrer"&gt;Git repository&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Scenario
&lt;/h2&gt;

&lt;p&gt;I am trying to replicate the same scenario as I encountered in the companies I worked for. Usually they are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Offline environment (cluster does not have access to the internet).&lt;/li&gt;
&lt;li&gt;Different machines for each service (company wild load balance, DNS, DHCP managed by different servers)&lt;/li&gt;
&lt;li&gt;Network segregation (multiple networks for each part of the cluster)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Testing Environment
&lt;/h2&gt;

&lt;p&gt;To see how my lab is configured and how it looks. Please check my &lt;a href="http://dev.to"&gt;dev.to&lt;/a&gt; blog post.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/andre_rocha_b9cf185456d05/building-my-home-lab-10ff"&gt;Building my home lab&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/andre_rocha_b9cf185456d05/installing-proxmox-9-4c8l"&gt;Install Proxmox 9&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Topology
&lt;/h2&gt;

&lt;p&gt;I will be running everything into my proxmox server. The physical layer will look like this&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1312yb54aqpktqv7pp32.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1312yb54aqpktqv7pp32.jpg" alt="Physical diagram" width="595" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The virtual portion will be more like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fapnu53tbkn8ikpf0zmxd.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fapnu53tbkn8ikpf0zmxd.jpg" alt="Virtual diagram" width="597" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  DNS
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;You need a properly configured DNS zone.&lt;/li&gt;
&lt;li&gt;Forward and reverse DNS records for all nodes.&lt;/li&gt;
&lt;li&gt;Wildcard DNS entry for application routes (e.g. *.apps.cluster.example.com).&lt;/li&gt;
&lt;li&gt;Internal name resolution between nodes.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Load Balancer
&lt;/h3&gt;

&lt;p&gt;Balances traffic for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;API servers (port 6443 – control plane access).&lt;/li&gt;
&lt;li&gt;Ingress controllers (HTTP/HTTPS routes for applications).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  NTP (Network Time Protocol)
&lt;/h3&gt;

&lt;p&gt;All cluster nodes need synchronized time.&lt;/p&gt;

&lt;h3&gt;
  
  
  DHCP
&lt;/h3&gt;

&lt;p&gt;Not strictly required if you use static IP addressing.&lt;br&gt;
Helps in labs or dynamic environments for auto-provisioning.&lt;/p&gt;

&lt;h3&gt;
  
  
  External Storage
&lt;/h3&gt;

&lt;p&gt;For production workloads, you need persistent storage.&lt;br&gt;
Options: NFS, iSCSI, Ceph/Rook, NetApp, Portworx.&lt;/p&gt;

&lt;h3&gt;
  
  
  Bastion Host
&lt;/h3&gt;

&lt;p&gt;This VM will be the bridge between our internal and external network and will also host the offline registry required for openshift installation files.&lt;/p&gt;

&lt;h3&gt;
  
  
  Bootstrap Host
&lt;/h3&gt;

&lt;p&gt;This is a temporary host that is used for the cluster configuration. It will be deleted after the installation is completed&lt;/p&gt;

&lt;h3&gt;
  
  
  Control Plane Hosts
&lt;/h3&gt;

&lt;p&gt;Essential for the cluster operation, those hosts will contain all the control functions of the cluster. &lt;/p&gt;

&lt;p&gt;### Worker Hosts&lt;br&gt;
Where the containers will run.&lt;/p&gt;

&lt;h2&gt;
  
  
  Building the VMs
&lt;/h2&gt;

&lt;p&gt;Check my post where I go over the process of building VMs on proxmox.&lt;br&gt;
&lt;a href="https://dev.to/andre_rocha_b9cf185456d05/creating-vms-on-proxmox-1mg1"&gt;Creating VMs on Proxmox&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The bastion host.
&lt;/h2&gt;

&lt;p&gt;The next step I will cover how I install Linux and configure this node. Stay tuned...&lt;/p&gt;

</description>
      <category>openshift</category>
      <category>proxmox</category>
      <category>install</category>
      <category>redhat</category>
    </item>
    <item>
      <title>Installing Proxmox 9</title>
      <dc:creator>Andre Rocha</dc:creator>
      <pubDate>Fri, 22 Aug 2025 16:10:09 +0000</pubDate>
      <link>https://forem.com/andre_rocha_b9cf185456d05/installing-proxmox-9-4c8l</link>
      <guid>https://forem.com/andre_rocha_b9cf185456d05/installing-proxmox-9-4c8l</guid>
      <description>&lt;p&gt;Hello, &lt;/p&gt;

&lt;p&gt;In this post I will go over how I installed proxmox on my HP home lab server. I will try my best to go over every detail from installing the OS to creating my first VM.&lt;/p&gt;

&lt;p&gt;If you missed how my is server setup, you can check my post &lt;a href="https://dev.to/andre_rocha_b9cf185456d05/building-my-home-lab-10ff"&gt;Building my Home Lab.&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I tell you that this man, rather than the other, went home justified before God. For all those who exalt themselves will be humbled, and those who humble themselves will be exalted. Luke 18:14&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;&lt;strong&gt;Getting the software.&lt;/strong&gt;&lt;br&gt;
Let's start by downloading the software. &lt;a href="https://proxmox.com/en/downloads" rel="noopener noreferrer"&gt;Proxmox Download&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now the current version is 9.0. If you follow this procedure to a different version, be cautious that a few items can change.&lt;/p&gt;

&lt;p&gt;Also we need balena etcher to burn the .iso filo into a bootable USB drive. &lt;a href="https://etcher.balena.io/" rel="noopener noreferrer"&gt;Balena Download&lt;/a&gt; &lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Burning the ISO image.&lt;/strong&gt;&lt;br&gt;
Open balena etcher, select flash from file and choose the .iso image from proxmox.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7xjpspkqq18w5wuvidzr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7xjpspkqq18w5wuvidzr.png" alt="Balena etcher initial screen" width="800" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With the USB drive inserted, select the target pointing to USB drive.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftgfjqhxwwrvhbg6plta3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftgfjqhxwwrvhbg6plta3.png" alt="Balena disk selection" width="800" height="508"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Flash the image. If you get an error at this step, try running balena etcher as administrator.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2v9spt4guct5hzwkqxl2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2v9spt4guct5hzwkqxl2.png" alt="Flash drive with balena etcher" width="800" height="506"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;About my Hard Drives&lt;/strong&gt;&lt;br&gt;
My hard drives are cheap and used and I need some protection and redundancy.&lt;br&gt;
My Server has a SAS controller that can be configured in 2 ways:&lt;/p&gt;

&lt;p&gt;Normal mode:&lt;br&gt;
The SAS controller will manage the RAID and the disks. This is ideal if you don't want the OS to manage the disks and it will also prolong the SSD life. The cons is that you can’t pass the entire disk to a VM and also will not work with ZFS.&lt;/p&gt;

&lt;p&gt;HBA mode:&lt;br&gt;
This will pass the disk to the OS to manage without doing any controller function. This is ideal if you want to use ZFS as a file system or want to pass the entire disk to a specific VM.&lt;/p&gt;

&lt;p&gt;I am choosing the normal mode and created 3 volumes.&lt;br&gt;
Volume 1 - RAID 1 with 2x 128GB SSD. This is where I will install my proxmox OS&lt;/p&gt;

&lt;p&gt;Volume 2 - RAID 1 with 2x 1TB SSD. I will use this to run VMs that require some speed on read/write.&lt;/p&gt;

&lt;p&gt;Volume 3 - RAID 5 with 4x 300GB HDD. This is the slow disk. I will use VMs that do not require speed / space.&lt;/p&gt;

&lt;p&gt;If you are using a simple computer with no raid controller, use ZFS for redundancy.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Installation&lt;/strong&gt;&lt;br&gt;
Booting with the USB stick on my server, I need to choose the boot menu by pressing F11 and selecting the USB. Your board will be different.&lt;/p&gt;

&lt;p&gt;We will select the graphical installation and accept the EULA.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2mum9uo80d7jt6ufg7fl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2mum9uo80d7jt6ufg7fl.png" alt="Selection of installation type" width="800" height="594"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2qf63448vksmgypxx5m4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2qf63448vksmgypxx5m4.png" alt="EULA accept screen" width="800" height="598"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The next 4 screens you select the drive you want to install it, the time zone, admin password and network definitions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff6g76oasb1wpriv4x1cz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff6g76oasb1wpriv4x1cz.png" alt="Proxmox configuration" width="800" height="580"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh2b7udjgtwbmxd3vye7x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh2b7udjgtwbmxd3vye7x.png" alt="Proxmox configuration" width="800" height="591"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3be1674xiqsj494ur6qo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3be1674xiqsj494ur6qo.png" alt="Proxmox configuration" width="800" height="593"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs30toqv1yws8s7q83041.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs30toqv1yws8s7q83041.png" alt="Proxmox configuration" width="800" height="590"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Confirm the values and install.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdm4tye5zr4mjg8v97lse.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdm4tye5zr4mjg8v97lse.png" alt="Proxmox confirmation" width="800" height="593"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The system will now install proxmox and reboot when completed.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Access and initial configurations&lt;/strong&gt;&lt;br&gt;
To access the proxmox cluster, type the address in your browser with port 8006. &lt;code&gt;https://&amp;lt;proxmox IP&amp;gt;:8006/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;I recommend as initial configuration:&lt;br&gt;
1 - Disable enterprise repositories (for home lab without support).&lt;br&gt;
2 - Enable no subscription repositories.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgqso9c9abjbb4mx4o4qr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgqso9c9abjbb4mx4o4qr.png" alt="Proxmox repositories" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;3 - Update the system.&lt;/p&gt;




&lt;p&gt;This is just the start. Proxmox provides you with many features and possibilities.&lt;/p&gt;

&lt;p&gt;Next post I will cover how to create Virtual Machines and templates... &lt;/p&gt;

</description>
      <category>proxmox</category>
      <category>homelab</category>
      <category>virtualization</category>
    </item>
    <item>
      <title>Building my home Lab.</title>
      <dc:creator>Andre Rocha</dc:creator>
      <pubDate>Thu, 05 Jun 2025 18:29:12 +0000</pubDate>
      <link>https://forem.com/andre_rocha_b9cf185456d05/building-my-home-lab-10ff</link>
      <guid>https://forem.com/andre_rocha_b9cf185456d05/building-my-home-lab-10ff</guid>
      <description>&lt;p&gt;Greetings!&lt;/p&gt;

&lt;p&gt;This is my first post here in Dev.to, this community is amazing and I always find help here by reading tutorials, tricks and tips. I hope with this post I can help and inspire you to start your own home lab.&lt;/p&gt;

&lt;p&gt;Before we start, the bible verse of the day:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Cast all your anxiety on Him because He cares for you. 1 Peter 5-7"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Thank you Jesus for being present in my life and allowing me to share this knowledge.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Why do I need a home lab?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;A few reasons…&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Hardware is cool!&lt;/strong&gt;&lt;br&gt;
I was participating in a round of interviews to hire a new co-op intern and I was surprised that nobody knows anything about hardware anymore. Cloud makes everything so easy that the new generations don’t even know what is going on the infrastructure below the code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Cheaper than cloud?!?&lt;/strong&gt;&lt;br&gt;
If you choose wisely and resist the temptation to have the best and shiny new computer, building your home lab will be cheaper than the cloud solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Learning opportunities&lt;/strong&gt;&lt;br&gt;
Once you have your lab environment set up, it is easy to play, learn and experiment without any worries that you will break a production system. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;My Home LAB Server&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This is the most exciting part for me. I love hardware and I am constantly looking for bargains on the marketplace. &lt;/p&gt;

&lt;p&gt;What you should keep in mind when choosing the right hardware:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is not gaming! Speed doesn’t matter that much. Stable is better than fast.&lt;/li&gt;
&lt;li&gt;Old used enterprise hardware offers good value / performance.&lt;/li&gt;
&lt;li&gt;Upgradable hardware gives you more opportunities.&lt;/li&gt;
&lt;li&gt;Keep it simple, keep it cheap. This is for learning!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;1. My Hardware - HP DL380 G9&lt;/strong&gt;&lt;br&gt;
I found on facebook marketplace a DL 380 G9 on a very good deal.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dual CPU E5-2690 v3 (24 cores / 48 threads).&lt;/li&gt;
&lt;li&gt;128GB DDR4&lt;/li&gt;
&lt;li&gt;5 drives 300GB SAS.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Server:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxuxy28ox2s4a2dmaupcb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxuxy28ox2s4a2dmaupcb.png" alt="Server Front" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9exubk05tql61zd95ctj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9exubk05tql61zd95ctj.png" alt="Server Back" width="800" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs613wcbv0gew62tz6z99.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs613wcbv0gew62tz6z99.png" alt="Server Inside" width="516" height="737"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All of this for 200 maple dollars!!!&lt;/p&gt;

&lt;p&gt;It is worthy mentioning:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is a bit power hungry, it averages 110W. &lt;/li&gt;
&lt;li&gt;It is noisy. Keep it in a basement or separate room.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Upgrades.&lt;/strong&gt;&lt;br&gt;
I could use this hardware the way it is for a lot of things. If you are on a budget there is no need to do any upgrade at all.&lt;/p&gt;

&lt;p&gt;I know that my use case will be learning openshift and this application requires a faster disk and maybe networking. So I added the following hardware to my server.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;2x 128GB SSD disk for OS (CAD $32.98).&lt;br&gt;
&lt;a href="https://amzn.to/43MdgOx" rel="noopener noreferrer"&gt;Patriot SSD&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;2x 1TB SSD disk for fast storage (CAD $137.98).&lt;br&gt;
&lt;a href="https://amzn.to/4jMjCUo" rel="noopener noreferrer"&gt;Timetec SSD&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;1x 256GB NVME drive on a PCI adapter for even more fast storage. (CAD $ 26.49 + 17.59)&lt;br&gt;
&lt;a href="https://amzn.to/3FGDmdU" rel="noopener noreferrer"&gt;nvme PCI adaptor&lt;/a&gt;&lt;br&gt;
&lt;a href="https://amzn.to/3FGDmdU" rel="noopener noreferrer"&gt;nvme Drive&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;1x LOM PCI 10G network card. (CAD $ 18.71)&lt;br&gt;
&lt;a href="https://www.ebay.com/sch/i.html?_nkw=HP+560&amp;amp;_sacat=0&amp;amp;_from=R40&amp;amp;_trksid=p2334524.m570.l1313&amp;amp;_odkw=sfp+HP+flex+lom&amp;amp;_osacat=0" rel="noopener noreferrer"&gt;HP 560FLR &lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Total of upgrades CAD $233.75&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Server Configuration&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Configure the iLO (IPMI)&lt;/strong&gt;&lt;br&gt;
Most of the enterprise level servers come with a management interface called IPMI. iLO for HP, iDRAC for Dell and so on…  this interface is very helpful because it allows us to manage the server remotely. This will be very handy when I get my noisy server in the basement very far from my ears.&lt;/p&gt;

&lt;p&gt;If you don't have the IP and password for the IPMI interface, you will need to connect a keyboard and monitor and log into BIOS. &lt;/p&gt;

&lt;p&gt;Each server is different. You need to research your own model.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Network Connections&lt;/strong&gt;&lt;br&gt;
I just connected at this time the iLO port and the first ethernet adapter to my switch. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwd6ilp4vncdatqk14n06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwd6ilp4vncdatqk14n06.png" alt="Network connection" width="693" height="677"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Accessing the iLO&lt;/strong&gt;&lt;br&gt;
Now that you have the network setup, you can access you iLO using the web browser. This will allow is to remote manage and configure our disks.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmjv3yrohpqbdz8p52cnj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmjv3yrohpqbdz8p52cnj.png" alt="Console Access" width="800" height="546"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Drive Setup&lt;/strong&gt;&lt;br&gt;
I confess that I am not using the best SSD and also those hard drives are very old. I will build some redundancy here.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Volume 1: 2 x 128G SSD in RAID 1. OS BOOT&lt;/li&gt;
&lt;li&gt;Volume 2: 2 x 1TB SSD in RAID 1. Fast Storage&lt;/li&gt;
&lt;li&gt;Volume 3: 4 x 300G SAS HDD in Raid 5. Slow Storage&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Check my detailed step by step on the Home lab setup doc.&lt;/p&gt;

&lt;p&gt;** Next Steps**&lt;br&gt;
I will cover in my next blog post how I installed proxmox on this server.&lt;/p&gt;




</description>
      <category>proxmox</category>
      <category>homelab</category>
      <category>server</category>
      <category>infrastructure</category>
    </item>
  </channel>
</rss>
