github deckhouse/deckhouse v1.26.0-alpha.7
Deckhouse v1.26.0-alpha.7

latest releases: v1.59.10, v1.59.9, v1.59.8...
pre-release2 years ago

Changelog since v1.25.5

En

Components that will be restarted during the update

  • Prometheus
  • cloud-provider-aws
  • log-shipper
  • monitoring-kubernetes
  • upmeter
  • user-authn

Significant Changes

New Deckhouse update mechanism

Now you can define update windows, in which Deckhouse can update to a newer release. Also, you can set the manual update mode, in which your approval is required to update Deckhouse to a more recent release.

Update mode is not affecting patch version updates.

Read the documentation for more information.

CIS benchmark compliance

Important changes in components to achieve compliance with CIS Benchmark.

Most of the changes are related to security, such as file and folder permissions, network bindings only to required interfaces, using certificates, rejecting anonymous access, etc.

New modules

pod-reloader

Provides the ability for automatic rollout on ConfigMap or Secret changes. It uses annotations for operating, runs on system nodes, and it's enabled by default.

local-path-provisioner

Provides a way for the Kubernetes users to utilize the local storage on each node.

Other Changes

[bashible]

  • Enhancement: remove unnecessary disruption when containerd config is changed.
  • Enhancement: mount CA certificates in CentOS distros into control-plane Pods.

[build]

[candi]

  • Fix interoperation with third-party registries.
  • Fix: bump Terraform vSphere driver to v2.0.2.

[cert-manager]

  • Fix: update acme-solver Secret if Deckhouse registry Secret was changed.

[cloud-provider-aws]

  • Fix: don't delete Ingress SecurityGroup Rule while deleting ELB backend Service.
  • Enhancement: add WithNAT layout.

[cloud-provider-gcp]

[deckhouse-controller]

[deckhouse]

[descheduler]

  • Enhancement: disable module in a single node cluster.

[dhctl]

  • Enhancement: get the address of the bastion host from Terraform outputs for bootstrap and destroy.

[global]

  • Enhancement: add additional parameters to configure access to registry (CA, scheme).
  • Enhancement: add metrics for calculating the maximum amount of nodes in a cluster (based on podSubnetCIDR, podSubnetNodeCIDR). Add an alert, triggered if the number of nodes > 90% of the calculated maximum.
  • Refactoring: migrate to Go 1.16.

[grafana]

  • Enhancement: update Node Dashboard to actual version. Add TCP TimeWait graph. Remove unnecessary panels (Systemd, hardware temp).

[istio]

  • Enhancement: add ingressGateway support for multicluster.

[log-shipper]

[node-manager]

  • Enhancement: add taint validation for NodeGroups.
  • Enhancement: add support for zero integer value of .spec.cloudInstances.standby in the NodeGroup. Zero value means "no standby nodes are needed".
  • Enhancement: store bashible apiserver context as a Secret.
  • Enhancement: cordon nodes before draining.
  • Enhancement: disable changing cri type of master NodeGroup in clusters with a single master.

[okmeter]

[operator-prometheus]

  • Enhancement: add validating admission webhook for CustomPrometheusRules. Bump prometheus-operator to v0.50.0. Refactor all PodMonitors and ServiceMonitors to use certificates from a Secret.

[prometheus-metrics-adapter]

[prometheus]

  • Enhancement: scrape metrics from Prometheus Longterm to check whether it has any trouble accessing the Main Prometheus.

[site][documentation]

[upmeter]

  • Fix bug when upmeter release fails in clusters managed by external providers.
  • Enhancement: add Liveness probe.
  • Fix rendering of smoke-mini templates.
  • Refactoring: rewrite hooks in Go.

[user-authn]

  • Fix: reorder dex certificate on SANs change (Subject Alternative Names).
  • Fix: dex concurrent requests fix.
  • Enhancement: validate bcrypt hash.
  • Fix: make applicationIngressCertificateSecretName optional for CR DexAuthenticator.

[user-authz]

  • Enhancement: count .* and .+ masks in limitNamespaces parameter as unrestricted access to namespaces.
  • Fix disabling allowScale in the ClusterAuthorizationRule CR.
  • Fix: forbid cluster scope requests.

[vertical-pod-autoscaler]

[vpa]

  • Fix set_maxallowed hook overflow error.

Ru

Компоненты, которые будут перезапущены в процессе обновления

  • Prometheus
  • cloud-provider-aws
  • log-shipper
  • monitoring-kubernetes
  • upmeter
  • user-authn

Важные изменения

Новый механизм обновлений

Стало возможным определять окна обновлений, в которые Deckhouse будет выполнять обновление релиза (смена в пределах минорной версии). Также, можно выбрать ручной режим обновлений, который требует ручное подтверждение для смены релиза Deckhouse.

Новый механизм не влияет на обновления patch-версий (они как и раньше будут применяться по мере появления).

Подробнее — в документации.

Соответствие CIS benchmark

Ряд важных изменений компонентов, чтобы соответствовать рекомендациям CIS Benchmark.

Большинство изменений касаются безопасности, например прав на файлы и папки, сетевые привязки только на необходимые интерфейсы, использование сертификатов, исключение анонимного доступа и т.п. Подобные работы проводятся постоянно, и раз за разом повышают уровень безопасности Deckhouse.

Новые модули

pod-reloader

Следит за набором Secret и ConfigMap, которые вы определили, чтобы в случае их изменения перезапустить определенный Deployment, Daemonset или Statefulset.

Модуль основан на Reloader, использует аннотации для работы, выполняется на системных узлах и включен по умолчанию.

local-path-provisioner

Делает работу с local storage чуть легче, обеспечивая создание storageClass и необходимой структуры папок на узлах.

Другие изменения

[bashible]

  • Улучшение: удалено лишнее прерывание работы узла, при изменении конфигурации containerd.
  • Улучшение: монтирование CA-сертификатов в CentOS.

[build]

[candi]

[cert-manager]

  • Исправление: обновление Secret'а acme-solver при изменении Secret'а registry Deckhouse.

[cloud-provider-aws]

  • Исправление: при использовании ELB, удаление Service теперь не приводит к удалению Ingress-правил SecurityGroup.
  • Улучшение: добавлена схема размещения WithNAT.

[cloud-provider-gcp]

[deckhouse-controller]

[deckhouse]

[descheduler]

  • Улучшение: модуль отключается в кластере, состоящим из одного узла.

[dhctl]

  • Улучшение получения адреса bastion-хоста. Снимает некоторые ошибки, которые могли возникать при создании и уничтожении кластера.

[global]

  • Улучшение: дополнительные параметры для настройки доступа к registry (CA, scheme).
  • Улучшение: добавлены метрики определения максимально возможного количества узлов в кластере (высчитываются на основе значений podSubnetCIDR, podSubnetNodeCIDR). Добавлен алерт по превышению 90% максимального количества узлов.
  • Рефакторинг: миграция на Go 1.16.

[grafana]

  • Улучшение: актуализирована версия Dashboard Node. Добавлен график TCP TimeWait. Удалены лишние панели (Systemd, hardware temp).

[istio]

  • Улучшение: добавлена поддержка ingressGateway для мультикластеров.

[log-shipper]

[node-manager]

  • Улучшение: добавлена валидация taint для NodeGroups.
  • Улучшение: добавлена возможность указывать нулевое значение .spec.cloudInstances.standby в параметрах NodeGroup'ы, подразумевающем, что standby-узлы не требуются.
  • Улучшение: bashible-контекст apiserver теперь хранится в Secret.
  • Улучшение: перед drain узла выполняется его cordon.
  • Улучшение: запрет смены типа cri у NodeGroup master-узлов, если в кластере только один master-узел.

[okmeter]

[operator-prometheus]

  • Улучшение: добавлен хук валидации CustomPrometheusRules. Обновлена версия prometheus-operator до версии v0.50.0. Рефакторинг PodMonitors и ServiceMonitors для использования сертификатов из Secret'а.

[prometheus-metrics-adapter]

[prometheus]

  • Улучшение: добавлены метрики проверки ошибок доступа Prometheus Longterm к Prometheus.

[site][documentation]

[upmeter]

[user-authn]

[user-authz]

  • Улучшение: добавлена интерпретация масок .* и .+ в качестве значений параметра limitNamespaces (подразумевает доступ без ограничений).
  • Исправление логики отключения allowScale в CR ClusterAuthorizationRule (мог не отключать, несмотря на настройки).
  • Исправление: запрет доступа к кластерным объектам (cluster scope), если у пользователя установлено ограничение доступа по Namespace.

[vertical-pod-autoscaler]

[vpa]

Don't miss a new deckhouse release

NewReleases is sending notifications on new releases.