grycap.kubernetes
Kubernetes Role
This Ansible role sets up a Kubernetes cluster.
This project is partially funded by the EOSC-hub project under Grant number 777536.
Role Variables
Here are the variables you can set for this role, along with a brief description:
- kube_version: Specify the version to install or set to 'latest' (e.g., 1.24 or higher). Default is 1.24.17.
- kube_type_of_node: Type of node, either 'front' or 'wn' (worker node).
- kube_server: IP address or hostname of the Kube front node.
- kube_token: Security Token. Format: "kube01.
". - kube_token_ttl: Token Time-To-Live duration (0 means it does not expire).
- kube_pod_network_cidr: CIDR for the POD network (default is 10.244.0.0/16).
- kube_network: Type of network to install (options: flannel, kube-router, calico, weave).
- kubelet_extra_args: Additional arguments for Kubelet.
- kube_apiserver_options: Options for the Kube API server.
- kube_install_helm: Set to 'true' to install HELM.
- kube_install_helm_version: Version of HELM to install (default is "v2.11.0").
- kube_deploy_dashboard: Set to 'true' to deploy the Dashboard.
- kube_api_server: Address for the kubeadm init --apiserver-advertise-address option.
- kube_apply_repos: List of Git repositories and paths to apply in the cluster.
- kube_install_metrics: Set to 'true' to install Metrics Server.
- kube_install_ingress: Set to 'true' to install nginx ingress controller.
- kube_install_kubeapps: Set to 'true' to install KubeApps UI.
- kube_kubeapps_chart_version: Version of KubeApps chart to install (default is "7.3.2").
- kube_flanneld_extra_args: Extra arguments for the flannel plugin.
- kube_cert_manager: Set to 'true' to install and manage certificates with Cert-manager.
- kube_cert_public_ip: Public IP for the cert-manager (if kube_public_dns_name is not set).
- kube_public_dns_name: Public DNS name for the Dashboard TLS certificate.
- kube_cert_user_email: Email for Let's Encrypt issuer.
- kube_docker_version: Override for the default Docker version.
- kube_docker_options: Additional options for the docker.json file.
- kube_install_docker_pip: Flag to install Docker with pip.
- kube_k3_exec: Command flags for launching k3s in the systemd service.
- kube_install_method: Choose installation method for K8s: kubeadm or k3s.
- kube_ntp_servers: List of NTP servers to configure. Leave empty ([]) to skip NTP configuration.
Example Playbook
Here's an example of how to use this role to set up the front-end node:
- hosts: server
roles:
- { role: 'grycap.kubernetes', kube_apiserver_options: [{option: "--insecure-port", value: "8080"}] }
And for the worker nodes:
- hosts: wn
roles:
- { role: 'grycap.kubernetes', kube_type_of_node: 'wn', kube_server: '10.0.0.1' }
Contributing to the Role
To keep the code organized, direct changes to the master branch are not allowed. If you want to contribute, create a new branch, make your changes, and then submit a pull request. Thank you!
Installa
ansible-galaxy install grycap.kubernetes
Licenza
apache-2.0
Download
14.4k
Proprietario
Grid y Computación de Altas Prestaciones