Commit Graph

257 Commits

Author SHA1 Message Date
Andrew Rynhard
a81e30cb46
docs: add bootstrap command to VMware docs
Added documentation on running `talosctl bootstrap` for VMware.

Signed-off-by: Andrew Rynhard <andrew@rynhard.io>
2021-08-26 18:36:39 +00:00
Andrey Smirnov
c9af8f7ff1
docs: fork docs for 0.13
s/0.12/0.13/ mostly

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-25 21:43:05 +03:00
Rui Lopes
5f5ac12f1d
fix: properly case the VMware name
the actual name is written as VMware instead of VMWare

Signed-off-by: Rui Lopes <rgl@ruilopes.com>
2021-08-25 09:34:33 +00:00
Andrey Smirnov
751f64f9bc
docs: add release notes for 0.12, support matrix
Also provide new way to fetch AMI IDs for 0.12.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-23 16:13:22 +03:00
Andrey Smirnov
57a77696ef
feat: update Kubernetes to 1.22.1
See https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.22.md#changelog-since-v1220

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@talos-systems.com>
2021-08-23 09:58:02 +00:00
Artem Chernyshev
2b614e430e
feat: check if cluster has deprecated resources versions
Fixes: https://github.com/talos-systems/talos/issues/4026

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2021-08-18 23:26:36 +03:00
Spencer Smith
5ce92ca516
docs: ensure azure VMs are 0 indexed
This PR makes sure that azure VMs are zero indexed for consistency with
the way that NICs and IPs are generated earlier in the docs. I'm not
quite sure why we went with `seq( 0 1 2 )` instead of `seq( 0 2 )`, but
I kept the sequences the same for consistency.

Signed-off-by: Spencer Smith <spencer.smith@talos-systems.com>
2021-08-17 19:09:40 -04:00
Andrey Smirnov
37ea2c9ca2
feat: support for route source addresses in the configuration
Fixes #3941

Also fixes route source address to be address, not a CIDR, as the Linux
kernel keeps it this way actually.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-16 16:58:58 +03:00
Andrey Smirnov
6ee690d9a7
release(v0.12.0-alpha.1): prepare release
This is the official v0.12.0-alpha.1 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-13 22:59:01 +03:00
Seán C McCord
1ed5e54538
feat: add ClusterID and ClusterSecret
Adds a non-secret unique cluster identifier and a shared secret cluster
membership key for use by membership validation and discovery
mechanisms.

Fixes #4070

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2021-08-13 10:37:26 -07:00
Andrey Smirnov
dadaa65d54
feat: print uid/gid for the files in ls -l
This adds information about file ownership in the long listing which is
crucial sometimes.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-13 00:10:49 +03:00
Andrey Smirnov
eefe1c21c3
feat: add new etcd members in learner mode
Fixes #3714

This provides more safe way to join new members to the etcd cluster.

See https://etcd.io/docs/v3.4/learning/design-learner/

With learner mode join there are few differences:

* new nodes are joined one by one, because etcd enforces a single
learner member in the cluster
* learner members are not counted in quorum calculations, so while
learner catches up with the master node, quorum is not affected and
cluster is still operational

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-12 17:56:57 +03:00
Andrey Smirnov
b1c66fbad1
feat: implement Equinix Metal support for virtual (shared) IP
Talos supports automatic virtual IP for the control plane with pure
layer 2 connectivity. Equinix Metal API supports assigning shared IPs to
the nodes, this PR combines existing virtual IP functionality with calls
to EM API to move the IP address on EM side to the leader node.

The only thing which should be supplied in the machine configuration is
the Equinix Metal API token, every other setting is automatically
discovered automatically by Talos.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-12 17:26:59 +03:00
Andrey Smirnov
887c2326a4 release(v0.12.0-alpha.0): prepare release
This is the official v0.12.0-alpha.0 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-11 08:49:34 -07:00
Andrey Smirnov
cb948accfe feat: allow multiple addresses per interface
Fixes #3940

This changes machine configuration in a backwards compatible way to
allow multiple `.addresses` to be specified for the interface (and for
VLANs). Old field `.cidr` is still processed and used, but new
deployments should move to `.addresses`. This allows to stop using
interface duplication workarounds to assign multiple IPs to the
interface.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-10 13:29:37 -07:00
Artem Chernyshev
585f633710 fix: correctly handle nodoc for struct fields
Also fix the const for `docgen:nodoc` for skipped the whole struct.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2021-08-10 06:24:29 -07:00
Alexey Palazhchenko
09d70b7eaf feat: update Kubernetes to v1.22.0
Closes #3967.
Closes #3997.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@talos-systems.com>
2021-08-06 09:06:32 -07:00
Andrey Smirnov
f25f10e73e feat: add an option to disable PSP
This feature comes as PSP is deprecated and going to be removed in 1.25.
In preparation for that, add an option to disable PSP which was always
enabled in Talos by default.

To keep backwards compatibility, PSP is still enabled by default.

See also #3971

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
Co-authored-by: Adam Szucs-Matyas <szucsitg@gmail.com>
2021-08-06 06:45:33 -07:00
Andrey Smirnov
7c6e4cf230 feat: allow both DHCP and static addressing for the interface
No need to do hacks with multiple interface entries just to get multiple
addressing methods

Fixes #2804

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-08-05 14:48:18 -07:00
Serge Logvinov
f8f4bf3bae docs: add disk encryptions examples
* Update partition encryption mount options

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
2021-08-03 12:54:54 -07:00
Andrey Smirnov
0c7ce1cd81 feat: remove remnants of bootkube support
Fixes #3951

Bootkube support was removed in Talos 0.9. Talos versions 0.9-0.11
support conversion of self-hosted bootkube-based control plane to the
new style control plane running as static pods managed by Talos.

This commit removes all backwards compatibility and removes conversion
code.

For the k8s controllers, `BootstrapStatus` is removed and a dependency
on `etcd` service status is added (as it was implicitly there via
`BootstrapStatus`).

Remove control plane conversion code.

In k8s upgrade code, remove self-hosted part.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-08-03 07:55:42 -07:00
Alexey Palazhchenko
d4f9804f86 chore: fix typos
"Optimizations" wasn't spelled correctly.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-08-03 07:42:15 -07:00
Artem Chernyshev
5f027615ff feat: expose more encryption options to the machine config
Fixes: https://github.com/talos-systems/talos/issues/3606

Signed-off-by: Artem Chernyshev <artem.0xD2@gmail.com>
2021-07-27 11:19:26 -07:00
Artem Chernyshev
55e17ccdd1 chore: bump dependencies
Fixes: https://github.com/talos-systems/talos/pull/3954 https://github.com/talos-systems/talos/pull/3955 https://github.com/talos-systems/talos/pull/3956 https://github.com/talos-systems/talos/pull/3957 https://github.com/talos-systems/talos/pull/3958 https://github.com/talos-systems/talos/pull/3959 https://github.com/talos-systems/talos/pull/3960 https://github.com/talos-systems/talos/pull/3961 https://github.com/talos-systems/talos/pull/3962 https://github.com/talos-systems/talos/pull/3963 https://github.com/talos-systems/talos/pull/3964

And update kubelet to 1.21.3.

Signed-off-by: Artem Chernyshev <artem.0xD2@gmail.com>
2021-07-19 06:06:01 -07:00
Caleb Woodbine
da6f786cab fix: kuberentes => kubernetes typo
uh uh, small typo... nothing to see here.

Signed-off-by: Caleb Woodbine <calebwoodbine.public@gmail.com>
2021-07-19 05:59:35 -07:00
Serge Logvinov
6848d43142 feat: can change clusterdns ip lists
Add change clusterdns ip list on node

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
2021-07-09 12:33:34 -07:00
Alexey Palazhchenko
679b08f4fa docs: update docs for 0.12
Plus remove versions in a few places.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-09 09:39:51 -07:00
Alexey Palazhchenko
eea750de2c chore: rename "join" type to "worker"
Closes #3413.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-09 07:10:45 -07:00
Andrey Smirnov
951493ac83 docs: update what's new for Talos 0.11
This is just copy-paste from our changelog.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-08 14:47:48 -07:00
Andrey Smirnov
d930a26502 chore: implement DeepCopy for machine configuration
Resources code extensively uses DeepCopy to prevent in-memory copy of
the resource to be mutated outside of the resource model.

Previous implementation relied on YAML serialization to copy the
machine configuration which was slow, potentially might lead to panics
and it generates pressure on garbage collection.

This implementation uses k8s code generator to generate DeepCopy methods
with some manual helpers when code generator can't handle it.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-08 07:21:24 -07:00
Alexey Palazhchenko
2ba8ac9ab4 docs: add documentation directory for 0.12
Plus, convert a few absolute URLs with a version number to relative URLs without versions.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-08 04:44:51 -07:00
Alexey Palazhchenko
4708beaee5 feat: implement talosctl config info command
Closes #3852.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-06 00:58:47 -07:00
Alexey Palazhchenko
915cd8fe20 docs: add guide for RBAC
Document how to enable RBAC without screwing up.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-05 05:56:29 -07:00
Andrey Smirnov
5949ec4e6e docs: describe the new network configuration subsystem
Internal details, resources, examples inspecting the configuration.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-01 09:02:56 -07:00
Alexey Palazhchenko
bbf1c091d4 feat: add RBAC to talosctl version output
Refs #3852.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-28 07:10:25 -07:00
Rui Lopes
1e9a0e745d fix: documentation typos
Fix a couple of documentation typos.

Signed-off-by: Rui Lopes <rgl@ruilopes.com>
2021-06-28 02:50:31 -07:00
Serge Logvinov
c7e6225671 chore: update coredns to 1.8.4
* Coredns 1.8.0 -> 1.8.4
* Add RBAC endpointslices list/watch

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
2021-06-24 07:47:36 -07:00
Andrey Smirnov
a650531fab release(v0.11.0-alpha.2): prepare release
This is the official v0.11.0-alpha.2 release.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-23 16:58:05 -07:00
Artem Chernyshev
1990ad2525 feat: add created and updated timestamps to the resource metadata
This will allow to keep track of when the resource was created and
updated.
Update is tied to the version bump.

Signed-off-by: Artem Chernyshev <artem.0xD2@gmail.com>
2021-06-23 13:56:49 -07:00
Andrey Smirnov
33119d2b8e chore: add an option to launch cluster with bad RTC state
This is useful for time sync testing.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-23 13:08:20 -07:00
Andrey Smirnov
004885a379 feat: update Linux kernel to 5.10.45, etcd to 3.4.16
This also pulls in HP ILO driver, dmesg restrict mode by default and
dm-crypt options.

See talos-systems/pkgs#289, talos-systems/pkgs#290,
talos-systems/pkgs#287

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-22 02:42:09 -07:00
Serge Logvinov
0f659622d0 fix: build with custom kernel/rootfs
Fix ONBUILD initramfs path

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
2021-06-21 12:54:30 -07:00
Alexey Palazhchenko
42c16f67f4 chore: bump dependencies
Update k8s to 1.21.2.

See #3787 #3788 #3789 #3790 #3791 #3792 #3793 #3794 #3795 #3796 #3798.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-21 07:05:41 -07:00
Seán C McCord
48a5c460a1 docs: provide more storage details
Fill out storage guide a bit more.

Signed-off-by: Seán C McCord <ulexus@gmail.com>
2021-06-18 16:27:34 -07:00
Andrey Smirnov
e13d905c2e release(v0.11.0-alpha.1): prepare release
This is the official v0.11.0-alpha.1 release.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-18 14:07:24 -07:00
Alexey Palazhchenko
06209bba28 chore: update RBAC rules, remove old APIs
Refs #3421.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-18 09:54:49 -07:00
Alexey Palazhchenko
f63ab9dd9b feat: implement talosctl config new command
Refs #3421.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-17 09:06:43 -07:00
Andrew Rynhard
11918a110a docs: update community meeting time
Updated to be the correct time.

Signed-off-by: Andrew Rynhard <andrew@rynhard.io>
2021-06-14 12:28:03 -07:00
Alexey Palazhchenko
0f168a8801 feat: add configuration for enabling RBAC
Refs #3421.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-08 09:30:41 -07:00
Alexey Palazhchenko
5ad314fe7e feat: implement basic RBAC interceptors
It is not enforced yet.

Refs #3421.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-07 09:28:22 -07:00