Configure OPNsense and NSX-T to exchange routes using BGP

What am I trying to do? As per the diagram above, OPNsense is the gateway and firewall that allows all internal networks to talk to the internet. I have few logical L2 networks configured in NSX and I want them to talk to the internet and physical networks (vlan 20, vlan 30) connected to OPNsense. Routing information will be exchanged between NSX and OPNsense using BGP. BFD will be used to detect any faults between NSX and OPNsense....

June 20, 2024 · 2 min · Jahnin Rajamoni

Automate K3S cluster deployment on vSphere using Ansible and a VM Template

Recently, I had to deploy a bunch of VMs to a vSphere cluster. Although there are many VMware solutions that can achieve this, I wanted to get my hands dirty with Ansible. Lets begin by installing pyvmomi root@ubuntu:~# apt install pip -y root@ubuntu:~# apt-get update root@ubuntu:~# pip install pyvmomi Install the VMware vSphere Automation SDK for Python root@ubuntu:~# pip install --upgrade git+https://github.com/vmware/vsphere-automation-sdk-python.git Install ansible root@ubuntu:~# sudo apt install software-properties-common root@ubuntu:~# sudo apt install ansible Create a new Ansible role Ansible Roles let you automatically load related vars, files, tasks, handlers, and other Ansible artifacts based on a known file structure....

March 12, 2024 · 4 min · Jahnin Rajamoni

ESXi host hangs when shutting down a VM that has a pcie pass through device - NVIDIA Quadro P600

On ESXi 7.x, one of my VMs caused the whole esxi host to hang. Only way to recover was through a hard reset. The root cause was due to the pass through Nvidia Qaudro P600 Adapter I had configured on the VM. During VM shutdown, the PCI reset function caused the host to hang. The following articles helped me: Reddit VMware KB Few of the PCI reset types are: Function Level Reset (FLR) Secondary Bus Reset Link Disable/Enable Device power state transition (D0 > D3hot > D0; non-standard reset method) To resolve the issue,...

March 5, 2024 · 3 min · Jahnin Rajamoni

Installing and configuring the vSphere CSI Driver in K3S

Environment: vSphere 7. VM Hardware Version 19 Two VMs running Debian 11.9 SSH Enabled Root login via SSH enabled. Not best practise, but as this is a lab, I did not want to troubleshoot permission related issues. Edit /etc/ssh/sshd_config Add "PermitRootLogin: yes" Restart SSHD - systemctl restart sshd Install govc root@control1:~# export GOVC_INSECURE=1 root@control1:~# export GOVC_URL='https://administrator@vsphere.local:<PASSWORD>@vc802.gs.labs' root@control1:~# curl -L -o - "https://github.com/vmware/govmomi/releases/latest/download/govc_$(uname -s)_$(uname -m).tar.gz" | tar -C /usr/local/bin -xvzf - govc Enable UUID # List existing VMs using govc ls /Datacenter/vm/VMName root@control1:~# govc vm....

February 16, 2024 · 8 min · Jahnin Rajamoni

Failed to Call Webhook when deploying Metallb in K3s

After installing metallb using helm, I hit the below error when applying the IP Adress Pool. Error from server (InternalError): error when creating "ip-pool.yaml": Internal error occurred: failed calling webhook "ipaddresspoolvalidationwebhook.metallb.io": failed to call webhook: Post "https://metallb-webhook-service.metallb-system.svc:443/validate-metallb-io-v1beta1-ipaddresspool?timeout=10s": context deadline exceeded Error from server (InternalError): error when creating "ip-pool.yaml": Internal error occurred: failed calling webhook "l2advertisementvalidationwebhook.metallb.io": failed to call webhook: Post "https://metallb-webhook-service.metallb-system.svc:443/validate-metallb-io-v1beta1-l2advertisement?timeout=10s": context deadline exceeded The IPAdressPool yaml: apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: name: default-pool namespace: metallb-system spec: addresses: - 172....

February 16, 2024 · 2 min · Jahnin Rajamoni