539 Commits

Author SHA1 Message Date
Philipp Sauter
f2d89735fd
feat: extend the extension service spec with container security options
We extend the extension service spec with three security options,
WithWriteableSysfs, WithMaskedPaths, WithReadonlyPaths

Fixes #5411

Signed-off-by: Philipp Sauter <philipp.sauter@siderolabs.com>
2022-05-16 14:33:04 +02:00
Andrey Smirnov
b52962c440
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-11 20:30:03 +03:00
Noel Georgi
89cab200b8
chore: bump kubernetes to v1.24.0
Bump kubernetes to v1.24.0

Ref: https://github.com/siderolabs/kubelet/pull/45

Also update coredns [manifests](https://github.com/coredns/deployment/blob/master/kubernetes/coredns.yaml.sed)

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-05-05 00:34:35 +05:30
Andrey Smirnov
bd089e702d
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-03 16:30:59 +03:00
Dmitriy Matrenichev
6351928611
chore: redo pointer with github.com/siderolabs/go-pointer module
With the advent of generics, redo pointer functionality and remove github.com/AlekSi/pointer dependency.

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2022-05-02 02:17:13 +04:00
Andrey Smirnov
71d04c4d5c
refactor: rewrite runtime resources to use typed.Resource
No functional changes.

Also bump bumped cosi-runtime with the fix for the UnmarshalProto.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-27 16:47:50 +03:00
Andrey Smirnov
1973095d14
feat: update containerd to 1.6.3
This includes a fix for image pull slowness from
https://github.com/containerd/containerd/pull/6702.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-26 21:43:28 +03:00
Andrey Smirnov
85b328e997
refactor: convert secrets resources to use typed.Resource
No functional changes.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-26 14:51:56 +03:00
Andrey Smirnov
45464412e0
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-25 16:26:41 +03:00
Andrey Smirnov
0af6b35a66
feat: update etcd to 3.5.4
See https://github.com/etcd-io/etcd/releases/tag/v3.5.4

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-25 15:49:02 +03:00
Andrey Smirnov
55ff876dc6
chore: bump K8s Go modules to 1.24.0-rc.0
This was skipped due to https://github.com/kubernetes/kubernetes/issues/109565

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-22 20:32:42 +03:00
Andrey Smirnov
39721ee939
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-18 21:20:14 +03:00
Dmitriy Matrenichev
be00d77492
chore: implement cluster resources using cosi typed resource
Bump github.com/cosi-project/runtime and use typed.Resource

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2022-04-18 16:28:12 +04:00
Andrey Smirnov
8af50fcd27
fix: correct cri package import path
Containerd CRI plugin was merged into the main repo, but we were using
old import path, so our constants coming from the module were outdated.

This fixes the image version for the pause container.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-14 16:27:45 +03:00
Andrey Smirnov
ce09ede839
feat: update etcd to 3.5.3
See https://github.com/etcd-io/etcd/releases/tag/v3.5.3

This release should contain a fix for data consistency issue when etcd
is killed under high load.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-14 13:56:03 +03:00
Andrey Smirnov
0aad0df2eb
refactor: remove String() for resource implementation
See https://github.com/cosi-project/runtime/pull/69

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-12 20:51:02 +03:00
Andrey Smirnov
8499b7e7dc
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-11 16:53:39 +03:00
Andrey Smirnov
b3f1bb2cff
fix: add support for FAT12/16 filesystems
This can be used when probing filesystems with config data in the
`metal-iso` case or in the `nocloud` platform.

Small disk images by default are created with small bits FAT
filesystems.

See https://github.com/siderolabs/go-blockdevice/pull/59

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-05 18:14:04 +03:00
Andrey Smirnov
8619f95c5c
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-04 17:29:49 +03:00
Andrey Smirnov
2ee1d2c720
feat: update Kuberentes to 1.24.0-beta.0
See https://github.com/kubernetes/kubernetes/releases/tag/v1.24.0-beta.0

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-31 18:06:56 +03:00
Andrey Smirnov
12931dcedd
fix: align partitions on 1M boundary
Potentially fixes: #4985

See siderolabs/go-blockdevice#58 for details.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-31 14:36:13 +03:00
Andrey Smirnov
ca8b9c0a3a
feat: update Kubernetes to 1.24.0-alpha.4
See https://github.com/kubernetes/kubernetes/releases/tag/v1.24.0-alpha.4

Fix some incompatibilities around dropped flags/API versions.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-30 22:59:07 +03:00
Andrey Smirnov
efa3f28985
fix: correctly find partitions with config data (metal-iso)
Update `go-blockdevice` library:

- https://github.com/siderolabs/go-blockdevice/pull/56

Also add a note on the org rename to the release notes.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-28 20:34:30 +03:00
Andrey Smirnov
957b2f233c
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-28 15:02:50 +03:00
Andrey Smirnov
a254254835
feat: update containerd to 1.6.2, Linux to 5.15.31
See:

* https://github.com/siderolabs/pkgs/pull/426
* https://github.com/siderolabs/pkgs/pull/430

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-24 17:36:19 +03:00
Andrey Smirnov
f477507262
fix: the etcd recovery client and tests
This is the follow-up fix to the PR #5129.

1. Correctly catch only expected errors in the tests.
2. Rewind the snapshot each time the upload is retried.
3. Correctly unwrap errors in the `EtcdRecovery` client.
4. Update the `grpc-proxy` library to pass through the EOF error.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-22 16:51:36 +03:00
Andrey Smirnov
b6691b3508
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-21 18:24:00 +03:00
Andrey Smirnov
9d69fb6b40
feat: update Kubernetes to 1.23.5
Note: some Go modules are not tagged yet, see https://github.com/kubernetes/kubernetes/issues/108763

See https://github.com/kubernetes/kubernetes/releases/tag/v1.23.5

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-17 14:45:46 +03:00
Andrey Smirnov
714e5eca63
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-14 16:48:37 +03:00
Andrey Smirnov
6544720054
chore: update talos-systems modules to released version
No actual change to the dependencies, simply using released versions of
Go modules.

Also bump containerd to 1.6.1 (it should have went with containerd
1.6.1).

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-03 18:18:30 +03:00
Serge Logvinov
61461de634
feat: define resource reservation
Set memory/cpu resource reservation for system processes.
It helps system processes to allocate memory on memory pressure
situation.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-02 17:18:03 +03:00
Andrey Smirnov
c5992c2bf8
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-28 22:51:53 +03:00
Matt Layher
743a030025
chore: bump github.com/mdlayher/arp@latest
Newest version of github.com/mdlayher/arp backed by the improved
https://github.com/mdlayher/packet package. There's no stable release
of arp yet but I'd like to get back around to that now that I'm stabilizing underlying pieces.

Signed-off-by: Matt Layher <mdlayher@gmail.com>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-22 15:07:17 +03:00
Andrey Smirnov
8ef3d85bc4
chore: bump dependencies
Dependabot + go-mod-outdated.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-21 16:01:33 +03:00
Andrey Smirnov
0fe34b3581
feat: update Kubernetes to 1.23.4
See https://github.com/kubernetes/kubernetes/releases/tag/v1.23.4

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-17 23:50:34 +03:00
Andrey Smirnov
bddd53fc4a
chore: bump dependencies
Some via dependabot, some via go-mod-outdated.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-15 21:22:53 +03:00
Noel Georgi
8899dd3494
chore: add json-tags for SecretsBundle
Add JSON tags so that the fields can be un-marshelled by tools like
Pulumi when creating a pulumi provider for Talos SecretsBundle,
ref: https://github.com/frezbo/pulumi-provider-talos/blob/main/provider/cmd/pulumi-resource-talos/schema.json

Ref: https://github.com/talos-systems/crypto/pull/24

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-02-10 00:14:36 +05:30
Andrey Smirnov
1e3f2f9527
fix: validate kubelet node IP subnets correctly
Use same `talosnet` method as in the actual filtering code.

See also https://github.com/talos-systems/net/pull/9

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-08 18:22:22 +03:00
Andrey Smirnov
c7186ed080
chore: bump dependencies
Dependabot + go-mod-outdated.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-07 16:26:15 +03:00
Artem Chernyshev
ebec5d4a0c
feat: support full disk path in the diskSelector
Fixes: https://github.com/talos-systems/talos/issues/4788

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2022-01-27 15:23:00 +03:00
Andrey Smirnov
85782faa24
feat: update Kubernetes to 1.23.3
Also bumps some dependencies and updates Talos version we use in the
upgrade tests.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-26 17:59:21 +03:00
Andrey Smirnov
c5e5922e53
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-26 17:07:11 +03:00
Andrey Smirnov
d4b8445935
feat: support CRI configuration merging and reimplement registry config
Containerd doesn't support merging plugin configuration from multiple
sources, and Talos has several pieces which configure CRI plugin:
(see https://github.com/containerd/containerd/issues/5837)

* base config
* registry mirror config
* system extensions
* ...

So we implement our own simple way of merging config parts (by simply
concatenating text files) to build a final `cri.toml`.

At the same time containerd migrated to a new format to specify registry
mirror configuration, while old way (via CRI config) is going to be
removed in 1.7.0. New way also allows to apply most of registry
configuration (except for auth) on the fly.

Also, containerd was updated to 1.6.0-rc.0 and runc to 1.1.0.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-20 23:05:20 +03:00
Andrey Smirnov
f94c8c6e1c
feat: update Kubernetes to 1.23.2
See https://github.com/kubernetes/kubernetes/releases/tag/v1.23.2

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-20 22:12:03 +03:00
Andrey Smirnov
43b2d81371
chore: bump dependencies
Dependabot + go-mod-outdated.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-17 16:25:18 +03:00
Andrey Smirnov
3d30889412
chore: bump Go dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-01-10 17:27:42 +03:00
Andrey Smirnov
f4516c7d84
chore: bump dependencies
Some via dependabot, some via go-mod-outdated.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-12-30 19:38:03 +03:00
Andrey Smirnov
c079eb32bd
refactor: use AWS SDK to access AWS metadata service
This provides a better way to access IMDS APIs (new IMDS API version,
etc.)

Using `aws-go-sdk` vs. new `aws-go-sdk-v2` as `go-getter` depends on
`v1` version.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-12-28 20:54:31 +03:00
Andrey Smirnov
f4219e530c
chore: remove unused methods in AWS platform
These are guess artifacts from the time Talos tried to auto-detect the
platform it is running on.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-12-28 00:47:13 +03:00
Andrey Smirnov
3623da136b
feat: provide a way to load Linux kernel modules
Fixes #4693

Machine configuration change plus very simple controllers which transform
config into the module spec and finally load modules.

There's no support for advanced features like module params and aliases,
but we can add it later.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-12-23 23:58:37 +03:00