WEBVTT

00:01.010 --> 00:03.920
Hello and welcome to this lecture. In this lecture

00:03.920 --> 00:09.710
we will discuss about the various Kubernetes releases and versions.

00:09.710 --> 00:12.740
So what do we know about API versions in Kubernetes

00:12.770 --> 00:19.250
so far? We know that when we install a kubernetes cluster, we install a specific version of kubernetes.

00:19.250 --> 00:23.920
We can see that when we run the kubectl get nodes command.

00:23.960 --> 00:27.330
In this case its v1.11.3.

00:27.560 --> 00:34.730
In this lecture we will see how kubernetes project manages software releases.

00:34.730 --> 00:37.600
Let's take a closer look at that version number.

00:37.880 --> 00:42.200
The kubernetes release versions consists of 3 parts.

00:42.230 --> 00:49.020
The first is the major version, followed by the minor version and then the Patch version.  While minor

00:49.020 --> 00:54.160
versions are released every few months with new features and functionalities,

00:54.330 --> 01:02.140
patches are released more often with critical bug fixes. Just like many other popular applications out

01:02.140 --> 01:02.940
there,

01:02.950 --> 01:09.280
kubernetes follows a standard software release versioning procedure. Every few month

01:09.400 --> 01:15.400
It comes out with new features and functionalities through a minor release.

01:15.400 --> 01:21.000
The first major version 1.0 was released in July of 2015.

01:21.280 --> 01:30.100
As of this recording the latest stable version is 1.13.0. Whatever we have seen here are stable

01:30.100 --> 01:32.630
releases of kubernetes.

01:32.710 --> 01:40.840
Apart from this you will also see alpha and beta releases all the bug fixes and improvements first go

01:40.840 --> 01:44.350
into an alpha release tagged alpha in this release.

01:44.350 --> 01:48.200
The features are disabled by default and maybe buggy.

01:48.310 --> 01:53.530
Then from there they make their way to beta release where the code is well tested.

01:53.530 --> 01:56.010
The new features are enabled by default.

01:56.410 --> 02:01.040
And finally they make their way to the main stable release.

02:01.100 --> 02:06.020
You can find all the releases in the releases page of the Kubernetes Github repository.

02:06.260 --> 02:12.740
Download the kubernetes.tar.gz file and extract it to find executables for all the kubernetes

02:12.740 --> 02:18.780
components. The downloaded package when extracted has all the control plane components in it.

02:19.100 --> 02:21.140
All of them of the same version.

02:21.140 --> 02:26.030
Remember that there are other components within the control plane that do not have the same version

02:26.030 --> 02:26.850
numbers.

02:27.140 --> 02:33.140
The ETCD cluster and CoreDNS servers have their own versions as they are separate projects.

02:33.140 --> 02:38.960
The release notes of each release provides information about the supported versions of  externally

02:38.960 --> 02:42.420
dependent applications like ETCD and CoreDNS etc.

02:42.740 --> 02:45.230
Check out the links for some references.

02:45.230 --> 02:49.140
That was a quick overview of the release versions. In the upcoming lecture

02:49.190 --> 02:52.790
we will discuss how to upgrade from one version to another.

