Wednesday, May 19, 2021

Updating Supervisor Cluster


It’s not news that Kubernetes has a massive rate of development and new releases bringing to the market fixes and new features, which imposes a challenge to every enterprise trying to keep up with the new releases.


Luckily VMware has streamlined the update process on vSphere with Tanzu as I intent to show here.


It worth’s mention that VMware keeps a n-1 release cycle model, meaning that we provide the version which has the major bugs already fixes, for instances as the time of this post Kubernetes upstream version is 1.20, so we are working with version 1.19.

The new release will the Kubernetes software versions and the infrastructure and services supporting the Kubernetes clusters, such as virtual machine configurations and resources, vSphere services and namespaces, and custom resources


Once the new release is available, usually following a vCenter update, the new release will be available inside the Workload Management


Just go to Updates tab and you can see your actual version and the version available for an update.



To start the update process, just select the cluster, desired release and click on Apply Update.



You must update incrementally. Do not skip updates, such as from 1.17 to 1.19. The path should be 1.17, 1.18 and then 1.19


vSphere with Tanzu supports rolling updates ensuring there’s a minimal downtime for the workloads, of course if sometime goes wrong rollback is also in place to bring your services back.


The new control plane will be deployed, once a new node is available it will be joined to the cluster and an older out-of-date node is removed, the objects are also migrated from the old to the new one.

This process repeats one-by-one until all control plane nodes are updated then the older nodes are deleted from vSphere inventory





























Once all the Control Planes were deployed the old ones will be removed (you might realize based on the Control Plane numbers.

Once the control plane is updated (you might realize by the new control plane numbers), the worker nodes (ESXi hosts) are updated in a similar rolling update fashion, and each spherelet process on each ESXi host is updated one-by-one.




Starting with vSphere with Tanzu Update 2 there’s a new auto update policy model of n-2, which means that if you have a Supervisor Cluster that falls behind the rule it will be automatically updated, this is done to prevent the customers to run in a non-supported environment.

So, if your vCenter has been updated to include version 1.19, already provisioned clusters with version 1.18 and 1.17 will be fine, but if any of your cluster is 1.16 it will be automatically updated.


There’s a lot of information about the update process that I really encourage all of you to read here.

 Now check how to update your upstream Kubernetes Cluster !!!



Thursday, May 13, 2021

Enabling Supervisor Cluster with AVI

A few weeks ago, I blogged about how to enable Workload Management Cluster (WMC) on vSphere with Tanzu using NSX and vSphere Distributed Switch (vDS) with HAProxy.


You might also have heard that starting with vSphere Update 2 there’s a new Load Balancer option for vDS use cases, NSX Advanced Load Balancer.


NSX Advanced Load Balancer uses a software-defined architecture that separates the central control from the distributed data plane where the services run. It represents full-featured, enterprise-grade load balancers, web application firewall (WAF), and analytics that provide traffic managementand application security while collecting real-time analytics from the traffic flows.


The best thing about it is that NSX Advanced Load Balancer is included in every Tanzu Edition.


Before enabling it, make sure all the requirements aremet, here’s the video;



Thursday, May 6, 2021

Tanzu Kubernetes Cluster and Virtual Machine Class


Recently I upgraded my environment with vSphere 7 Update 2 and while doing some new tests with vSphere with Tanzu, like Virtual Machine services (more about it on a latter post), to my surprise the creation of Tanzu Kubernetes Cluster with an YAML file I’ve been using for several months for my demos failed


When I describe the deployment of TKG cluster I found out an error saying VirtualMachineClassBindingNotFound.


Running the command “kubectl get virtualmachineclasses” proved that the Virtual Machine Class I was using on my descriptive file was available inside the Namespace.


That’s when I remember the new Virtual Machine Service and decided to take an extra look to my Namespace’s configuration.


To my surprise (it should not be) there’s an entire new section for VM Service and one of the options is to configure VM Classes


Once I enabled the VM Class I was using on my TKG Cluster everything worked as expected and my cluster was created successfully.


This improvement enhanced a lot the governance of the platform, allowing operators to control the resources the developers can consume in a very stylish way.


See you next


Who am I

My photo
I’m an IT specialist with over 15 years of experience, working from IT infrastructure to management products, troubleshooting and project management skills from medium to large environments. Nowadays I'm working for VMware as a Consulting Architect, helping customers to embrace the Cloud Era and make them successfully on their journey. Despite the fact I'm a VMware employee these postings reflect my own opinion and do not represents VMware's position, strategies or opinions. Reach me at @dumeirell

Most Viewed Posts

Blog Archive