Add UOS linux support (#9432)
This commit is contained in:
parent
78624c5bcb
commit
c272421910
8 changed files with 68 additions and 3 deletions
|
@ -130,6 +130,7 @@ vagrant up
|
||||||
- **Rocky Linux** [8, 9](docs/centos.md#centos-8)
|
- **Rocky Linux** [8, 9](docs/centos.md#centos-8)
|
||||||
- **Kylin Linux Advanced Server V10** (experimental: see [kylin linux notes](docs/kylinlinux.md))
|
- **Kylin Linux Advanced Server V10** (experimental: see [kylin linux notes](docs/kylinlinux.md))
|
||||||
- **Amazon Linux 2** (experimental: see [amazon linux notes](docs/amazonlinux.md))
|
- **Amazon Linux 2** (experimental: see [amazon linux notes](docs/amazonlinux.md))
|
||||||
|
- **UOS Linux** (experimental: see [uos linux notes](docs/uoslinux.md))
|
||||||
|
|
||||||
Note: Upstart/SysV init based OS types are not supported.
|
Note: Upstart/SysV init based OS types are not supported.
|
||||||
|
|
||||||
|
|
|
@ -37,6 +37,7 @@
|
||||||
* [CentOS/OracleLinux/AlmaLinux/Rocky Linux](docs/centos.md)
|
* [CentOS/OracleLinux/AlmaLinux/Rocky Linux](docs/centos.md)
|
||||||
* [Kylin Linux Advanced Server V10](docs/kylinlinux.md)
|
* [Kylin Linux Advanced Server V10](docs/kylinlinux.md)
|
||||||
* [Amazon Linux 2](docs/amazonlinux.md)
|
* [Amazon Linux 2](docs/amazonlinux.md)
|
||||||
|
* [UOS Linux](docs/uoslinux.md)
|
||||||
* CRI
|
* CRI
|
||||||
* [Containerd](docs/containerd.md)
|
* [Containerd](docs/containerd.md)
|
||||||
* [Docker](docs/docker.md)
|
* [Docker](docs/docker.md)
|
||||||
|
|
9
docs/uoslinux.md
Normal file
9
docs/uoslinux.md
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
# UOS Linux
|
||||||
|
|
||||||
|
UOS Linux(UnionTech OS Server 20) is supported with docker and containerd runtimes.
|
||||||
|
|
||||||
|
**Note:** that UOS Linux is not currently covered in kubespray CI and
|
||||||
|
support for it is currently considered experimental.
|
||||||
|
|
||||||
|
There are no special considerations for using UOS Linux as the target OS
|
||||||
|
for Kubespray deployments.
|
|
@ -7,7 +7,7 @@
|
||||||
check_mode: false
|
check_mode: false
|
||||||
|
|
||||||
- include_tasks: bootstrap-centos.yml
|
- include_tasks: bootstrap-centos.yml
|
||||||
when: '''ID="centos"'' in os_release.stdout_lines or ''ID="ol"'' in os_release.stdout_lines or ''ID="almalinux"'' in os_release.stdout_lines or ''ID="rocky"'' in os_release.stdout_lines or ''ID="kylin"'' in os_release.stdout_lines'
|
when: '''ID="centos"'' in os_release.stdout_lines or ''ID="ol"'' in os_release.stdout_lines or ''ID="almalinux"'' in os_release.stdout_lines or ''ID="rocky"'' in os_release.stdout_lines or ''ID="kylin"'' in os_release.stdout_lines or ''ID="uos"'' in os_release.stdout_lines'
|
||||||
|
|
||||||
- include_tasks: bootstrap-amazon.yml
|
- include_tasks: bootstrap-amazon.yml
|
||||||
when: '''ID="amzn"'' in os_release.stdout_lines'
|
when: '''ID="amzn"'' in os_release.stdout_lines'
|
||||||
|
@ -92,6 +92,14 @@
|
||||||
tags:
|
tags:
|
||||||
- facts
|
- facts
|
||||||
|
|
||||||
|
- name: Set os_family fact for UOS Linux
|
||||||
|
set_fact:
|
||||||
|
ansible_os_family: "RedHat"
|
||||||
|
ansible_distribution_major_version: "8"
|
||||||
|
when: ansible_distribution == "UnionTech"
|
||||||
|
tags:
|
||||||
|
- facts
|
||||||
|
|
||||||
- name: Install ceph-commmon package
|
- name: Install ceph-commmon package
|
||||||
package:
|
package:
|
||||||
name:
|
name:
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
fail:
|
fail:
|
||||||
msg: "{{ ansible_distribution }} is not supported by containerd."
|
msg: "{{ ansible_distribution }} is not supported by containerd."
|
||||||
when:
|
when:
|
||||||
- ansible_distribution not in ["CentOS", "OracleLinux", "RedHat", "Ubuntu", "Debian", "Fedora", "AlmaLinux", "Rocky", "Amazon", "Flatcar", "Flatcar Container Linux by Kinvolk", "Suse", "openSUSE Leap", "openSUSE Tumbleweed", "Kylin Linux Advanced Server"]
|
- ansible_distribution not in ["CentOS", "OracleLinux", "RedHat", "Ubuntu", "Debian", "Fedora", "AlmaLinux", "Rocky", "Amazon", "Flatcar", "Flatcar Container Linux by Kinvolk", "Suse", "openSUSE Leap", "openSUSE Tumbleweed", "Kylin Linux Advanced Server", "UnionTech"]
|
||||||
|
|
||||||
- name: containerd | Remove any package manager controlled containerd package
|
- name: containerd | Remove any package manager controlled containerd package
|
||||||
package:
|
package:
|
||||||
|
|
|
@ -101,6 +101,7 @@
|
||||||
update_cache: true
|
update_cache: true
|
||||||
dnf:
|
dnf:
|
||||||
enablerepo: "{{ docker_package_info.enablerepo | default(omit) }}"
|
enablerepo: "{{ docker_package_info.enablerepo | default(omit) }}"
|
||||||
|
disablerepo: "{{ docker_package_info.disablerepo | default(omit) }}"
|
||||||
yum:
|
yum:
|
||||||
enablerepo: "{{ docker_package_info.enablerepo | default(omit) }}"
|
enablerepo: "{{ docker_package_info.enablerepo | default(omit) }}"
|
||||||
zypper:
|
zypper:
|
||||||
|
|
45
roles/container-engine/docker/vars/uniontech.yml
Normal file
45
roles/container-engine/docker/vars/uniontech.yml
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
---
|
||||||
|
# containerd versions are only relevant for docker
|
||||||
|
containerd_versioned_pkg:
|
||||||
|
'latest': "{{ containerd_package }}"
|
||||||
|
'1.3.7': "{{ containerd_package }}-1.3.7-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.3.9': "{{ containerd_package }}-1.3.9-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.4.3': "{{ containerd_package }}-1.4.3-3.2.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.4.4': "{{ containerd_package }}-1.4.4-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.4.6': "{{ containerd_package }}-1.4.6-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.4.9': "{{ containerd_package }}-1.4.9-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.4.12': "{{ containerd_package }}-1.4.12-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.6.4': "{{ containerd_package }}-1.6.4-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'1.6.8': "{{ containerd_package }}-1.6.8-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'stable': "{{ containerd_package }}-1.6.8-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
'edge': "{{ containerd_package }}-1.6.8-3.1.el{{ ansible_distribution_major_version }}"
|
||||||
|
|
||||||
|
docker_version: 19.03
|
||||||
|
docker_cli_version: 19.03
|
||||||
|
|
||||||
|
# https://docs.docker.com/engine/installation/linux/centos/#install-from-a-package
|
||||||
|
# https://download.docker.com/linux/centos/<centos_version>>/x86_64/stable/Packages/
|
||||||
|
# or do 'yum --showduplicates list docker-engine'
|
||||||
|
docker_versioned_pkg:
|
||||||
|
'latest': docker-ce
|
||||||
|
'18.09': docker-ce-3:18.09.9-3.el7
|
||||||
|
'19.03': docker-ce-3:19.03.15-3.el{{ ansible_distribution_major_version }}
|
||||||
|
'20.10': docker-ce-3:20.10.17-3.el{{ ansible_distribution_major_version }}
|
||||||
|
'stable': docker-ce-3:20.10.17-3.el{{ ansible_distribution_major_version }}
|
||||||
|
'edge': docker-ce-3:20.10.17-3.el{{ ansible_distribution_major_version }}
|
||||||
|
|
||||||
|
docker_cli_versioned_pkg:
|
||||||
|
'latest': docker-ce-cli
|
||||||
|
'18.09': docker-ce-cli-1:18.09.9-3.el7
|
||||||
|
'19.03': docker-ce-cli-1:19.03.15-3.el{{ ansible_distribution_major_version }}
|
||||||
|
'20.10': docker-ce-cli-1:20.10.17-3.el{{ ansible_distribution_major_version }}
|
||||||
|
'stable': docker-ce-cli-1:20.10.17-3.el{{ ansible_distribution_major_version }}
|
||||||
|
'edge': docker-ce-cli-1:20.10.17-3.el{{ ansible_distribution_major_version }}
|
||||||
|
|
||||||
|
docker_package_info:
|
||||||
|
enablerepo: "docker-ce"
|
||||||
|
disablerepo: "UniontechOS-20-AppStream"
|
||||||
|
pkgs:
|
||||||
|
- "{{ containerd_versioned_pkg[docker_containerd_version | string] }}"
|
||||||
|
- "{{ docker_cli_versioned_pkg[docker_cli_version | string] }}"
|
||||||
|
- "{{ docker_versioned_pkg[docker_version | string] }}"
|
|
@ -24,7 +24,7 @@
|
||||||
|
|
||||||
- name: Stop if unknown OS
|
- name: Stop if unknown OS
|
||||||
assert:
|
assert:
|
||||||
that: ansible_distribution in ['RedHat', 'CentOS', 'Fedora', 'Ubuntu', 'Debian', 'Flatcar', 'Flatcar Container Linux by Kinvolk', 'Suse', 'openSUSE Leap', 'openSUSE Tumbleweed', 'ClearLinux', 'OracleLinux', 'AlmaLinux', 'Rocky', 'Amazon', 'Kylin Linux Advanced Server']
|
that: ansible_distribution in ['RedHat', 'CentOS', 'Fedora', 'Ubuntu', 'Debian', 'Flatcar', 'Flatcar Container Linux by Kinvolk', 'Suse', 'openSUSE Leap', 'openSUSE Tumbleweed', 'ClearLinux', 'OracleLinux', 'AlmaLinux', 'Rocky', 'Amazon', 'Kylin Linux Advanced Server', 'UnionTech']
|
||||||
msg: "{{ ansible_distribution }} is not a known OS"
|
msg: "{{ ansible_distribution }} is not a known OS"
|
||||||
when: not ignore_assert_errors
|
when: not ignore_assert_errors
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue