Code Monkey home page Code Monkey logo

haxx-pihole's Introduction

Haxx PiHole

Slides and documentation on how I overengineered my PiHole at home.

Draft

What is Pi-hole x What is DNS

2 minutes

Introduction in Pi-hole, what it is, what it does, what it doesn't do.

Installing Pi-hole

30 seconds

Installing Pi-hole on a Raspberry Pi.

Moving to containers

1 minute

Why I moved to containers. I wanted to do some monitoring, these processes had a different set of dependencies, so moved to containers to guarantee isolation.

Configuration using Ansible

1 minute

The SD card had a lot of issues, and reconfuring the Pi-hole was a pain. I decided to use Ansible to automate the process.

Prometheus and Grafana

2 minutes

Small introduction on Prometheus and Grafana and how I use dashboards.

Introducing an Ingress and Kubernetes

3 minutes

Remembering ports is hard, I also wanted SSL on everything. So I introduced Traefik. This collection of services made me realize that everything was becoming rather complex to manage in Ansible, because of the push-based nature. I wanted to define everything in git. One solution to achieve this is Kubernetes with a GitOps approach.

Include quote of Kelsey Hightower on not using Kubernetes

Alerts

2 minutes

Things go down all the time, so I introduced Uptime Kuma with Gotify to send me an alert when DNS no longer resolves.

Automatic Updates

30 seconds

I introduced Diun to monitor current images in the cluster and if they have updates available. Whenever an update is available, I make 1 commit and Argo makes sure all the relevant containers are updated.

Better monitoring

3 minutes

I wanted better visibility on what this container is doing. Which connections come in and which requests are going out.

What is eBPF

1 minute

What is eBPF and why does it matter

Cilium and Hubble

2 minutes

How I use Cilium and Hubble to get better visibility on what is happening in the cluster.

Security

2 minutes

How I leveraged eBPF to monitor what all containers are doing and how I use Falco to detect malicious activity.

Ad blocking on the go

2 minutes

I wanted to use Pi-hole on the go, so I introduced WireGuard to connect to my home network and use Pi-hole on the go. But I didn't want to expose ports on my router, so here's a sprinkle of AWS

haxx-pihole's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.