{"id":21459673,"url":"https://github.com/ambrisolla/ansible-deploy-kubernetes-cluster","last_synced_at":"2026-05-21T04:06:58.479Z","repository":{"id":161564616,"uuid":"635991406","full_name":"ambrisolla/ansible-deploy-kubernetes-cluster","owner":"ambrisolla","description":"Deploy a Kubernetes cluster with Ansible","archived":false,"fork":false,"pushed_at":"2024-09-27T19:37:19.000Z","size":24909,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-23T14:14:54.470Z","etag":null,"topics":["ansible","argocd","cert-manager","k8s","kubernetes","kyverno"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ambrisolla.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-05-03T22:39:16.000Z","updated_at":"2024-09-27T19:37:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"25bd91f0-bdfa-492e-be98-6f1e308a8398","html_url":"https://github.com/ambrisolla/ansible-deploy-kubernetes-cluster","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ambrisolla%2Fansible-deploy-kubernetes-cluster","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ambrisolla%2Fansible-deploy-kubernetes-cluster/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ambrisolla%2Fansible-deploy-kubernetes-cluster/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ambrisolla%2Fansible-deploy-kubernetes-cluster/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ambrisolla","download_url":"https://codeload.github.com/ambrisolla/ansible-deploy-kubernetes-cluster/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243971604,"owners_count":20376857,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","argocd","cert-manager","k8s","kubernetes","kyverno"],"created_at":"2024-11-23T06:30:46.467Z","updated_at":"2026-05-21T04:06:53.445Z","avatar_url":"https://github.com/ambrisolla.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# ansible-deploy-kubernetes-cluster\n\nThis repository is used to deploy a Kubernetes cluster using Ansible.\n\n## Features\n - Install and configure all prerequisites to configure Control Plane, Etcd and worker nodes;\n - Deploy multi-master cluster in \u003ca href='https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/' target='_blank'\u003estacked etc\u003c/a\u003e mode;\n - Join worker nodes on Cluster;\n - Enable plugins on deploy: ArgoCD, Kyverno, cert-manager, kong;\n\n## OS support\nThis playbook works on:\n  - OL9;\n  - RHEL 9\n  - Rocky Linux 9;\n\n## Configurations\n\n### Inventory\n\nEdit ```inventory/inventory.ini``` and change with your own configuration.\n\n```ini\n[nodes]\nnode-01 ansible_host=192.168.0.211\nnode-02 ansible_host=192.168.0.212\nnode-03 ansible_host=192.168.0.213\nnode-04 ansible_host=192.168.0.214\n\n[control_plane]\nnode-01 ansible_host=192.168.0.211\nnode-02 ansible_host=192.168.0.211\n\n[workers]\nnode-03 ansible_host=192.168.0.213\nnode-04 ansible_host=192.168.0.214\n```\n\n### Variables\n\nEdit ```defaults/main.yml``` and change with your own configuration.\n```yaml\n# set username ( access needs to be done by ssh-key and needs to be )\nusername: cloud-user\n\n# set kubernetes version\nkubernetes_version: 1.29\n\n# set containerd version\ncontainerd_version: 1.7.15\n\n# set cni plugins version\ncni_plugins_version: 1.4.1\n\n# kubeadm configurations\ncontrol_plane_endpoint: 192.168.0.91\ncontrol_plane_endpoint_port: 6443\n\n# network plugin\nnetwork_plugin_url: https://raw.githubusercontent.com/projectcalico/calico/v3.27.3/manifests/calico.yaml\n\n# Set etcd topology \n# https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/\nexternal_etcd: false\n\n# add cluster features\nfeature:\n  - namespace: argocd\n    name: argocd\n    type: manifest\n    url: https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml\n    enabled: true\n  - namespace: kong\n    name: kong\n    type: helm\n    repo: https://charts.konghq.com\n    chart_ref: kong/kong\n    enabled: true\n  - namespace: kyverno\n    name: kyverno\n    type: helm\n    repo: https://kyverno.github.io/kyverno/\n    chart_ref: kyverno/kyverno\n    enabled: true\n  - namespace: cert-manager-crd\n    name: cert-manager-crd\n    type: manifest\n    url:  https://github.com/cert-manager/cert-manager/releases/download/v1.14.4/cert-manager.crds.yaml\n    enabled: true\n  - namespace: cert-manager\n    name: cert-manager\n    type: helm\n    repo: https://charts.jetstack.io\n    chart_ref: cert-manager/cert-manager\n    enabled: true\n\n```\n\n### How to use\n```bash\n$ ansible-playbook main.yaml -i inventories/inventory.ini # be happy =)\n```\n\n### License\nGNU General Public License v3.0 or later\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fambrisolla%2Fansible-deploy-kubernetes-cluster","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fambrisolla%2Fansible-deploy-kubernetes-cluster","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fambrisolla%2Fansible-deploy-kubernetes-cluster/lists"}