mirror of
https://github.com/openshift/openshift-ansible.git
synced 2026-02-05 06:46:04 +01:00
Add playbook for upgrading cri-o and kubelet on nodes
This commit is contained in:
70
playbooks/upgrade.yml
Normal file
70
playbooks/upgrade.yml
Normal file
@@ -0,0 +1,70 @@
|
||||
---
|
||||
- name: Pre-upgrade checks
|
||||
hosts: localhost
|
||||
connection: local
|
||||
gather_facts: no
|
||||
tasks:
|
||||
- fail:
|
||||
msg: >
|
||||
Detected no workers in inventory. Please add hosts to the
|
||||
workers host group to upgrade nodes
|
||||
when: groups.workers | default([]) | length == 0
|
||||
|
||||
- name: upgrade nodes
|
||||
hosts: workers
|
||||
serial: 1
|
||||
tasks:
|
||||
- block:
|
||||
- debug:
|
||||
msg: "Running openshift_node_pre_cordon_hook {{ openshift_node_pre_cordon_hook }}"
|
||||
- include_tasks: "{{ openshift_node_pre_cordon_hook }}"
|
||||
when: openshift_node_pre_cordon_hook is defined
|
||||
|
||||
- name: Cordon node prior to upgrade
|
||||
command: >
|
||||
oc adm cordon {{ item | lower }}
|
||||
--config={{ openshift_kubeconfig_path }}
|
||||
delegate_to: localhost
|
||||
with_items: "{{ ansible_play_batch }}"
|
||||
|
||||
- name: Drain node prior to upgrade
|
||||
command: >
|
||||
oc adm drain {{ item | lower }}
|
||||
--config={{ openshift_kubeconfig_path }}
|
||||
--force --delete-local-data --ignore-daemonsets
|
||||
delegate_to: localhost
|
||||
with_items: "{{ ansible_play_batch }}"
|
||||
|
||||
# Run the openshift_node_pre_upgrade_hook if defined
|
||||
- block:
|
||||
- debug:
|
||||
msg: "Running node openshift_node_pre_upgrade_hook {{ openshift_node_pre_upgrade_hook }}"
|
||||
- include_tasks: "{{ openshift_node_pre_upgrade_hook }}"
|
||||
when: openshift_node_pre_upgrade_hook is defined
|
||||
|
||||
# Upgrade Node
|
||||
- import_role:
|
||||
name: openshift_node
|
||||
vars:
|
||||
openshift_node_package_state: latest
|
||||
|
||||
# Run the openshift_node_pre_uncordon_hook if defined
|
||||
- block:
|
||||
- debug:
|
||||
msg: "Running openshift_node_pre_uncordon_hook {{ openshift_node_pre_uncordon_hook }}"
|
||||
- include_tasks: "{{ openshift_node_pre_uncordon_hook }}"
|
||||
when: openshift_node_pre_uncordon_hook is defined
|
||||
|
||||
- name: Uncordon node after upgrade
|
||||
command: >
|
||||
oc adm uncordon {{ item | lower }}
|
||||
--config={{ openshift_kubeconfig_path }}
|
||||
delegate_to: localhost
|
||||
with_items: "{{ ansible_play_batch }}"
|
||||
|
||||
# Run the openshift_node_post_upgrade_hook if defined
|
||||
- block:
|
||||
- debug:
|
||||
msg: "Running node openshift_node_post_upgrade_hook {{ openshift_node_post_upgrade_hook }}"
|
||||
- include_tasks: "{{ openshift_node_post_upgrade_hook }}"
|
||||
when: openshift_node_post_upgrade_hook is defined
|
||||
@@ -10,7 +10,13 @@ openshift_node_bootstrap_port: 22623
|
||||
openshift_node_bootstrap_server: "{{ openshift_node_kubeconfig.clusters.0.cluster.server.split(':')[0:-1] | join(':') }}:{{ openshift_node_bootstrap_port }}"
|
||||
openshift_node_bootstrap_endpoint: "{{ openshift_node_bootstrap_server }}/config/{{ openshift_node_machineconfigpool }}"
|
||||
|
||||
openshift_node_install_packages:
|
||||
openshift_node_package_state: present
|
||||
openshift_node_packages:
|
||||
- cri-o
|
||||
- openshift-clients
|
||||
- openshift-hyperkube
|
||||
|
||||
openshift_node_support_packages:
|
||||
# Packages from redhat-coreos.git manifest-base.yaml
|
||||
- kernel
|
||||
- irqbalance
|
||||
|
||||
@@ -1,21 +1,17 @@
|
||||
---
|
||||
- name: Install openshift support packages
|
||||
package:
|
||||
name: "{{ openshift_node_install_packages | join(',') }}"
|
||||
name: "{{ openshift_node_support_packages | join(',') }}"
|
||||
update_cache: true
|
||||
async: 3600
|
||||
poll: 30
|
||||
|
||||
- name: Install openshift packages
|
||||
package:
|
||||
name: "{{ l_node_packages | join(',') }}"
|
||||
name: "{{ openshift_node_packages | join(',') }}"
|
||||
state: "{{ openshift_node_package_state }}"
|
||||
async: 3600
|
||||
poll: 30
|
||||
vars:
|
||||
l_node_packages:
|
||||
- cri-o
|
||||
- openshift-clients
|
||||
- openshift-hyperkube
|
||||
|
||||
- name: Enable the CRI-O service
|
||||
systemd:
|
||||
|
||||
Reference in New Issue
Block a user