k8s-hard-way-ansible
🐄 Provisioning of Kubernetes the hard way with Ansible
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.4%) to scientific vocabulary
Repository
🐄 Provisioning of Kubernetes the hard way with Ansible
Basic Info
Statistics
- Stars: 0
- Watchers: 6
- Forks: 0
- Open Issues: 1
- Releases: 1
Metadata Files
README.md
Provisioning of Kubernetes the hard way with Ansible
Description
This educational project is a comprehensive toolkit designed to automate and simplify the process of provisioning a Kubernetes cluster "the hard way". It combines the use of Vagrant, Ansible, and Taskfile to create a streamlined workflow for setting up and managing Kubernetes clusters.
The project includes a Vagrantfile for setting up the necessary virtual machines, a directory full of Ansible playbooks and tasks for installing and managing Kubernetes, and a Taskfile for orchestrating these processes. The Ansible playbooks are based on the Kubernetes setup guides by Kelsey Hightower and Mumshad Mannambeth, but have been adapted and expanded upon for this project.
This toolkit is particularly useful for developers or system administrators who are learning about Kubernetes and want a hands-on approach, or who frequently need to set up Kubernetes clusters for testing or deployment purposes.
Credits
This project is based on these two repositories:
But for a better understanding of the material, I decided to redo everything in my own way.
Prerequisites
Tools
Working with Taskfile
```bash
List all tasks
task --list
Describe a task
task --summary
All tasks have a short description of what they do.
And long summaries are available with the --summary flag.
Working with uv
```bash
Install all python dependencies
task install
To run the playbook you can use the following command
task play -- ansible/connection.yml
It's using venv inside the script, so you don't need to activate it
To run another ansible command you need to activate the venv and run the command
source .venv/bin/activate
For example
ansible-inventory --list all | bat -l json ```
Owner
- Name: DevOps Geeks UA
- Login: GeekOpsUA
- Kind: organization
- Location: Ukraine
- Website: https://t.me/GeekOpsUA
- Repositories: 1
- Profile: https://github.com/GeekOpsUA
Ukrainian DevOps Geeks Community
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: 'k8s the hard way with ansible '
message: 'Provisioning of Kubernetes the hard way with Ansible '
type: software
authors:
- given-names: Sergij
family-names: Boremchuk
email: searge@duck.com
repository-code: 'https://github.com/Searge/k8s-hard-way-ansible'
repository: 'https://github.com/mmumshad/kubernetes-the-hard-way'
abstract: >-
This repository contains an Ansible playbook to provision
a Kubernetes cluster the hard way.
The hard way is a manual way to provision a Kubernetes
cluster, as described by Kelsey Hightower in his
repository.
keywords:
- ansible
- kubernetes
- debian
- vagrant
license: BSD-3-Clause
commit: 6e2e71f
version: v0.1.0
date-released: '2024-03-03'
GitHub Events
Total
- Delete event: 45
- Issue comment event: 137
- Push event: 123
- Pull request review event: 1
- Pull request event: 93
- Fork event: 1
- Create event: 50
Last Year
- Delete event: 45
- Issue comment event: 137
- Push event: 123
- Pull request review event: 1
- Pull request event: 93
- Fork event: 1
- Create event: 50
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 0
- Total pull requests: 19
- Average time to close issues: N/A
- Average time to close pull requests: 3 days
- Total issue authors: 0
- Total pull request authors: 2
- Average comments per issue: 0
- Average comments per pull request: 0.84
- Merged pull requests: 16
- Bot issues: 0
- Bot pull requests: 17
Past Year
- Issues: 0
- Pull requests: 19
- Average time to close issues: N/A
- Average time to close pull requests: 3 days
- Issue authors: 0
- Pull request authors: 2
- Average comments per issue: 0
- Average comments per pull request: 0.84
- Merged pull requests: 16
- Bot issues: 0
- Bot pull requests: 17
Top Authors
Issue Authors
- dependabot[bot] (1)
Pull Request Authors
- dependabot[bot] (122)
- Searge (19)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v4 composite
- nosborn/github-action-markdown-cli v3.3.0 composite
- ansible 9.3.0
- ansible-compat 4.1.11
- ansible-core 2.16.4
- ansible-lint 6.22.2
- attrs 23.2.0
- black 23.12.1
- bracex 2.4
- cffi 1.16.0
- cfgv 3.4.0
- click 8.1.7
- colorama 0.4.6
- cryptography 41.0.7
- distlib 0.3.8
- filelock 3.13.1
- identify 2.5.35
- jinja2 3.1.3
- jsonschema 4.21.1
- jsonschema-specifications 2023.12.1
- markdown-it-py 3.0.0
- markupsafe 2.1.5
- mdurl 0.1.2
- mypy-extensions 1.0.0
- nodeenv 1.8.0
- packaging 23.2
- passlib 1.7.4
- pathspec 0.12.1
- platformdirs 4.2.0
- pre-commit 3.6.2
- pycparser 2.21
- pygments 2.17.2
- pyyaml 6.0.1
- referencing 0.33.0
- resolvelib 1.0.1
- rich 13.7.1
- rpds-py 0.18.0
- ruamel-yaml 0.18.6
- ruamel-yaml-clib 0.2.8
- setuptools 69.1.1
- subprocess-tee 0.4.1
- virtualenv 20.25.1
- wcmatch 8.5.1
- yamllint 1.35.1
- ansible-lint ^6.17.0 develop
- black ^23.7.0 develop
- pre-commit ^3.3.3 develop
- yamllint ^1.32.0 develop
- ansible *
- ansible-core ^2.15
- cryptography ^41.0
- passlib ^1.7.4
- python ^3.11