mirror of
https://gitlab.sectorq.eu/jaydee/ansible.git
synced 2026-09-08 21:27:36 +02:00
78 lines
2.4 KiB
YAML
78 lines
2.4 KiB
YAML
- name: Install kubernetes on Rocky 9
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
block:
|
|
- name: Remove Helm v4 if present
|
|
ansible.builtin.file:
|
|
path: /usr/local/bin/helm
|
|
state: absent
|
|
become: true
|
|
|
|
- name: Download Helm v3 archive
|
|
ansible.builtin.get_url:
|
|
url: https://get.helm.sh/helm-v3.15.4-linux-amd64.tar.gz
|
|
dest: /tmp/helm-v3.15.4-linux-amd64.tar.gz
|
|
mode: '0644'
|
|
when: inventory_hostname.endswith('-vm01.home.lan')
|
|
|
|
- name: Extract Helm archive
|
|
ansible.builtin.unarchive:
|
|
src: /tmp/helm-v3.15.4-linux-amd64.tar.gz
|
|
dest: /tmp
|
|
remote_src: true
|
|
when: inventory_hostname.endswith('-vm01.home.lan')
|
|
- name: Create Helm working directory
|
|
file:
|
|
path: /tmp/helm
|
|
state: directory
|
|
mode: '0755'
|
|
- name: Prepare Helm directories
|
|
file:
|
|
path: /tmp/helm/.config/helm
|
|
state: directory
|
|
mode: '0755'
|
|
- name: Install Helm v3 binary
|
|
ansible.builtin.copy:
|
|
src: /tmp/linux-amd64/helm
|
|
dest: /usr/local/bin/helm
|
|
mode: '0755'
|
|
remote_src: true
|
|
environment:
|
|
HOME: /tmp/helm
|
|
XDG_CONFIG_HOME: /tmp/helm
|
|
KUBECONFIG: /home/jd/.kube/config
|
|
become: true
|
|
when: inventory_hostname.endswith('-vm01.home.lan')
|
|
|
|
- name: Add NFS provisioner Helm repository
|
|
kubernetes.core.helm_repository:
|
|
name: nfs-subdir-external-provisioner
|
|
repo_url: https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
|
|
environment:
|
|
PATH: /usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin
|
|
HOME: /tmp/helm
|
|
XDG_CONFIG_HOME: /tmp/helm/.config
|
|
KUBECONFIG: /home/jd/.kube/config
|
|
when: inventory_hostname.endswith('-vm01.home.lan')
|
|
|
|
- name: Install NFS Subdir External Provisioner
|
|
kubernetes.core.helm:
|
|
name: nfs-storage
|
|
chart_ref: nfs-subdir-external-provisioner/nfs-subdir-external-provisioner
|
|
release_namespace: kube-system
|
|
create_namespace: true
|
|
kubeconfig: /home/{{ ansible_user }}/.kube/config
|
|
|
|
values:
|
|
nfs:
|
|
server: "{{ nfs_server }}"
|
|
path: /qda_1
|
|
|
|
storageClass:
|
|
name: nfs-client
|
|
defaultClass: true
|
|
|
|
environment:
|
|
HOME: /tmp/helm
|
|
|
|
become: true
|
|
when: inventory_hostname.endswith('-vm01.home.lan') |