revert deploy mongodb database
This commit is contained in:
2024-04-23 12:59:19 +02:00
parent 271d48c03d
commit 8bf90d120d
22 changed files with 786 additions and 0 deletions
@@ -0,0 +1,129 @@
######################################
#tasks for vanilla kubernetes install#
######################################
---
- name: Get OS version name
command: lsb_release -cs
register: os_codename
changed_when: false
- name: Get OS release number
command: lsb_release -rs
register: os_release
changed_when: false
- name: Add an apt signing key for CRI-O
apt_key:
url: "{{ item }}"
state: present
loop:
- 'https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/{{ crio_version }}/Debian_{{ os_release.stdout }}/Release.key'
- 'https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_{{ os_release.stdout }}/Release.key'
- name: Add CRI-O apt repository for stable version
apt_repository:
repo: deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_{{ os_release.stdout }}/ /
filename: devel:kubic:libcontainers:stable.list
state: present
update_cache: yes
- apt_repository:
repo: deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/{{ crio_version }}/Debian_{{ os_release.stdout }}/ /
filename: devel:kubic:libcontainers:stable:cri-o:{{ crio_version }}.list
state: present
update_cache: yes
- name: Install CRI-O packages
apt:
name: "{{ packages }}"
state: present
update_cache: yes
allow_unauthenticated: true
vars:
packages:
- cri-o
- cri-o-runc
- name: Enable and start CRI-O service
ansible.builtin.systemd:
name: crio.service
state: started
enabled: yes
- name: CRI-O use systemd cgroup driver
copy:
dest: "/etc/crio/crio.conf.d/02-cgroup-manager.conf"
content: |
[crio.runtime]
conmon_cgroup = "pod"
cgroup_manager = "systemd"
- name: Overriding the CRI-O sandbox (pause) image
lineinfile:
path: /etc/crio/crio.conf
regexp: '#? ?pause_image ?= ?"registry\.k8s\.io/pause:(.+)"'
backrefs: True
line: pause_image = "registry.k8s.io/pause:\1"
- name: Forwarding IPv4 and letting iptables see bridged traffic
copy:
dest: "/etc/modules-load.d/k8s.conf"
content: |
overlay
br_netfilter
- name: modprobe overlay & br-netfilter
command: "{{ item }}"
loop:
- modprobe overlay
- modprobe br_netfilter
#sysctl params required by setup, params persist across reboots
- name: ipv4 bridge forward
copy:
dest: "/etc/sysctl.d/k8s.conf"
content: |
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
- name: Apply sysctl params without reboot
command: sysctl --system
- name: Import Kubernetes GPG key
raw: "curl -fsSL https://pkgs.k8s.io/core:/stable:/v{{ kubernetesVersion.split('.')[:2] | join('.') }}/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg"
- name: Add Kubernetes apt repository
raw: "echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v{{ kubernetesVersion.split('.')[:2] | join('.') }}/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list"
- name: Remove swapfile from /etc/fstab
mount:
name: "{{ item }}"
fstype: swap
state: absent
with_items:
- swap
- none
- name: Disable swap
command: swapoff -a
- name: Update apt cache
raw: apt-get -y update
changed_when: False
- name: Install Kubernetes binaries
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- "kubelet={{ kubernetesVersion }}-1.1"
- "kubeadm={{ kubernetesVersion }}-1.1"
- "kubectl={{ kubernetesVersion }}-1.1"
- name: Add kubectl completion bash
lineinfile:
path: ~/.bashrc
line: source <(kubectl completion bash)
@@ -0,0 +1,39 @@
######################################
# Setup k8s Cluster #
######################################
---
- name: kubernetes installation
block:
- name: vanilla kubernetes install block
when: kubernetesClusterType == 'vanilla'
block:
- name: Read vanilla kubernetes values
include_vars:
file: ../vars/k8s_cluster/kubernetes/vanilla_kubernetes.yml
- import_tasks: ../tasks/k8s_cluster/kubernetes/install_vanilla_kubernetes.yml
# ToDo: find solution for VIP
# - name: Read kube_vip values for virtual IP
# include_vars:
# file: ../vars/k8s_cluster/kube_vip/kube_vip.yml
# - import_tasks: ../tasks/k8s_cluster/kube_vip/install_kube_vip.yml
# when: inventory_hostname in groups['controller']
- import_tasks: ../tasks/k8s_cluster/cluster/vanilla_kubernetes/init_kubernetes_cluster.yml
when: inventory_hostname in groups['controller_init']
- import_tasks: ../tasks/k8s_cluster/cluster/vanilla_kubernetes/generate_join_command.yml
when: inventory_hostname in groups['controller_init']
#ToDo: when controller replica exists
## - import_tasks: ../tasks/k8s_cluster/cluster/vanilla_kubernetes/add_controller_to_cluster.yml
## when: inventory_hostname in groups['controller_replica']
- import_tasks: ../tasks/k8s_cluster/cluster/vanilla_kubernetes/add_worker_to_cluster.yml
when: inventory_hostname in groups['worker']
- import_tasks: ../tasks/k8s_cluster/cluster/vanilla_kubernetes/restart_coredns.yml
when: inventory_hostname in groups['controller_init']
#
# - name: install microk8s block
# when: kubernetesClusterType == 'microk8s'
# block:
# - debug: msg='ToDo install microk8s'