diff --git a/cesnet-central/playbooks/upgrade.yaml b/cesnet-central/playbooks/upgrade.yaml new file mode 100644 index 0000000000000000000000000000000000000000..79e2c3bb5187afea0a7de8aa50671b6b3ba2344c --- /dev/null +++ b/cesnet-central/playbooks/upgrade.yaml @@ -0,0 +1,82 @@ +--- +# +# Upgrade kubernetes cluster +# +# https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/ +# +# Usage example: +# +# VERSION=1.28.8 +# ansible-playbook playbooks/upgrade.yaml --extra-vars "version=$VERSION" +# +- name: Upgrade and hold kubeadm package + hosts: master,ingress,nfs,worker,gpu + become: true + tasks: + - name: Upgrade packages + apt: + name: kubeadm={{ version }}* + state: present + force: true + update_cache: true + - name: Hold packages + dpkg_selections: + name: "{{ item }}" + selection: hold + loop: + - kubeadm + +- name: Upgrade k8s master + hosts: master + become: true + tasks: + - name: Upgrade kubeadm + command: | + kubeadm upgrade apply --yes v{{ version }} + when: true + +- name: Upgrade k8s nodes + hosts: ingress,nfs,worker,gpu + become: true + tasks: + - name: Upgrade kubeadm + command: | + kubeadm upgrade node + when: true + +- name: Upgrade and hold packages + hosts: master,ingress,nfs,worker,gpu + become: true + tasks: + - name: Upgrade packages + apt: + name: kubectl={{ version }}*, kubelet={{ version }}* + state: present + force: true + update_cache: true + - name: Hold packages + dpkg_selections: + name: "{{ item }}" + selection: hold + loop: + - kubectl + - kubelet + - name: Restart kubelet + systemd: + state: restarted + name: kubelet + +# pinned by grycap.kubernetes +# - name: Upgrade networking +# hosts: master +# become: true +# tasks: +# - name: Upgrade weave +# shell: | +# set -o pipefail +# kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')" +# environment: +# KUBECONFIG: /etc/kubernetes/admin.conf +# args: +# executable: /bin/bash +# when: true diff --git a/cesnet-mcc/playbooks/upgrade.yaml b/cesnet-mcc/playbooks/upgrade.yaml new file mode 120000 index 0000000000000000000000000000000000000000..3a004255a11079586ec6ca47467336cfb866c6d0 --- /dev/null +++ b/cesnet-mcc/playbooks/upgrade.yaml @@ -0,0 +1 @@ +/home/valtri/notebooks-operations.eosc/cesnet-central/playbooks/upgrade.yaml \ No newline at end of file