Setting up K8s and the vSphere Cloud Provider using kubeadm

Intro In the last installment we created an Ubuntu 18.04 LTS image to use to clone VMs from for spinning up our K8s nodes, we then cloned four VMs out, one as the master and three to be used as workers. This time we are going to step through installing all the necessary K8s components on each of the nodes (kubeadm, kubectl and kubelet), the container runtime (Docker) and configuring the vSphere Cloud Provider for Kubernetes using kubeadm to bootstrap the cluster....

January 28, 2019 · Myles Gray

Creating an Ubuntu 18.04 LTS cloud image for cloning on VMware

Intro I have been experimenting a lot over the past 18 months with containers and in particular, Kubernetes, and one of the core things I always seemed to get hung up on was part-zero - creating the VMs to actually run K8s. I wanted a CLI only way to build a VM template for the OS and then deploy that to the cluster. It turns out that with Ubuntu 18.04 LTS (in particular the cloud image OVA) there are a few things need changed from the base install (namely cloud-init) in order to make them play nice with OS Guest Customisation in vCenter....

January 27, 2019 · Myles Gray

Recovering NSX Manager with corrupt filesystem

I had a bit of a storage outage in my lab due to a funky behaviour on the Synology that I use as primary storage for all my VMs. Most stuff came back up or could at least be trivially fixed (like VCSA, PSCs, etc) you can edit the GRUB boot string ↗ and force into /bin/bash then run fsck from there. One VM that doesn’t allow the GRUB string to be edited or both to be paused in any way is the NSX manager, that was a problem given I was presented with this upon boot:...

November 13, 2016 · Myles Gray

Replicating SAN on openSUSE with VAAI

Preamble This article was written a few years back, but never published - it was some work I was doing in my lab to try and get to grips around the work involved in creating a SAN with synchronous replication built in from scratch. It in no way should be used for production, but rather as a learning exercise - as previously stated the instructions are a few years old and version specific, so openSUSE may well now support some of the modules I had to compile and create repos for manually, also DRBD9 has been released and should obviously be used in place of DRBD8 as I have below....

August 27, 2016 · Myles Gray

Replaying Linux CLI commands with history

Very handy little snippet I discovered today, mostly here for my own reference in future. It’s handy to be able to re-play/re-submit commands that you’ve typed into the CLI before on your Linux box, to do this you can use the history command. Let’s take a look at my webserver hosting the site, just as an example: root@web:~# history 781 nano /etc/cron.hourly/.placeholder sess_ 782 crontab 783 crontab -e 784 nano /etc/cron....

June 20, 2015 · Myles Gray

Utilising Kerberos/AD auth in Ubuntu 14.04 with realmd

It has, over the years always been quite a quandary to get SSO auth working from *nix -> MS AD without a huge amount of fiddling and tinkering, but there is a new auth framework in town by the name of realmd ↗. While tinkering with The Foreman ↗ recently it had dawned on me it would be cool to have it set up such that, after the VM had been automatically provisioned it would allow me to SSH into it using my AD credentials....

December 8, 2014 · Myles Gray

How to test if 9000 MTU/Jumbo Frames are working

Introduction Fairly straight forward this time, you’ve configured your MTU/jumbo frames to be 9000 on your client and destination devices (say a laptop/desktop/server/san/nas) and on ALL your switching devices in between - you’ve done that right? ;) Testing So the next step is, we want to test if our new 9000 byte MTU is actually working and we can reap the benefits of a larger packet size (whether it’s on iSCSI, LAN, whatever) being of course a higher latency but also higher throughput....

September 9, 2013 · Myles Gray