3256 Commits

Author SHA1 Message Date
Noel Georgi
5fdedae208
chore: bump kernel to 5.15.28
Bump kernel to 5.15.28

ref: https://github.com/talos-systems/pkgs/pull/417

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-03-14 23:53:42 +05:30
Andrey Smirnov
18a21b5f24
chore: add dependency images-essential -> images
This is needed to make sure that those steps don't run in parallel on
release builds, as they write same output files.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-14 18:32:03 +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
Steve Francis
58be4067e6
docs: update README.md
Update links.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-11 19:43:25 +03:00
Spencer Smith
c5fb209305
docs: add loki note
This PR adds a simple note about forwarding to loki from fluentbit.

Signed-off-by: Spencer Smith <spencer.smith@talos-systems.com>
2022-03-10 11:21:38 -05:00
Andrey Smirnov
f448cb4f3c
feat: bump boot partition size to 1000 MiB
With system extensions, size of the `initramfs` might increase
significantly. With 1000 MiB `/boot`, as we store `A` and `B` boot
directories, we have 500 MiB for each Talos boot (size of the kernel and
initramfs).

Fixes #5096

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-10 16:52:07 +03:00
Noel Georgi
a095acb09f
chore: fix equinixMetal platform name
fix equinix platform name

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-03-10 00:15:51 +05:30
Seán C McCord
2a7f9a4457
fix: check for IPv6 before applying accept_ra
When IPv6 is disabled entirely, we should not try to set `accept_ra`,
since it does not exist.
This performs a check before adding the default kernel parameter.

Fixes #5087

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2022-03-07 10:13:08 -05:00
Andrey Smirnov
59681b8c9a
fix: backport fixes from release-1.0 branch
They were discovered as we tagged 1.0.0 version:

* wrong deprecated version
* incompatibility in extension compatibility checks

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-04 23:28:06 +03:00
Andrey Smirnov
0aa23cb327
feat: update pkgs to 1.0 versions, Go 1.17.8
Fixes #5080

This updates all package dependencies to 1.0 versions.

Add a GPL note to README.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
pkg/machinery/v1.0.0-beta.0
2022-03-04 19:18:59 +03:00
Noel Georgi
dc8e9ed4a5
feat: bond interfaces from kernel cmdline
Support bond interfaces from kernel cmdline using `bond=` format

Fixes: #4765

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-03-03 23:54:53 +05:30
Noel Georgi
947c77b60c
docs: update cilium inline install
Update cilium inline install

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-03-03 21:37:56 +05:30
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
Andrey Smirnov
77158a61fd
chore: rename v0.15 to v1.0
Next release of Talos will be v1.0 🎉

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-03 00:25:43 +03:00
Andrey Smirnov
22a4d6b3e6
feat: update containerd to 1.6.1
Also update Linux to 5.15.26.

See https://github.com/talos-systems/pkgs/pull/410

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-02 22:48:30 +03:00
Artem Chernyshev
a50747a64a
fix: align list and diskusage command flags with their Linux analogs
Fixes: https://github.com/talos-systems/talos/issues/3018

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2022-03-02 22:27:56 +03:00
Andrey Smirnov
d29e9202f3
chore: remove iSCSI packages from the rootfs image
They haven't been actually used, it reduces initramfs size by ~600KB,
and iscsi will be re-packages as a system extension.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-02 22:06:45 +03:00
Andrey Smirnov
09efa62f68
chore: re-enable kexec and default to UEFI booting in tests
Fixes #4947

It turns out there's something related to boot process in BIOS mode
which leads to initramfs corruption on later `kexec`.

Booting via GRUB is always successful.

Problem with kexec was confirmed with:

* direct boot via QEMU
* QEMU boot via iPXE (bundled with QEMU)

The root cause is not known, but the only visible difference is the
placement of RAMDISK with UEFI and BIOS boots:

```
[    0.005508] RAMDISK: [mem 0x312dd000-0x34965fff]
```

or:

```
[    0.003821] RAMDISK: [mem 0x711aa000-0x747a7fff]
```

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-02 21:52:18 +03:00
Noel Georgi
8975a56eb2
docs: fix typo in release notes
Fix typo in release notes

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-03-03 00:03:57 +05:30
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
7ddc7f6053
feat: support specifying env vars for control plane pods
Fixes #5055

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-03-01 22:51:57 +03:00
Noel Georgi
7c1924a3ae
docs: update cilium docs
Update cilium docs to reflect using K8s IPAM mode

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-03-02 00:41:13 +05:30
Andrey Smirnov
7b33ffbd85
chore: update pkgs and extras
This brings in the following changes:

* https://github.com/talos-systems/pkgs/pull/404
* https://github.com/talos-systems/pkgs/pull/405
* https://github.com/talos-systems/pkgs/pull/406
* https://github.com/talos-systems/pkgs/pull/407

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-28 23:19:24 +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
Serge Logvinov
de69ab7902
fix: scaleway network config
We've forgot to apply network setting.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-28 21:12:01 +03:00
Andrey Smirnov
f81fb9f7cf
feat: implement sysfs
Fixes: https://github.com/talos-systems/talos/issues/4703

Co-authored-by: Dmitriy Matrenichev <lepage+gh@protonmail.com>
Co-authored-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2022-02-28 17:51:02 +03:00
Serge Logvinov
79d9720a35
fix: set route to metaserver for scaleway platform
Set default route to metaserver, which exists only on eth0 interface.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-25 22:48:51 +03:00
Andrey Smirnov
eb40b9254f
feat: add a way to override kubelet configuration via machine config
Fixes #4629

Note: some fields are enforced by Talos and are not overridable.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-25 17:39:01 +03:00
Noel Georgi
dc23715478
chore: update packet to equinix
Update `packet` to `equinix` for `talos.platform` kernel argument

Fixes: #5010

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-02-25 00:50:02 +05:30
Andrey Smirnov
7917b1aca0
feat: support admission control configuration and Pod Security admission
Fixes #5003

This implements a way to configure API server admission plugins via
Talos machine configuration.

If Pod Security admission is enabled, default cluster-wide policy is
generated which enforces baseline policy.

Policy can be overridden per-namespace.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-24 16:18:15 +03:00
Serge Logvinov
45feb72a47
feat: fluent-bit example
Second way to collect talos and pod logs in the cluster.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-24 15:48:35 +03:00
Spencer Smith
9b0b5501dd
docs: add katacoda link
This PR adds the katacoda tutorial to our quickstart

Signed-off-by: Spencer Smith <spencer.smith@talos-systems.com>
2022-02-23 20:18:40 -05:00
Andrey Smirnov
b2bf3117ff
feat: implement extension services
Fixes #4694

User services run alongside with Talos system services.
Every user service container root filesystem should be already present
in the Talos root filesystem.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-22 23:11:20 +03:00
Andrey Smirnov
063a9e1657
test: pre-fetch CLI tools
As `_out` is a shared volume across Drone steps, we should prefetch CLI
dependencies early, as fetching them concurrently from multiple steps
might lead to surpising results.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-22 22:17:11 +03:00
Serge Logvinov
d749643e7e
feat: download metadata on Scaleway using low source port
This feature allow to us use low source port <1024 to make a http calls.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-22 16:50:05 +03:00
Noel Georgi
1800b4c707
chore: fix kernel reference errata
Fix kernel `ip=` errata

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-02-22 18:48:53 +05:30
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
614adf0ffd
feat: update xfsprogs to 5.14.2, replace LibreSSL with OpenSSL
See #4985

Also a bit more cleanup of the rootfs contents.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-21 21:31:41 +03:00
Seán C McCord
28c3b495da
docs: updates to troubleshooting doc
Updated wording, added some cross references, and generally updated the
controlplane troubleshooting document.

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2022-02-21 12:04:29 -05:00
Andrey Smirnov
673fe2ebf7
feat: disable PSP by default for Talos >= 0.15
This flips the switch in the machine config to skip PSP deployment.

See #5003

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-21 17:46:45 +03:00
Seán C McCord
4d419a007f
feat: store audit logs to disk
Instead of bundling the apiserver audit logs with the rest of the
apiserver logs, we should store them separately to file, assuring
reasonable defaults for retention and rotation.

Fixes #5000

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2022-02-21 09:12:27 -05: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
Noel Georgi
8a634d5648
chore: bump tools, pkgs, extras
Bump tools, pkgs and extras

Ref:
- https://github.com/talos-systems/tools/pull/171
- https://github.com/talos-systems/extras/pull/39
- https://github.com/talos-systems/pkgs/pull/403

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-02-21 14:49:57 +05:30
Jori Huisman
f40b480bdd
chore: expand Cilium deployment docs
Expanded Cilium deployment documentation

Co-authored-by: Noel Georgi <git@frezbo.dev>
Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-02-19 10:34:36 +05:30
Seán C McCord
3ba8eb00d3
docs: design concepts page
Added some commonly-misunderstood concepts about Talos Linux and the operation
thereof.

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2022-02-18 20:56:21 -05:00
Seán C McCord
a5fb271ac8
feat: enable protectKernelDefaults in kubelet_spec
Enable the kubelet's builtin kernel configuration checks.
Also limits streaming connection timeout.

Fixes #5002
Fixes #4990

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2022-02-18 11:03:06 -05:00
Andrey Smirnov
b7a1e04310
chore: don't append initrd= to the kernel command line
I believe it serves no purpose in GRUB config: GRUB pre-loads
`initramfs` into memory anyways, so kernel doesn't need to know, nor has
now way to load it from anywhere.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-18 17:04:16 +03:00
Utku Ozdemir
4d5cd66538
feat: add new grub parser and descriptive grub menu entries
Rewrite the grub config parser code, allow to have descriptive Grub entries.
Remove old syslinux bootloader.

Fixes talos-systems/talos#4914

Signed-off-by: Utku Ozdemir <uoz@protonmail.com>
2022-02-18 14:47:17 +03:00
Andrey Smirnov
6ccfdbaf1b
fix: avoid replacing default gRPC codec in machinery
Fixes #4987

As machinery is supposed to be widely used project, and gRPC lacks
proper support to override default codec easily, it might come into
conflict with other projects.

Instead, move codec to core talos, and register it explicitly in the
server code (which covers machined, apid, trustd) and client code
(talosctl).

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-02-18 00:39:41 +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