Commit Graph

38 Commits

Author SHA1 Message Date
Mauro Morales
0d18f69c1c HA working with k0s too
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2025-03-26 15:19:22 +01:00
Mauro Morales
b2a3963a5e Move common
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2025-03-26 15:19:22 +01:00
Mauro Morales
1a74cddf69 Fix bug with HA setup
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2025-03-26 15:19:20 +01:00
Mauro Morales
3284d24ae2 Schedule
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2025-03-26 15:18:51 +01:00
Mauro Morales
adc755a455 Rename master to control plane
This follows kubernetes components terminology [1]

[1]: https://kubernetes.io/docs/concepts/overview/components/

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2025-03-26 15:18:50 +01:00
Mauro Morales
26d9f1e4c6 Fixes issue detecting cluster init (#703) 2025-03-21 08:57:29 +01:00
Mauro Morales
c5c4badc1d Extend p2p functionality to k0s (#691)
Adds support for mesh network with k0s distro. The detection of the
distro is done by either having explicit config or by the binary
installed. By default, it uses k3s, for backwards compatibility.

Additionally, I refactored to split responsibilities. `master.go` will
have generic logic on how the steps to setup a master node, and
`worker.go` a worker node. It does so by interacting with the `K8sNode`
interface, and the detailed logic on how to do it for each distribution
has been moved to `k3s.go` and `k0s.go` respectively. This should make
it much simpler to debug or add new distributions.

Tests:

- [x] k3s single
- [x] k3s multi manual
- [x] k3s p2p auto
- [x] k0s single
- [x] k0s multi manual
- [x] k0s p2p auto

Covered:

- https://kairos.io/docs/examples/multi-node-p2p/
- https://kairos.io/docs/examples/multi-node/
- https://kairos.io/docs/examples/single-node/

---------

Signed-off-by: Mauro Morales <contact@mauromorales.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2025-03-12 11:33:37 +01:00
Ettore Di Giacinto
ee17f04079 feat(embedded registry): allow to enable embedded registry (#675)
This is a simple way to enable Spegel with k3s by following
https://docs.k3s.io/installation/registry-mirror?_highlight=spegel .

Part of https://github.com/kairos-io/kairos/issues/3100

Signed-off-by: mudler <mudler@localai.io>
2025-01-09 15:43:02 +01:00
tyzbit
40e8666450 feat(kubevip): static pod support (#520)
Closes https://github.com/kairos-io/kairos/issues/1993

To use:

```
kubevip:
  static_pod: true
```

I'm still getting my build environment set up so unfortunately I can't
test this functionality myself but the change should be straightforward.
Please review with this in mind, I definitely could have missed
something.

Signed-off-by: Tyler Hawkins <3319104+tyzbit@users.noreply.github.com>
2024-01-24 09:35:24 +01:00
Ettore Di Giacinto
f71257ec74 fix: better error messages (#477)
related to: https://github.com/kairos-io/kairos/issues/1797

Signed-off-by: mudler <mudler@localai.io>
2023-12-12 12:51:29 +02:00
Dimitris Karakasilis
43e7222cbc Cleanup (#487)
Remove left-overs from when we used this repo to release "standard"
images.

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-10-27 12:32:00 +03:00
Itxaka
3b1a697180 Drop elemental calls (#478)
No longer used, move to kairos-agent

Also drop sha iso calculation as its done by the iso builder
automatically

Fixes https://github.com/kairos-io/kairos/issues/1798

Signed-off-by: Itxaka <itxaka@kairos.io>
2023-09-08 14:40:11 +02:00
Mauro Morales
9fa3d9f799 Bump kairos version (#446)
Tests are green and did a manual QA and it's working properly. I do have
two questions which I put as comments

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-07-10 18:10:33 +02:00
Mateusz Urbanek
72c01e2657 fix: bump go.mod path to v2 (#431)
The path in `go.mod` should be ended in `/v2` suffix, as per [go.mod
module version numbers](https://go.dev/doc/modules/version-numbers).

---------

Signed-off-by: Mateusz Urbanek <mateusz.urbanek.98@gmail.com>
2023-07-03 21:07:41 +02:00
Itxaka
f7d5d81013 ⬆️ Bump deps to use kairos-sdk (#299)
First time bumping the provider, be gentle

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

---------

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-31 14:31:54 +02:00
Oz Tiram
70903fdec8 🌱 add version information directly from git (#175)
Partial fix for https://github.com/kairos-io/kairos/issues/643

Signed-off-by: Oz Tiram <oz@spectrocloud.com>
2023-01-17 10:19:43 +01:00
Ettore Di Giacinto
4857ff8879 🌱 Change config to be more user friendly
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-12 15:38:21 +01:00
Ettore Di Giacinto
23abe1c0e2 🌱 Please linting
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-12 12:31:03 +01:00
Ettore Di Giacinto
19d541774b 🌱 Leader now prunes inactive members
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-12 11:49:38 +01:00
Ettore Di Giacinto
87d7fc2131 🌱 Run hook during bootstrap
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-11 18:12:51 +01:00
Ettore Di Giacinto
79fd3633a5 ⚠️ Change P2P configuration setting reference
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-09 16:36:30 +01:00
Ettore Di Giacinto
15a9d15a0c 🌱 HA block belongs to Kairos, not k3s
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-09 09:59:22 +01:00
Ettore Di Giacinto
301b69cfa5 🌱 Refactor
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-07 14:49:07 +01:00
Ettore Di Giacinto
b03741c4c5 🌱 Fix linting
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-07 14:37:38 +01:00
Ettore Di Giacinto
4703feefd8 🌱 Propagate back roles
If we keep the API started, we want to keep streaming roles in case of completely disconnection between the nodes.
This guarantees that we keep streaming out our roles nevertheless of what happens

Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-07 14:32:48 +01:00
Ettore Di Giacinto
007d902369 🌱 Make linter happy pt2
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-07 14:27:10 +01:00
Ettore Di Giacinto
998f665167 🌱 Make linter happy
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-07 14:06:06 +01:00
Ettore Di Giacinto
82514b5cb5 Respect ExternalDB
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-06 22:15:57 +01:00
Ettore Di Giacinto
db3a4bc287 Add HA p2p support
Fixes: https://github.com/kairos-io/kairos/issues/2

Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-06 22:15:12 +01:00
Ettore Di Giacinto
18a0b14a51 🌱 Configure worker
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-05 13:32:08 +01:00
Ettore Di Giacinto
955e8df55e 🌱 Cleanups
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-05 11:53:33 +01:00
Ettore Di Giacinto
c5b11bdc06 🌱 Use static kubevip artifacts
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-05 11:53:33 +01:00
Ettore Di Giacinto
dd9127f7ce 🌱 Allow to set minimum number of node to wait for
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-05 11:53:33 +01:00
mudler
0517b1e766 Add kubeVIP support with p2p hybrid mode
In this way, the p2p API will just run the co-ordination to setup KubeVIP automatically
to the new cluster.

Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-05 11:53:33 +01:00
mudler
c64a19f1d4 🌱 Refactor roles
Signed-off-by: mudler <mudler@c3os.io>
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
2022-12-05 11:53:33 +01:00
Ettore Di Giacinto
4a17cff5e0 🎨 Finalize rebranding
there were few places that still had c3OS references.
2022-09-19 09:59:28 +00:00
Ettore Di Giacinto
359ed271c7 🎨 Rebrand
See: https://github.com/c3os-io/c3os/issues/88
2022-09-16 15:42:45 +00:00
mudler
8b8f28c91a 🎨 Initial import of provider code 2022-08-16 08:27:04 +00:00