Commit Graph

43 Commits

Author SHA1 Message Date
phaer
a02ccdfb9f improve support of single-node clusters 2022-03-03 13:32:57 +01:00
Karim Naufal
9abc102601 small tweak 2022-02-28 00:07:31 +01:00
Karim Naufal
4fe79625b1 added dynamic rule and var extra_firewall_rules 2022-02-27 23:15:46 +01:00
phaer
38fc145ad0 ip -> ipv4...
...explictly label current ip values as ipv4, in order to more
easily add ipv6 support later on.
2022-02-26 12:26:14 +01:00
jodhi
38f6ef83ce fix missing reference 2022-02-26 02:36:20 +07:00
jodhi
ec42a2b519 merge from upstream 2022-02-26 01:18:34 +07:00
jodhi
c9101824fc add specific subnet for nodepool 2022-02-26 01:16:38 +07:00
Karim Naufal
46dd37383c network fix attempt 2022-02-25 15:30:39 +01:00
Karim Naufal
115163b8be traefik deletes successfully 2022-02-25 00:21:28 +01:00
Karim Naufal
6739b4a493 added null ressouce to destroy lb 2022-02-24 01:44:56 +01:00
Marco Nenciarini
0c3aa36c03
First control plane node is not special anymore
The first control plane node is now identical to any other server
node. The cluster initialization happens once in two steps: first,
make sure that the k3s cluster is initialized and then apply our
configurations while the other nodes join. This change makes the
initialization more resilient and even faster than before.
2022-02-22 13:36:25 +01:00
Karim Naufal
efad2fa870 removed the cluster provisioning null ressource as not needed 2022-02-22 01:38:53 +01:00
Karim Naufal
9380b70bbe tweak to cluster provisioning null ressource, destroy, and moved lb waiting to master.tf 2022-02-22 00:58:08 +01:00
phaer
133ca38d22 terraform fmt 2022-02-21 17:54:39 +01:00
phaer
4ee2156a95 wait for load-balancer in null-resource...
...because we can only do that whenever the cluster is operational,
which it isn't with just one node.
2022-02-21 16:59:19 +01:00
phaer
63008004f7 wait for load-balancer ip, expose it via terraform 2022-02-21 16:59:19 +01:00
Karim Naufal
edfbd5a15d temporily removed the lb output 2022-02-17 15:50:45 +01:00
Karim Naufal
9c3e3034f7 waiting for the lb on agent[0] 2022-02-15 23:00:27 +01:00
phaer
8c40b53d14 terraform fmt 2022-02-14 11:24:30 +01:00
phaer
41563fb938 load balancer ip depends on deployed CCM...
...so a finished first control plane, more or less
2022-02-14 11:14:14 +01:00
phaer
1c9ff2121c Expose load balancer ip in outputs 2022-02-14 00:24:08 +01:00
phaer
9dc4952665 Expose kubeconfig in outputs...
* To do so, we need to ensure that the generated kubeconfig is part of
  terraforms dependency graph. This has the additional benefit of not
  depending on local files anymore which should enable multi-user
  setups.

* This also means that we can't deploy CCM, CSI & Traefik from our local
  host, because we don't have kubeconfig.yaml locally while provisioning
  the control plane, only afterwards.

* So we just run kubectl apply on the control plane itself, after k3s is
  ready.

* To do so, we need to deploy all manifests. I've merged the patches
  into a single kustomization.yaml file, because that makes the
  deployment of those files to the control-plane server easier.

* we could also put the traefik config into the same kustomization file,
  which would save us one of the file provisioner blocks. I didn't want
  this PR to get any bigger, and will consider merging this config later
  on. kustomization.yaml is small enough that we could yamlencode() for
  it and store the patches in separate files again, not as
  inline-strings which is kind of ugly.
2022-02-11 12:45:03 +01:00
Karim Naufal
cd6b5e2768 pre master 2022-02-10 03:01:40 +01:00
Karim Naufal
919e1087f8 added kured and fixed initial ignition disk partitioning 2022-02-07 09:36:21 +01:00
Karim Naufal
fba212de47 added kured and fixed initial ignition disk partitioning 2022-02-07 08:46:10 +01:00
Karim Naufal
3f0f0ca705 microOS prep 2022-02-05 00:02:25 +01:00
Olivier Wenger
285e115475 added letsencrypt configuration for traefik 2022-02-03 09:29:56 +01:00
Waël Ammar
9b7375e424 Add Hetzner placement group and link servers to it 2022-02-03 09:29:56 +01:00
Tim Heckel
c72e212f2b
Use a variable for network_region
..instead of hardcoding it to `eu-central`
2022-01-29 13:21:30 -06:00
phaer
b0838c8a01 ingress: don't use private ip, make ipv6 optional 2022-01-25 15:05:29 +01:00
Karim Naufal
13c97069b5 added possibility to use latest containers for CCM and CSI 2022-01-15 09:14:25 +01:00
Karim Naufal
cd9bcd9710 added possibility to use latest containers for CCM and CSI 2022-01-15 09:04:21 +01:00
Dennis Hoppe
05332e7ae3
Make version of CCM / CSI configurable 2022-01-13 14:28:00 +01:00
Dennis Hoppe
453bdb0be5
Reorganize structure of Terraform manifests 2022-01-13 10:02:45 +01:00
Karim Naufal
6944546cfa Tweaked Readme 2022-01-06 07:16:18 +01:00
Karim Naufal
76a1e00805 added traefik 2022-01-05 15:04:22 +01:00
Karim Naufal
d66598320d fixed comment 2021-12-10 00:48:45 +01:00
Karim Naufal
8113016f86 k3os ok 2021-12-03 02:11:52 +01:00
Karim Naufal
61f8093951 k3os master ok 2021-11-30 23:09:34 +01:00
Karim Naufal
f308220bfe before move to k3os 2021-11-10 06:28:52 +01:00
Karim Naufal
d25acf5439 Fixed a potential bug coming from hardcoded interface names, now it should detect it automatically 2021-09-25 15:12:37 +02:00
Karim Naufal
ca2bf4dc82 Added Hetzner firewall and fixed addresses 2021-09-01 00:37:11 +02:00
Karim Naufal
f615c994af initial commit 2021-07-30 10:12:37 +02:00