Commit Graph

4904 Commits

Author SHA1 Message Date
Noel Georgi
dec653bfe1 chore: better lvm2 tests
Use LVM2 tests that relies on module loading by lvm.

Fixes: #9300

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-10-01 16:08:44 +04:00
Andrey Smirnov
908fd8789c feat: support cgroup deep analysis in talosctl
The new command `talosctl cgroups` fetches cgroups snapshot from the
machine, parses it fully, enhances with additional information (e.g.
resolves pod names), and presents a customizable view of cgroups
configuration (e.g. limits) and current consumption.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-30 18:57:12 +04:00
ekarlso
aa846cc186 feat: add support for CI Network config in nocloud
Fixes #9351

Signed-off-by: ekarlso <endre.karlson@gmail.com>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-30 18:18:09 +04:00
Andrey Smirnov
10f2539f23 chore: disable cloud-images cron workflow
Otherwise it uploads an AMI every night, and eventually we run out of
AMI limit.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-30 16:40:54 +04:00
Andrey Smirnov
b07a8b36b2 chore: ignore more plugins for system containerd
This is to suppress warnings on failure to load plugins, which were
harmless, but confusing.

Fixes #9393

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-30 14:30:59 +04:00
Andrey Smirnov
392c4798f0 feat: prepare for Talos 1.9
Update tools, pkgs, extras.

Brings in Go 1.23.1, Linux 6.6.52, new xfsprogs, etc.

Fork docs.

Add new version contract, etc.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-27 21:23:48 +04:00
adilTepe
ea7bf9fb43 docs: update storage.md
A small typo fix.

Signed-off-by: adilTepe <104206649+adilTepe@users.noreply.github.com>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-26 18:38:02 +04:00
Andrey Smirnov
4ab8dee69a fix: build talosctl without tcell_minimal
We do it for Talos itself to minimize the memory footprint and binary
size for the `dashboard` when part of Talos, while for `talosctl` we
want to have better support of various terminals.

Fixes #9377

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-26 16:03:21 +04:00
Andrey Smirnov
2fa019bd97 docs: enable 'edit on GitHub' link
See attached screenshot.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-25 14:48:54 +04:00
Adolfo Ochagavía
d2ccbc2b15 docs: update hetzner documentation for CCM
Use CCM to set correctly external IPs.

Signed-off-by: Adolfo Ochagavía <github@adolfo.ochagavia.nl>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-25 14:12:42 +04:00
Dan Rue
d498f647cd docs: fix Kernel Self Protection Project (KSPP) references
Update KSPP related URLs and fix acronym typo from "KSSP" to "KSPP".

Signed-off-by: Dan Rue <drue@therub.org>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-24 14:55:34 +04:00
Andrey Smirnov
0ec75463ee docs: make Talos 1.8 current release
Activate 1.8.0.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-23 18:48:06 +04:00
Andrey Smirnov
9b77698cf2 fix: update blockdevice library to v2.0.2
Fixes #9350

Actual fix is https://github.com/siderolabs/go-blockdevice/pull/111

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-23 15:05:12 +04:00
Tim Jones
e46227ab95 docs: fix kubespan name inconsistency
Fix the inconsistent use of KubeSpan in docs and Config suffix for the
yaml config doc kind.

Signed-off-by: Tim Jones <tim.jones@siderolabs.com>
2024-09-21 12:33:47 +01:00
Andrey Smirnov
6b15ca19cd fix: audit and fix cgroup reservations
Fixes: #7081

Review all reservations and limits set, test under stress load (using
both memory and CPU).

The goal: system components (Talos itself) and runtime (kubelet, CRI)
should survive under extreme resource starvation (workloads consuming
all CPU/memory).

Uses #9337 to visualize changes, but doesn't depend on it.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-20 22:22:28 +04:00
Noel Georgi
32b5d01ed3 chore: bump lvm2
Pulls in fixes from https://github.com/siderolabs/pkgs/pull/1034.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-20 22:37:23 +05:30
Jean-Francois Roy
6484581eb8 feat: allow /sbin/ldconfig in extensions
This is specifically for the glibc extension to support nvidia container
toolkit.

Signed-off-by: Jean-Francois Roy <jf@devklog.net>
Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-20 22:07:38 +05:30
Noel Georgi
9fa08e8437 chore: refactor tests
Refactor tests to avoid code duplication.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-20 16:22:01 +05:30
Noel Georgi
d8ab4981b6 feat: support lvm auto activation
Support lvm auto-activation as per
https://man7.org/linux/man-pages/man7/lvmautoactivation.7.html.

This changes from how Talos previously used to unconditionally tried to
activate all volume groups to based on udev events.

Fixes: #9300

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-20 14:42:56 +05:30
Andrey Smirnov
8166a58b36 fix: filter out non-printable characters in process line
Otherwise the output might be distorted by characters like `\n`.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-19 21:19:47 +04:00
Andrey Smirnov
806b6aaf52 docs: add SECURITY.md
Document security vulnerability reporting process.

Minor fixes in other docs, and add OpenSSF badge.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-18 14:47:15 +04:00
Andrey Smirnov
7bd26df308 docs: document /dev/net/tun compatibility
Fixes #9309

Co-authored-by: Jean-François Roy <jf@devklog.net>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-17 15:00:19 +04:00
Andrey Smirnov
18daedb511 fix: strategic merge patch delete for map keys
When a map key is deleted, it should be deleted as a whole.
Before the fix it was zeroing out map value by key.

Fixes #9325

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-16 18:46:00 +04:00
Steven Cassamajor
f3370529ac docs: correct typo
A typo in AWS.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-16 14:38:39 +04:00
Andrey Smirnov
8d6884a8e2 test: add a test for inline machine config trusted roots
Run SideroLink API server via TLS with self-signed certificate, inject
that certificate into Talos via `talos.config.inline=`.

Fix a couple of place where our special TLS root CA provider supporting
reloading on the fly was not used.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-12 21:44:36 +04:00
Andrey Smirnov
d4a6d017db fix: ignore invalid NTP responses
Due to the bug introduced when refactoring for PTP devices, invalid NTP
responses (including for example NTP kiss of death), were incorrectly
handled when only a single NTP server was used.

The error was logged, but the response was used to adjust the time which
leads to unexpected time jumps.

Properly ignore any invalid NTP response.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-12 20:46:44 +04:00
Andrey Smirnov
869f8379f2 feat: update default Kubernetes version to 1.31.1
See https://github.com/kubernetes/kubernetes/releases/tag/v1.31.1

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-12 18:19:56 +04:00
Andrey Smirnov
780a1f198a fix: update CoreDNS health check
The fix in #9233 wasn't correct, as it was looking for number of
replicas in a "random" ReplicaSet. If the deployment has multiple
replica sets, it leads to unexpected results.

Instead, read the Deployment resource directly.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-12 16:10:40 +04:00
Dmitriy Matrenichev
79cd031588 chore: account for resource sorting in dns upstream resource
`List` returns a sorted (by id) list of resources. This doesn't work when the order of dns upstreams is important. Because of that
add an `Idx` field to the "DNSUpstreams.net.talos.dev" resource, so we can preserve order.

Fixes #9274

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2024-09-12 13:14:31 +03:00
Noel Georgi
e17fafaca2 chore: drop activateLogicalVolumes sequencer step
Drop `activateLogicalVolumes` sequencer step.

LVM package already ships proper udev rules to handle this.

```text
❯ tree lvm2/usr/lib/udev/rules.d/
lvm2/usr/lib/udev/rules.d/
├── 10-dm.rules
├── 11-dm-lvm.rules
├── 13-dm-disk.rules
├── 69-dm-lvm.rules
└── 95-dm-notify.rules

1 directory, 5 files
```

Fixes: #9300

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-11 18:37:41 +05:30
Andrey Smirnov
a294b366f2 fix: parse SideroLink API endpoint correctly
In the status controller, there was a wrong method to parse the endpoint
which doesn't account for all supported formats.

Use already parsed version in the config resource instead.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-11 16:18:04 +04:00
Andrey Smirnov
a9269ac7b1 fix: remove extra logging on ethtool ioctl failures
We should ignore this, it's a totally an optional feature used in
containers (Talos on its own kernel has ethtool-netlink).

Fixes #9296

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-11 14:48:51 +04:00
Andrey Smirnov
5c6277d171 feat: update etcd to 3.5.16
See https://github.com/etcd-io/etcd/releases/tag/v3.5.16

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-11 14:14:14 +04:00
Andrey Smirnov
c1ed2984b8 docs: add what's new for Talos 1.8
Also backport from release-1.8 a GHA fix to run promoted pipelines from
a release PR.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-10 17:17:22 +04:00
Dmitriy Matrenichev
899f1b9004 feat: implement "$patch: delete" logic
This PR implements "delete patches", same as in k8s.

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2024-09-09 13:24:23 +03:00
Andrey Smirnov
545f75fd7a feat: acquire machine config inline from kernel cmdline
Fixes #9175

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-06 19:41:47 +04:00
Noel Georgi
361283401e chore: version specific kube-scheduler health checks
Use K8s version specific kube-scheduler health checks.

Ref: https://github.com/siderolabs/go-kubernetes/pull/17

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-06 19:47:47 +05:30
Noel Georgi
d64ce44e46 chore(ci): e2e gcp
Add e2e-gcp.

Also drop other CAPI stuff.

Fixes: #8842

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-06 19:07:20 +05:30
Dmitriy Matrenichev
cd7c682662 chore: disallow duplicate documents on decoder level
Required for #9275

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2024-09-06 15:50:13 +03:00
Andrey Smirnov
bcaf63628b feat: update dependencies
Update to final tools, pkgs, extras.

Bump Go dependencies.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-06 15:51:05 +04:00
Andrey Smirnov
dd4185b144 feat: add KubeSpan extra endpoint configuration
Fixes #9174

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-06 14:50:12 +04:00
Andrey Smirnov
3038ccfa88 feat: add configuration for EPHEMERAL volume
Fixes #9261

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-06 14:11:35 +04:00
Artem Chernyshev
faffa4c3f1 fix: never unarchive initramfs when loading boot assets in talosctl
The initramfs unarchive won't work as it's extension is `xz` while the
actual compression is `zst`.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2024-09-05 20:09:57 +03:00
Andrey Smirnov
07b91797ca fix: report internally service as unhealthy if not running
Otherwise the internal code might assume that the service is still
running and healthy, never issuing a health change event.

Fixes #9271

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-04 22:43:31 +04:00
Andrey Smirnov
bc8bf9e8a8 feat: update Linux 6.6.49
Bring in new pkgs, runc 1.2.0-rc.3.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-04 19:32:51 +04:00
Noel Georgi
7edcbbb833 chore: support gcp in cloud-image-uploader
Add support for uploading images to GCP in cloud image uploader.

GCP is not enabled by default since it's going to be used for e2e-tests
for now.

Signed-off-by: Noel Georgi <git@frezbo.dev>
2024-09-04 15:08:29 +05:30
Spencer Smith
0a870200ef chore: remove matrix links from docs
This PR removes the matrix links since those rooms are no longer in use.

Signed-off-by: Spencer Smith <spencer.smith@talos-systems.com>
2024-09-03 13:54:17 -04:00
Andrey Smirnov
db6ef1ee93 test: update Talos versions in Image Factory tests
Add Talos 1.7, remove Talos 1.3, as Omni minimum supported version right
now is 1.4.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-09-03 18:20:12 +04:00
Andrey Smirnov
ec3844c46a release(v1.8.0-alpha.2): prepare release
This is the official v1.8.0-alpha.2 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
v1.8.0-alpha.2
2024-09-02 13:37:36 +04:00
Andrey Smirnov
6f7c3a8e5c fix: build of talosctl on non-Linux arches
Move META constants out to machinery, and fix up imports. The internal
`pkg/meta` package shold not be consumed in public-facing commands.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2024-08-30 22:17:38 +04:00