Commit Graph

10 Commits

Author SHA1 Message Date
0eaa5d3b08 Add current IP automatically to whitelists for SSH and Kubernetes
After I removed the automatic IP addition to the firewalls for SSH and
Kubernetes I ran into a problem only a few days later. My ISP changed
my IPs and I was to stupid to realize that immediately. So, this change
reintroduces the automatic addition of my current IPs to the whitelists
for Kubernetes and SSH. Though, I adjusted the algorithm, so it will not
change every day or so, but instead really only when my ISP changes my
IPs.
2025-11-28 00:28:25 +01:00
adfa2674c6 Migrate state to base-infra/terraform.tfstate in b2-bucket
I renamed the project from "hetzner-infra" to "base-infra", since that
better fits the purpose of this repository. So, this change migrates the
state name accordingly, to avoid confusion.
2025-11-28 00:28:25 +01:00
cb97668b63 Define IPs which have access to the kubernetes-API and SSH as variables
I liked the idea to have these IPs dynamically detected at runtime,
though some research showed that my current provider only renews these
every 180 days, nowadays. So, no need for such a hyper-dynamic solution.
Instead I use a variable now, which brings some other benefits, like
adding arbitrary IPs as well. This might become handy in cases of CI/CD.
2025-11-28 00:28:25 +01:00
9d32790c99 Move terraform-state to b2
The terraform-state can be stored in backblaze b2 with some
configurations. This changes does exactly this. Note, that this requires
the special env-variables `AWS_SECRET_ACCESS_KEY` and
`AWS_ACCESS_KEY_ID` which are normally part of the AWS-setup. To be able
to use AWS and this setup in parallel I use dotenv to maintain the
variables in the special file `.envrc`.

Reference: https://andrzejgor.ski/posts/backblaze_b2_tf_state
Reference: https://www.reddit.com/r/selfhosted/comments/1iv1qir
Reference: https://direnv.net/
2025-11-28 00:28:25 +01:00
7297892e18 Merge infra and k3 into one directory again
Since I don't have multiple terraform steps anymore it simply doesn't
make sense to me anymore to split all tasks into separate folders.
Instead I try to be as clear as possible in the README to make it easy
to follow the structure in the future without too much headache.
2025-11-28 00:24:18 +01:00
d96523a071 Move infra-setup and k3s-setup into dedicated directories
This changes makes it easier to differentiate and understand the
different parts of the kubernetes setup. On one hand we have the bare
infrastructure (servers, network, etc), on the other hand we have the
software (k3s in this case).

In the future we'll have a few more parts, like the minimal
configuration of the kubernetes cluster, e.g. with a cert-manager. This
is easier to manage with helm or terraform than with ansible. Therefore
it makes even more sense to split the responsibilities into dedicated
directories.
2025-09-15 14:47:19 +02:00
1eb2ce341a Define a basic but working complete k3s-kubernetes setup 2025-03-10 01:44:56 +01:00
2d93766c09 Add ssh-keys to hetzner-cloud 2025-03-08 21:37:15 +01:00
f37c92c439 Reduce number of terraform-file to the "normal" set of files and simplify dns-definition 2025-03-08 21:36:43 +01:00
3a09b0f44e Define all my DNS-records in the hetzner-cloud 2025-01-12 15:15:10 +01:00