Skip to content

v0.5.0-alpha.2

Pre-release
Pre-release
Compare
Choose a tag to compare
@talos-bot talos-bot released this 04 Feb 19:53
v0.5.0-alpha.2
7a9ed30

Sidero 0.5.0-alpha.2 (2022-02-04)

Welcome to the v0.5.0-alpha.2 release of Sidero!
This is a pre-release of Sidero

Please try out the release binaries and report any issues at
https://github.com/talos-systems/sidero/issues.

Machine Addresses

Sidero now populates MetalMachine addresses with the ones discovered from Siderolink server events.
Which is then propagated to CAPI Machine resources.

Requires Talos >= v0.14.

iPXE Boot From Disk Method

iPXE boot from disk method can now be set not only on the global level, but also in the Server and ServerClass specs.

CAPI v1beta1

This release of CACPPT brings compatibility with CAPI v1beta1.

New MetalMachines Conditions

New set of conditions is now available which can simplify cluster troubleshooting:

  • TalosConfigLoaded is set to false when the config load has failed.
  • TalosConfigValidated is set to false when the config validation
    fails on the node.
  • TalosInstalled is set to true/false when talos installer finishes.

IPMI PXE Method

IPMI PXE method (UEFI, BIOS) can now be configured with SIDERO_CONTROLLER_MANAGER_IPMI_PXE_METHOD while installing Sidero.

Retry PXE Boot

Sidero server controller now keeps track of Talos installation progress.
Now the node will be PXE booted until Talos installation succeeds.

Siderolink

Sidero now connects to all servers using Siderolink.
This enables streaming of all dmesg logs and events back to sidero.

All server logs can now be viewed by getting logs of one of the container of the sidero-controller-manager:

kubectl logs -f -n sidero-system deployment/sidero-controller-manager serverlogs

Events:

kubectl logs -f -n sidero-system deployment/sidero-controller-manager serverevents

Contributors

  • Andrey Smirnov
  • Artem Chernyshev
  • Michal Witkowski
  • Andrey Smirnov
  • Noel Georgi
  • Spencer Smith
  • Andrey Smirnov
  • Steve Francis
  • Charlie Haley
  • Daniel Low
  • Jack Wink
  • Rubens Farias
  • Serge Logvinov
  • Seán C McCord

Changes

50 commits

  • 7a9ed30 release(v0.5.0-alpha.2): prepare release
  • 0a967a8 feat: configure boot from disk method on Server/ServerClass level
  • 7912509 refactor: cleanup and deduplicate the code which matches SideroLink IPs
  • 003f6a7 fix: don't boot from not ready environments
  • e44f350 fix: use controller-runtime standard healthz endpoints
  • c73d8e5 docs: update to Sidero from Talos
  • 5e3f68d fix: add move label to BMC secrets
  • f28d7b0 docs: update README and index page
  • 194e870 chore: bump dependencies
  • b30fbe4 feat: set server PXEBooted condition only after Talos gets installed
  • 34f7822 docs: fixes to the homepage, footer, log
  • 682594c docs: update index.md and sync across versions
  • dea2179 refactor: rewrite conditions update function in the adapter
  • 59ed3cd release(v0.5.0-alpha.1): prepare release
  • 1f7588f docs: update office hours
  • fe41335 feat: introduce new conditions in the metalmachine
  • 6454dee feat: populate addresses and hostname in ServerBindings
  • d69264f docs: fix patching examples
  • 04d90fd docs: add patching examples
  • 41b7451 docs: update docs for upcoming Sidero 0.4.1 release
  • d5f8f4e release(v0.5.0-alpha.0): prepare release
  • 229dae1 fix: ignore BMC info if username or password are not set
  • 650743a fix: use environment variables in the ipmitool
  • ed39a3c fix: ensure we setup BMC info after disk wiping
  • 025ff04 feat: additional printer colums
  • 189793e fix: wait for link up in iPXE script
  • 9a27861 fix: make iPXE script replace script on chain request
  • 1bbe3be feat: extend information printed in the iPXE script, add retries
  • 4cfdeda feat: provide a way to configure IPMI PXE method
  • 2ff14c4 docs: reflect sidero runs on ARM
  • 274ae33 fix: check for server power state when in use
  • d0df929 feat: implement events manager container
  • ab12b81 feat: implement Talos kernel log receiver
  • 5bf7c21 docs: fix clusterctl usage
  • e77bf54 feat: support cordoning server
  • ab29103 feat: implement SideroLink
  • adc73b6 fix: update CAPI resources versions to v1alpha4 in the cluster template
  • 04dbaf0 test: fix Sidero components version in sfyra docs
  • acb5f57 feat: automatically append talos.config to the Environment
  • 0e7f8a6 docs: metadata server -> sidero
  • a826281 fix: hide password from ipmitool args
  • ef270df docs: fork docs for 0.5
  • a0bf382 docs: dhcp option-93
  • bbbe814 chore: conformance check
  • 701d01b fix: drop into the agent for non-allocated servers
  • b0e3611 docs: update help message for extra kernel args
  • bb87567 chore: bump dependencies
  • 62ab9be fix: update extension for controlplane.yam l talosctl generates YAML files with the .yaml extension, update to the apply-config command to reflect this
  • 0511d78 feat: allow defining http server and api server ports separately
  • 432ca2a docs: create v0.4 docs and set them as latest

Changes since v0.5.0-alpha.1

13 commits

  • 7a9ed30 release(v0.5.0-alpha.2): prepare release
  • 0a967a8 feat: configure boot from disk method on Server/ServerClass level
  • 7912509 refactor: cleanup and deduplicate the code which matches SideroLink IPs
  • 003f6a7 fix: don't boot from not ready environments
  • e44f350 fix: use controller-runtime standard healthz endpoints
  • c73d8e5 docs: update to Sidero from Talos
  • 5e3f68d fix: add move label to BMC secrets
  • f28d7b0 docs: update README and index page
  • 194e870 chore: bump dependencies
  • b30fbe4 feat: set server PXEBooted condition only after Talos gets installed
  • 34f7822 docs: fixes to the homepage, footer, log
  • 682594c docs: update index.md and sync across versions
  • dea2179 refactor: rewrite conditions update function in the adapter

Changes from talos-systems/cluster-api-bootstrap-provider-talos

9 commits

  • 1776117 release(v0.5.1): prepare release
  • 1b88f9f feat: update Talos to 0.14.0
  • 6d27c57 release(v0.5.0): prepare release
  • f6dc0a3 fix: regenerate manifests
  • 2a4115f release(v0.5.0-alpha.0): prepare release
  • d124c07 docs: update README with usage and compatibility matrix
  • 20792f3 feat: generate talosconfig as a secret with proper endpoints
  • abd206f feat: update to CAPI v1.0.x contract (v1beta1)
  • b7faf9e feat: update Talos machinery to 0.13.0

Changes from talos-systems/cluster-api-control-plane-provider-talos

19 commits

  • adea239 release(v0.4.3): prepare release
  • efa0345 fix: fall back to old scheme of getting talsoconfig for older templates
  • 89f793e release(v0.4.2): prepare release
  • a77ddde refactor: change reconcile loop flow
  • ea7842f release(v0.4.1): prepare release
  • 7f63ad0 fix: avoid long backoff when trying to bootstrap the cluster
  • 8fc9a6c release(v0.4.0): prepare release
  • b63f1d2 release(v0.4.0-beta.2): prepare release
  • f5f5b2d fix: patch the status and use APIReader to get resource
  • d606d32 release(v0.4.0-beta.1): prepare release
  • 333fc02 fix: ensure that bootstrap is called only a single time
  • 77b0bba test: update templates to v1beta1
  • a5af5e4 release(v0.4.0-beta.0): prepare release
  • 80b24a0 fix: introduce a separate step for release builds
  • a24dad3 fix: do not allow scaling down controlplane to zero
  • 8a73e6a feat: get rid of init nodes and use bootstrap API to setup cluster
  • 205f4be release(v0.4.0-alpha.0): prepare release
  • b8db449 fix: properly pick talos client configuration
  • 61fb582 feat: support clusterapi v1beta1

Changes from talos-systems/go-blockdevice

2 commits

  • 15b182d fix: return partition table not exist when trying to read an empty dev
  • b9517d5 fix: resize partition

Changes from talos-systems/go-smbios

1 commit

  • fd5ec8c fix: remove useless (?) goroutines leading to data race error

Changes from talos-systems/grpc-proxy

44 commits

  • ca3bc61 fix: ignore some errors so that we don't spam the logs
  • 5c579a7 feat: allow different formats for messages streaming/unary
  • 6c9f7b3 fix: allow mode to be set for each request being proxied
  • cc91c09 refactor: provide better public API, enforce proxying mode
  • d8d3a75 chore: update import paths after repo move
  • dbf07a4 Merge pull request #7 from smira/one2many-4
  • fc0d27d More tests, small code fixes, updated README.
  • d9ce0b1 Merge pull request #6 from smira/one2many-3
  • 2d37ba4 Support for one2many streaming calls, tests.
  • 817b035 Merge pull request #5 from smira/one2many-2
  • 436b338 More unary one-2-many tests, error propagation.
  • 1f0cb46 Merge pull request #4 from smira/one2many-1
  • 992a975 Proxying one to many: first iteration
  • a0988ff Merge pull request #3 from smira/small-fixups
  • e3111ef Small fixups in preparation to add one-to-many proxying.
  • 6d76ffc Merge pull request #2 from smira/backend-concept
  • 2aad63a Add concept of a 'Backend', but still one to one proxying
  • 7cc4610 Merge pull request #1 from smira/build
  • 37f01f3 Rework build to use GitHub Actions, linting updates.
  • 0f1106e Move error checking further up (#34)
  • d5b35f6 Update gRPC and fix tests (#27)
  • 67591eb Break StreamDirector interface, fix metadata propagation for gRPC-Go>1.5. (#20)
  • 97396d9 Merge pull request #11 from mwitkow/fix-close-bug
  • 3fcbd37 fixup closing conns
  • a8f5f87 fixup tests, extend readme
  • 428fa1c Fix a channel closing bug
  • af55d61 Merge pull request #10 from mwitkow/bugfix/streaming-fix
  • de4d3db remove spurious printfs
  • 84242c4 fix the "i don't know who finished" case
  • 9b22f41 fix full duplex streaming
  • c2f7c98 update readme
  • d654141 update README
  • f457856 move to proxy subdirectory
  • 4889d78 Add fixup scripts
  • ef60a37 version 2 of the grpc-proxy, this time with fewer grpc upstream deps
  • 07aeac1 Merge pull request #2 from daniellowtw/master
  • e5c3df5 Fix compatibility with latest grpc library
  • 52be0a5 bugfix: fix gRPC Java deadlock, due to different dispatch logic
  • 822df7d Fix reference to mwitkow.
  • 28341d1 move out forward logic to method, allowing for use as grpc.Server not found handler.
  • 89e28b4 add reference to upstream grpc bug
  • 00dd588 merge upstream grpc.Server changes changing the dispatch logic
  • 77edc97 move to upstream protobuf from gogo
  • db71c3e initial commit, tested and working.

Changes from talos-systems/net

2 commits

  • b4b7181 feat: add a way to filter list of IPs for the machine
  • 0abe5bd feat: implement FilterIPs function

Changes from talos-systems/siderolink

7 commits

  • 9902ad2 feat: pass request context and node address to the events sink adapter
  • d0612a7 refactor: pass in listener to the log receiver
  • d86cdd5 feat: implement logreceiver for kernel logs
  • f7cadbc fix: handle duplicate peer updates
  • 0755b24 feat: initial implementation of SideroLink
  • ee73ea9 feat: add Talos events sink proto files and the reference implementation
  • 1e2cd9d Initial commit

Dependency Changes

  • github.com/evanphx/json-patch v4.11.0 -> v5.6.0
  • github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 new
  • github.com/onsi/ginkgo v1.16.4 -> v1.16.5
  • github.com/onsi/gomega v1.16.0 -> v1.18.1
  • github.com/talos-systems/cluster-api-bootstrap-provider-talos v0.4.0 -> v0.5.1
  • github.com/talos-systems/cluster-api-control-plane-provider-talos v0.3.0 -> v0.4.3
  • github.com/talos-systems/go-blockdevice v0.2.4 -> v0.2.5
  • github.com/talos-systems/go-smbios d3a32bea731a -> v0.1.1
  • github.com/talos-systems/grpc-proxy v0.2.0 new
  • github.com/talos-systems/net v0.3.0 -> v0.3.1
  • github.com/talos-systems/siderolink 9902ad2774f0 new
  • go.uber.org/zap v1.20.0 new
  • golang.org/x/net 853a461950ff -> cd36cc0744dd
  • golang.org/x/sys 39ccf1dd6fa6 -> 99c3d69c2c27
  • golang.zx2c4.com/wireguard/wgctrl daad0b7ba671 new
  • google.golang.org/grpc v1.41.0 -> v1.44.0
  • inet.af/netaddr c74959edd3b6 new
  • k8s.io/utils bdf08cb9a70a -> cb0fa318a74b
  • sigs.k8s.io/cluster-api v0.4.3 -> v1.0.4
  • sigs.k8s.io/controller-runtime v0.9.7 -> v0.10.3

Previous release can be found at v0.4.0