{"id":15080919,"url":"https://github.com/francomile/ansible-role-k3s","last_synced_at":"2026-01-21T21:33:29.959Z","repository":{"id":244666525,"uuid":"815704685","full_name":"francomile/ansible-role-k3s","owner":"francomile","description":"Ansible Role K3s","archived":false,"fork":false,"pushed_at":"2024-06-20T23:44:43.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-08T05:45:20.404Z","etag":null,"topics":["ansible-role","k3s","kubernetes","scheduler"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/francomile.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-15T22:26:54.000Z","updated_at":"2024-06-20T23:22:25.000Z","dependencies_parsed_at":"2024-06-16T15:24:31.888Z","dependency_job_id":"81b49c61-ef44-48dc-958d-3327cc02d1e5","html_url":"https://github.com/francomile/ansible-role-k3s","commit_stats":{"total_commits":7,"total_committers":2,"mean_commits":3.5,"dds":0.2857142857142857,"last_synced_commit":"1674e657bac93cd3fb84afb3d6723ac2fd1b2eff"},"previous_names":["francomile/ansible-role-k3s"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/francomile/ansible-role-k3s","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/francomile%2Fansible-role-k3s","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/francomile%2Fansible-role-k3s/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/francomile%2Fansible-role-k3s/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/francomile%2Fansible-role-k3s/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/francomile","download_url":"https://codeload.github.com/francomile/ansible-role-k3s/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/francomile%2Fansible-role-k3s/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28644102,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T21:29:11.980Z","status":"ssl_error","status_checked_at":"2026-01-21T21:24:31.872Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-role","k3s","kubernetes","scheduler"],"created_at":"2024-09-25T05:33:11.103Z","updated_at":"2026-01-21T21:33:29.942Z","avatar_url":"https://github.com/francomile.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ansible K3s Role\n\n[![Lint Ansible roles](https://github.com/francomile/ansible-role-k3s/actions/workflows/ansible_lint.yml/badge.svg)](https://github.com/francomile/ansible-role-k3s/actions/workflows/ansible_lint.yml)\n\n[![Release role to Ansible Galaxy](https://github.com/francomile/ansible-role-k3s/actions/workflows/push_to_galaxy.yml/badge.svg)](https://github.com/francomile/ansible-role-k3s/actions/workflows/push_to_galaxy.yml)\n\n## Actions of the Role\n\n* Install K3s server and agents\n\n## Common Usage\n\n```yaml\nroles:\n  - {\n    role: francomile.k3s,\n    tags: [\"k3s\"]\n    }\n```\n\nExample inventory\n\n```yaml\n---\nall:\n  children:\n    servers:\n      hosts:\n        # First server will be the one used for k3s_url var, and\n        # will be the one agents are going to connect.\n        k3s-server01:\n          ansible_host: \"100.64.64.64\"\n          k3s_node_label_role: \"server\"\n    agents:\n      hosts:\n        k3s-agent01:\n          ansible_host: \"100.64.64.65\"\n          k3s_node_label_role: \"agent\"\n        k3s-agent02:\n          ansible_host: \"100.64.64.66\"\n          k3s_node_label_role: \"agent\"\n  vars:\n    # k3s important vars\n    k3s_version: \"v1.28.4+k3s2\"\n    k3s_token: \"mysecret\"\n    k3s_api_port: 6443\n    k3s_url: \"https://{{ hostvars[groups['servers'][0]]['ansible_host'] }}:{{ k3s_api_port }}\"\n    k3s_server_install_args: \u003e-\n      --node-ip=\"{{ ansible_default_ipv4.address }}\"\n      --node-external-ip=\"{{ ansible_default_ipv4.address }}\"\n      --cluster-cidr=198.18.0.0/16\n      --service-cidr=198.19.0.0/16\n      --cluster-dns=198.19.0.10\n      --node-label server-host=\"{{ k3s_node_label_host }}\"\n      --node-label server-role=\"{{ k3s_node_label_role }}\"\n    k3s_agent_install_args: \u003e-\n      --node-ip=\"{{ ansible_default_ipv4.address }}\"\n      --node-external-ip=\"{{ ansible_default_ipv4.address }}\"\n      --node-label server-host=\"{{ k3s_node_label_host }}\"\n      --node-label server-role=\"{{ k3s_node_label_role }}\"\n    k3s_install_cert_cronjob: false\n    # General vars\n    ansible_ssh_private_key_file: \"~/.ssh/id_rsa\"\n    ansible_ssh_common_args: \"-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no\"\n    ansible_python_interpreter: \"/usr/bin/python3\"\n    ansible_user: \"root\"\n```\n\n## Run the playbook\n\n```shell\n# Install k3s\nansible-playbook -i inventory playbook.yaml --tags \"k3s\"\n# Remove k3s\nansible-playbook -i inventory playbook.yaml -e '{\"k3s_remove_k3s\": true}'\n```\n\n## Dependencies\n\n* Docker\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrancomile%2Fansible-role-k3s","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrancomile%2Fansible-role-k3s","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrancomile%2Fansible-role-k3s/lists"}