grycap.kubernetes
Rôle Kubernetes
Ce rôle Ansible installe un cluster Kubernetes.
Ce travail est cofinancé par le projet EOSC-hub (Horizon 2020) sous le numéro de subvention 777536.
Variables du Rôle
Les variables qui peuvent être transmises à ce rôle et une brève description à leur sujet sont les suivantes.
# Version à installer ou la plus récente (1.24 ou supérieur)
kube_version: 1.24.17
# Type de nœud : front ou wn
kube_type_of_node: front
# Adresse IP ou nom du nœud front de Kube
kube_server: "{{ ansible_default_ipv4.address }}"
# Jeton de sécurité
kube_token: "kube01.{{ lookup('password', '/tmp/tokenpass chars=ascii_lowercase,digits length=16') }}"
# Durée de validité du jeton (0 signifie ne pas expirer)
kube_token_ttl: 0
# CIDR du réseau des POD
kube_pod_network_cidr: 10.244.0.0/16
# Type de réseau à installer : actuellement supporté : flannel, kube-router, calico, weave
kube_network: flannel
# Arguments supplémentaires pour Kubelet
kubelet_extra_args: ''
# Options pour le serveur API de Kube
kube_apiserver_options: []
# Indicateur pour installer HELM
kube_install_helm: true
# Version de Helm
kube_install_helm_version: "v2.11.0"
# Déployer le Dashboard
kube_deploy_dashboard: false
# Valeur à transmettre à l'option kubeadm init --apiserver-advertise-address
kube_api_server: 0.0.0.0
# Un ensemble de dépôts git et de chemins à appliquer dans le cluster. Suivre ce format :
# kube_apply_repos: [{repo: "https://github.com/kubernetes-incubator/metrics-server", version: "master", path: "deploy/1.8+/"}]
kube_apply_repos: []
# Indicateur pour installer le Metrics-Server
kube_install_metrics: false
# Indicateur pour installer le contrôleur d'ingress nginx
kube_install_ingress: false
# Indicateur pour installer l'interface utilisateur kubeapps
kube_install_kubeapps: false
# Version du chart KubeApps à installer (ou la plus récente)
kube_kubeapps_chart_version: "7.3.2"
# Options supplémentaires pour le plugin flannel
kube_flanneld_extra_args: []
# Activer l'installation et la gestion des certificats avec Cert-manager
kube_cert_manager: false
# IP publique à utiliser par le cert-manager (pas nécessaire si kube_public_dns_name est défini)
kube_cert_public_ip: "{{ ansible_default_ipv4.address }}"
# Nom DNS public à utiliser dans le certificat tls du tableau de bord
kube_public_dns_name: ""
# Email à utiliser dans l'émetteur Let's Encrypt
kube_cert_user_email: [email protected]
# Remplacer la version docker par défaut
kube_docker_version: ""
# Options à ajouter dans le fichier docker.json
kube_docker_options: {}
# Installer docker avec pip
kube_install_docker_pip
# Drapeaux de commande à utiliser pour lancer k3s dans le service systemd
kube_k3_exec: ""
# Comment installer K8s : kubeadm ou k3s
kube_install_method: kubeadm
# Serveurs pour installer et configurer ntp. Si [] ntp ne sera pas configuré
kube_ntp_servers: [ntp.upv.es, ntp.uv.es]
Exemple de Playbook
Ceci est un exemple de comment installer ce rôle sur le nœud frontal :
- hosts: server
roles:
- { role: 'grycap.kubernetes', kube_apiserver_options: [{option: "--insecure-port", value: "8080"}] }
Et sur les WNs :
- hosts: wn
roles:
- { role: 'grycap.kubernetes', kube_type_of_node: 'wn', kube_server: '10.0.0.1' }
Contribuer au rôle
Afin de garder le code propre, l'envoi de modifications à la branche principale a été désactivé. Si vous voulez contribuer, vous devez créer une branche, télécharger vos modifications puis créer une demande de tirage. Merci
Installer
ansible-galaxy install grycap.kubernetes
Licence
apache-2.0
Téléchargements
14.4k
Propriétaire
Grid y Computación de Altas Prestaciones