How update kubernetes v1.10.8 and kismatic v1.12.0 to last with kubeadm - kubernetes

Kubernetes (v1.10.8) installed on my cloud by kismatic (v1.12.0). How I can update kubernetes to the latest version with kubeadm?

With such version difference - we currently have v1.23 (see official supported releases) - I would consider creating the cluster from the beginning.
If this is not possible, you should upgrade them step by step (from version to version). Here you can find guide that will help to upgrade kubeadm clusters.
A link to older versions you can find here, but
NOTE:
Kubernetes v1.19 documentation is no longer actively maintained. The version you are currently viewing is a static snapshot.
However, you have to have in mind that upgrading through so many versions can cause other issues, so I recommend using the first option.

Related

Upgrading grafana v4 to v5 - or should skip and go straight to v7?

Playing catch up with Grafana versions, (Kubernetes v1.16.15 clusters)
Currently running in PRODUCTION is very out of date (v4)
I'm only upgrading now, and refactoring all my configs for the "new" provisioning.
Should I just upgrade to v5 and release in PROD, and then incrementally upgrade again to v6?
or skip v5 just straight to v7?
According to the official docs there are some functions/solutions that went deprecated from one version to another. You should take a look when upgrading to make sure that you are ready for it.
Other than that, there are two ways to get your Grafana to v7:
Step by step upgrade:
Backup Database
Backup Grafana configuration file (i.e grafana.ini)
Perform the update/upgrade depending on the chosen method.
If that won't work, you can also do a fresh install on top of an existing one or remove the current version, install the latest one and than check grafana.ini file.
If you choose the 1st option than please notice that it is considered safer to upgrade one major version at the time. Also, the database/configuration backup is always recommended.
EDIT:
If you are using Grafana Community Kubernetes Helm Charts than notice that Upgrading an existing Release to a new major version requires the Helm v3 (>= 3.1.0) starting from Grafana v6.0.0.
Thanks #Wytrzymały Wiktor
I'm taking the "safe route" upgrading v4->v5 first. New functions and configuration change impacts are too great (as I said system is very out of date!)
Re-factoring all my helm charts, and getting old dashboards re-imported to v5 DB,and backing up everything as you advise.
v5 will be released to PROD users, and then will start looking at v6 upgrade soon after.

minikube --kubernetes-version --> Which version are supported?

I know that you can start minikube with a different K8s version with --kubernetes-version.
But how can I let minikube list all versions which it supports?
I had a look at the command reference of start, but could not find a way up to now.
In my case I would like to know which one is the latest v1.17.X version which is supported.
On the github release page I found that v1.17.12 is today the latest version in the 17.x series. But it would be nice, if I minikube or kubectl could tell me this.
#Esteban Garcia is right but I would like to expand on this topic a bit more with the help of the official documentation:
By default, minikube installs the latest stable version of Kubernetes
that was available at the time of the minikube release. You may select
a different Kubernetes release by using the --kubernetes-version
flag, for example:
minikube start --kubernetes-version=v1.11.10
minikube follows the Kubernetes Version and Version Skew Support
Policy, so we guarantee support for the latest build for the last
3 minor Kubernetes releases. When practical, minikube aims to support
older releases as well so that users can emulate legacy environments.
For up to date information on supported versions, see
OldestKubernetesVersion and NewestKubernetesVersion in
constants.go.
The following command may be helpful:
minikube config defaults kubernetes-version

How to upgrade istio 1.4.3 to latest with zero downtime

I am newly hired engineer who started working with istio recently. My application is currently running on istio 1.4.3 and having issues when i tried to upgrade to latest using istioctl upgrade.
Below are the steps i tried
1) Verified the versions using istioctl version and saw that control plane and data plane are running on 1.4.3 whereas client version is 1.5.1 (the version i planned to upgrade).
2) Tried istioctl upgrade and seen a message “cannot upgrade because of mismatch of versions in istio components”.
3) As it was my dev environment, i decided to reinstall using istioctl manifest apply --profile default
4) Above step cost me a lot of time, because i lost all the settings related to ingress gateway connected to AWS ALB, instead ingress controller created a classic load balancer which is not part of our previous set-up.
5) I also lost setting related to prometheus, grafana, kiali.
6) Now i am planning upgrade my prod without messing the current settings, please suggest a correct way to upgrade istio to latest version with zero downtime.
what is the best way to do this upgrade, can you point out any link to documentation apart from what is mentioned in istio website ? Help is much appreciated
can you point out any link to documentation apart from what is mentioned in istio website
https://istio.io has the most comprehensive information on the topic.
There are some prerequisites for the Istio upgrade as well.
- Istio version 1.4.4 or higher is installed.
- Your Istio installation was installed using istioctl.
It looks like your Istio version is a tiny step below minimum supported one :)
what is the best way to do this upgrade,
Usually it is recommended to go 1.4 --> 1.5 and only then 1.5 --> 1.6.
I have found the following document that describes an "experimental feature, which is intended for evaluation purposes only".
But the minimal version for it is 1.3.3 or higher, which might do the trick for you.
I hope that helps.

Which Docker versions will K8s 1.7 support?

1.7 is around the corner according to the release plan. I'm wondering which Docker versions will be supported. Up until now I got this information from the Changelogs External Dependency Version information paragraph --> https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG.md#external-dependency-version-information
I asked the same question in the Kubernetes Google Groups and got an official answer.
According to the sig-node team Kubernetes will continue to support only Docker 1.12.x at the launch of Kubernetes 1.7. They will however add 1.13 support early in the lifecycle of K8s 1.7.
Just FYI: Q2 2017 marks the EOL of Docker 1.12 according to their Maintenance Lifecycle

What's upgraded exactly when you upgrade a Service Fabric cluster?

As explained in the article Controlling the fabric version that runs on your Cluster, you can choose which version of Service Fabric you want Azure to create for you.
The ServiceFabric nuget package seem to have the same version numbers as the clusters, but older versions of the packages work just fine with newer versions of the cluster.
Now, the release notes for version 5.4.145 state a list of improvements, and mentions that some older versions won't be supported anymore.
What I'm failing to understand is -
Will I get the list of improvements just by upgrading my cluster, or do I also have to upgrade my nuget packages?
Similarly, does it mean I have to upgrade my nuget packages soon, otherwise I'm at risk of running deprecated code?
Would also be nice to get some clarification of what exactly is upgraded when I upgrade a cluster, what's upgraded when I upgrade my packages, and how the two upgrades relate to each other.
There's a difference between the Runtime and the SDK. When the cluster is upgraded, it gets a new runtime. Any improvements in that runtime will be available to existing services running in the cluster.
Upgrading the SDK (or the Nuget packages) will result in new functionality to become available to applications (services/actors) built on top of the cluster runtime.
I'd recommend updating Nuget packages soon after upgrading the cluster to keep them in sync.