All Projects → pascaliske → infrastructure

pascaliske / infrastructure

Licence: MIT license
Flux based GitOps repository for my home lab infrastructure.

Programming Languages

YAML
28 projects
ruby
36898 projects - #4 most used programming language
HCL
1544 projects
shell
77523 projects
Jinja
831 projects

Projects that are alternatives of or similar to infrastructure

docker-traefik-gitlab
No description or website provided.
Stars: ✭ 26 (+85.71%)
Mutual labels:  gitlab, traefik
dockerized
🐳 Build once, run anywhere
Stars: ✭ 70 (+400%)
Mutual labels:  grafana, traefik
blogr-pve
Puppet provisioning of HA failover/cluster environment implemented in Proxmox Virtual Environment and Linux boxes.
Stars: ✭ 28 (+100%)
Mutual labels:  grafana, traefik
S1EM
This project is a SIEM with SIRP and Threat Intel, all in one.
Stars: ✭ 270 (+1828.57%)
Mutual labels:  traefik, homer
Ansible Playbooks
Ansible playbook collection that have been written for Ubuntu. Some of the playbooks are Elasticsearch, Mesos, AWS, MySql, Sensu, Nginx etc..
Stars: ✭ 429 (+2964.29%)
Mutual labels:  gitlab, grafana
ubnt-cloudflared
Install Cloudflare's DNS proxy on UBNT gateways
Stars: ✭ 22 (+57.14%)
Mutual labels:  unifi, cloudflared
jarvis
🍿 Simple Home Media Stack
Stars: ✭ 28 (+100%)
Mutual labels:  grafana, homer
traefik-proxy
One-step (secure) configuration for Traefik edge router.
Stars: ✭ 20 (+42.86%)
Mutual labels:  traefik, authelia
centos-script
🎉centos下工具安装脚本,包含基础环境配置,Gitlab、Docker、LDAP、MongoDB、MySQL、RabbitMQ、Supervisor、Node、Python、zsh、rar、zabbix、k8s、prometheus、grafana等🎉
Stars: ✭ 121 (+764.29%)
Mutual labels:  gitlab, grafana
go-zero-looklook
🔥基于go-zero(go zero) 微服务全技术栈开发最佳实践项目。Develop best practice projects based on the full technology stack of go zero (go zero) microservices.
Stars: ✭ 2,691 (+19121.43%)
Mutual labels:  gitlab, grafana
template-cluster-k3s
My highly opinionated template for deploying a single Kubernetes (k3s) cluster with Ansible and Terraform backed by Flux, SOPS, GitHub Actions, Renovate and more!
Stars: ✭ 861 (+6050%)
Mutual labels:  traefik, k3s
Kubernetes Gitlab
Manifests to deploy GitLab on Kubernetes
Stars: ✭ 160 (+1042.86%)
Mutual labels:  infrastructure, gitlab
k3s-gitops
GitOps principles to define kubernetes cluster state via code
Stars: ✭ 103 (+635.71%)
Mutual labels:  grafana, k3s
Swarmprom
Docker Swarm instrumentation with Prometheus, Grafana, cAdvisor, Node Exporter and Alert Manager
Stars: ✭ 1,739 (+12321.43%)
Mutual labels:  grafana, traefik
mypaas
MyPaas is an Ansible playbook for startups or small companies which want to build a modern and fully automated infrastructure.
Stars: ✭ 24 (+71.43%)
Mutual labels:  infrastructure, gitlab
ceil
Helmut Hoffer von Ankershoffen experimenting with auto-provisioned RPi cluster running K8S on bare-metal
Stars: ✭ 42 (+200%)
Mutual labels:  grafana, traefik
grafana-dynamictext-panel
A dynamic, data-driven text for @grafana.
Stars: ✭ 42 (+200%)
Mutual labels:  grafana
podman-gitlab-runner
Use Podman as a custom executor for your Gitlab CI
Stars: ✭ 87 (+521.43%)
Mutual labels:  gitlab
django-angular2-fullstack-devops
All-in-one django/angular2 seed with cli interface for multi-environment devops on aws using ansible/packer/terraform
Stars: ✭ 54 (+285.71%)
Mutual labels:  infrastructure
aws-o11y-recipes
recipes for observability solutions at AWS
Stars: ✭ 110 (+685.71%)
Mutual labels:  grafana

Infrastructure

Flux based GitOps repository for my home lab infrastructure.

Branch checks Pipeline (linting) Pipeline (docs) GitHub commit activity GitHub Last Commit GitHub top language GitHub repo size License: MIT

Kubernetes Terraform Ansible

Requirements

  • Task to execute all required commands
  • Node.js + Yarn (for local repository management only)
  • Ansible to provision the cluster nodes with common settings, Tailscale and K3s
  • Terraform to deploy all external DNS records
  • Flux which manages and updates the cluster state

Installation

The cluster can be set up using the following commands:

# clone the repo to your local machine
$ git clone https://github.com/pascaliske/infrastructure

# install needed dependencies
$ task install

# setup ansible vault file (one-time)
$ task vault:setup

# provision nodes using ansible (1)
$ task cluster:provision

# bootstrap flux cluster
$ task cluster:bootstrap -- \
    --owner=$GITHUB_USER \ # required flag (2)
    --repository=$GITHUB_REPO \ # required flag (3)
    --branch=master
  1. More information on the following command can be found in the provisioning section.
  2. Ensure you either fill in your GitHub username or you make it available as an environment variable.
  3. Name of the repository to hold the declarative cluster state. If it does not exists yet, it will automatically be created by Flux.

Updates

Most updates inside this project are automated. Take a look at the update section for detailed information on this topic.

Thanks

A big thank you goes to these awesome people and their projects who inspired me to do this project:

Also I want to thank you the awesome k8s-at-home community for all their work on their Helm Charts which helped me a lot.

License

MIT – © 2023 Pascal Iske

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].