forked from kubernetes-sigs/kubespray
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add document outlining upgrade process
- Loading branch information
Showing
1 changed file
with
47 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
Upgrading Kubernetes in Kargo | ||
============================= | ||
|
||
#### Description | ||
|
||
Kargo handles upgrades the same way it handles initial deployment. That is to | ||
say that each component is laid down in a fixed order. You should be able to | ||
upgrade from Kargo tag 2.0 up to the current master without difficulty. You can | ||
also individually control versions of components by explicitly defining their | ||
versions. Here are all version vars for each component: | ||
|
||
* docker_version | ||
* kube_version | ||
* etcd_version | ||
* calico_version | ||
* calico_cni_version | ||
* weave_version | ||
* flannel_version | ||
* kubedns_version | ||
|
||
#### Example | ||
|
||
If you wanted to upgrade just kube_version from v1.4.3 to v1.4.6, you could | ||
deploy the following way: | ||
|
||
``` | ||
ansible-playbook cluster.yml -i inventory/inventory.cfg -e kube_version=v1.4.3 | ||
``` | ||
|
||
And then repeat with v1.4.6 as kube_version: | ||
|
||
``` | ||
ansible-playbook cluster.yml -i inventory/inventory.cfg -e kube_version=v1.4.6 | ||
``` | ||
|
||
#### Upgrade order | ||
|
||
As mentioned above, components are upgraded in the order in which they were | ||
installed in the Ansible playbook. The order of component installation is as | ||
follows: | ||
|
||
# Docker | ||
# etcd | ||
# kubelet and kube-proxy | ||
# network_plugin (such as Calico or Weave) | ||
# kube-apiserver, kube-scheduler, and kube-controller-manager | ||
# Add-ons (such as KubeDNS) |