Monday, October 30, 2023

Proxmox VE Cluster - Chapter 004 - Infrastructure Prep

Proxmox VE Cluster - Chapter 004 - Infrastructure Prep


A voyage of adventure, moving a diverse workload running on OpenStack, Harvester, and RKE2 K8S clusters over to a Proxmox VE cluster.


Before I change anything, I wanted to prepare as much infrastructure as possible.  I did not want to interrupt a conversion step via the realization I forgot to allocate IP addresses or forgot to configure the DNS server.


For day-to-day documentation, such as lists of IP address or URL links to services, I use Dokuwiki which is the most basic and simple wiki software I can find.  I created a new wiki page and added the entire IP allocation for the new cluster:

  • proxmox001 (old os1 node in OS1 cluster) SuperMicro SYS-E200-8D 10.10.8.1
  • proxmox002 (old os2 node in OS1 cluster) SuperMicro SYS-E200-8D 10.10.8.2
  • proxmox003 (old os3 node in OS1 cluster) SuperMicro SYS-E200-8D 10.10.8.3
  • proxmox004 (old os4 node in OS2 cluster) SuperMicro SYS-E200-8D 10.10.8.4
  • proxmox005 (old os5 node in OS2 cluster) SuperMicro SYS-E200-8D 10.10.8.5
  • proxmox006 (old os6 node in OS2 cluster) SuperMicro SYS-E200-8D 10.10.8.6
  • proxmox011 (old harvester-small-1) Intel NUC6i3SYH 10.10.8.11
  • proxmox012 (old harvester-small-2) Intel NUC6i3SYH 10.10.8.12
  • proxmox013 (old harvester-small-3) Intel NUC6i3SYH 10.10.8.13
  • proxmox021 (old rancher1) Beelink N5095 10.10.8.21
  • proxmox022 (old rancher2) Beelink N5095 10.10.8.22
  • proxmox023 (old rancher3) Beelink N5095 10.10.8.23
  • proxmox031 (old docker) Intel NUC6i3SYH 10.10.8.31
  • proxmoxbackup (old server bare metal hardware) 10.10.8.254
  • freenas.cedar.mulhollon.com 10.10.20.4 (use IP addresses for NFS so as to not rely on DNS)
As systems came online, I added hyperlinks to their web GUI and generally keep the wiki page up-to-date with the current configuration.  If I'm working on the cluster, I probably have this wiki page open.


Set up Redmine project for Proxmox:

I use Redmine for project level long term, large scale documentation.  I created a project in Redmine to basically be a more detailed version of the wiki page.


Set up simple insecure NFS on TrueNAS for non-production short term testing:

https://pve.proxmox.com/wiki/Storage:_NFS

https://pve.proxmox.com/pve-docs/chapter-pvesm.html#storage_nfs

A list of six content types to create shares for in TrueNAS (as documented in the Wiki and in Redmine, of course):

  1. proxmox-containers
  2. proxmox-containertemplates
  3. proxmox-diskimages
  4. proxmox-isoimages
  5. proxmox-snippets
  6. proxmox-vzdumps

Creating the six NFS exports in TrueNAS for Promox:

  1. First create the datasets, for later NFS export.  
  2. "Storage", "Pools", in freenas-pool, three dots "Add Dataset".
  3. Name: the id from the list
  4. Comments: "something that makes sense"
  5. Compression Level: off
  6. "Submit"
  7. Then export the six datasets.
  8. "Sharing", "Unix Shares (NFS)",  "Add", "Advanced Options"
  9. Path: /mnt/freenas-pool/proxmox-diskimages (or similar)
  10. Maproot User blank
  11. Maproot Group blank
  12. Mapall User: root
  13. Mapall Group: wheel
  14. Optionally add authorized networks and hosts, later.  No need to access outside 10.0.0.0/8, obviously.
  15. Add symlinks in my homedir to the automounter locations "ln -s /net/freenas/mnt/freenas-pool/proxmox-diskimages ~"
  16. Test by creating and deleting some files.


Add sysadmin issue tasks in Redmine in the "Systems Administration" project for all cluster nodes.


Document all the changes and allocations in Netbox

Here is the link to the Port / Services list for Proxmox VE nodes:

https://pve.proxmox.com/pve-docs/chapter-pvecm.html#_requirements


Set up a USB flash boot drive for servers that can't PXEboot

Download Proxmox VE 8.0-2 and put it on a properly labeled USB flash drive.

https://www.proxmox.com/en/downloads/proxmox-virtual-environment/iso

https://pve.proxmox.com/pve-docs/chapter-pve-installation.html#installation_prepare_media


At this point I think I've prepared everything possible.  In the next post, I start the conversion work.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.