Changelog since v1.26
En
Components that will be restarted during the update
- Prometheus/Grafana
ingress-nginx
cert-manager
control-plane-manager
node-manager
upmeter
user-authn
Significant Changes
cert-manager 1.5.4
The cert-manager
module runs cert-manager v1.5.4 in parallel with the old one (cert-manager v0.10.0, which is deprecated now).
The cert-manager
module can handle old (certmanager.k8s.io/v1alpha1
) certificates/issuers/ingress-annotations and new (cert-manager.io/v1
) at once.
New CRD becomes a default resource, so to observe previous versions run the following commands:
kubectl get certificates.certmanager.k8s.io
kubectl get clusterissuers.certmanager.k8s.io
kubectl get issuers.certmanager.k8s.io
Kubernetes cluster events exporter
The extended-monitoring module deploys events exporter to collect cluster events and to send metrics.
Specifying the maximum number of concurrently updating nodes in NodeGroup
The update.maxConcurrent
nogeGroup parameter specifies the absolute count or percent of concurrently updating nodes.
Grafana v8.2.4
It has improvements in Loki.
Custom Alertmanager
The CustomAlertmanager CRD allows linking an external or in-cluster Alertmanager.
New modules
chrony
Sync time on all nodes in a cluster using the chrony module.
Other Changes
[bashible]
- Fix: replace the use of
lsb_release
function byos-release
parser function.
[cloud-provier-yandex]
- Enhancement: autocreate static IP for master and terraform nodes.
[core]
- Refactor global hooks.
[dhctl]
- Fix: prevent Deckhouse restart when restarting the bootstrap process.
- Fix: use fs watcher to save state in cache.
[grafana]
- Fix the
Nodes
dashboard.
[ingress-nginx]
- Enhancement: add version 0.49.
[kube-api-server]
- Enhancement: add kubelet certificates verification.
[log-shipper]
[monitoring-custom]
- Refactoring: rewrite hooks in Go.
[monitoring-kubernetes-control-plane]
- Fix dashboard.
[monitoring-kubernetes]
- Fix: add lost VPA mappings for controllers and pods.
- Refactoring: rewrite hooks in Go.
[node-manager]
- Refactoring: Get rid of
node_lease_handler
hook. - Enhancement: add static NodeGroup example for BareMetal cluster.
- Fix OpenAPI specification —
cloudInstances
is required forCloudEphemeral
nodeType. - Fix: approve CSR requests from kubelet if the
DNSNames
field in CSR is empty.
[upmeter]
- Fix data loss and crashes caused by the merge of the absent probe status series.
- Fix agent memory leak.
- Fix garbage collection in
controller-manager
probe.
[user-authn]
- Enhancement: Update documentation, add diagrams showing how dex works.
- Enhancement: Do not use colons in DexClient ID.
- Fix: publish API certificate name.
[user-authz]
- Fix: add non resources URLs permissions for the SuperAdmin role.
[others]
- Internal: add GitHub Workflow to generate changelog automatically.
Ru
Компоненты, которые будут перезапущены в процессе обновления
- Prometheus/Grafana
ingress-nginx
cert-manager
control-plane-manager
node-manager
upmeter
user-authn
Важные изменения
cert-manager 1.5.4
Модуль cert-manager
запускает обновленный cert-manager версии 1.5.4 параллельно со старым (версии 0.10.0, который теперь считается устаревшим).
Модуль cert-manager
может работать как со старыми аннотациями certificates/issuers/ingress (certmanager.k8s.io/v1alpha1
), так и с новыми (cert-manager.io/v1
).
Ресурсы новой версии cert-manager являются ресурсами по умолчанию, чтобы обратиться к ним используйте например следующие команды:
kubectl get certificates.certmanager.k8s.io
kubectl get clusterissuers.certmanager.k8s.io
kubectl get issuers.certmanager.k8s.io
Exporter событий Kubernetes-кластера
Модуль extended-monitoring теперь собирает event’ы кластера Kubernetes и отдает их в виде метрик.
Указание максимального количества одновременно обновляемых узлов в NodeGroup
Параметр update.maxConcurrent
nogeGroup позволяет указать число или процент (от количества) узлов, которые могут одновременно обновляться.
Grafana v8.2.4
Улучшения в Loki.
Сторонний Alertmanager
CustomResource CustomAlertmanager позволяет указать сторонний внешний или внутрикластерный Alertmanager.
Новые модули
chrony
Синхронизирует время на всех узла в кластере с помощью модуля chrony.
Другие изменения
[bashible]
- Исправление: использование данных из
os-release
вместоlsb_release
.
[cloud-provier-yandex]
- Улучшение: автоматическое создание static IP для master-узлов и созданных terraform.
[core]
- Рефакторинг глобальных хуков.
[dhctl]
- Исправление: предотвращение перезапуска Deckhouse из-за перезапуска процесса bootstrap'а.
- Исправление: использование fs watcher для более правильного сохранения terraform state'а в кэше.
[grafana]
- Исправление Dashboard
Nodes
.
[ingress-nginx]
- Улучшение: добавлена возможность выбора версии 0.49.
[kube-api-server]
- Улучшение: добавлена проверка сертификатов kubelet.
[log-shipper]
- Исправление валидации CustomResource.
- Исправление фильтрации в Vector 0.14.
[monitoring-custom]
- Рефакторинг хуков, с переносом на Go.
[monitoring-kubernetes-control-plane]
- Исправление dashboard.
[monitoring-kubernetes]
- Исправление: контроллерам и Pod'ам добавлен потерянный VPA mapping.
- Рефакторинг хуков, с переносом на Go.
[node-manager]
- Рефакторинг: удаление хука
node_lease_handler
. - Улучшение: добавлен пример static NodeGroup для BareMetal-кластера.
- Исправление OpenAPI спецификации -
cloudInstances
является обязательным параметром, для nodeTypeCloudEphemeral
. - Исправление: подтверждать CSR-запросы с пустым полем
DNSNames
от kubelet.
[upmeter]
- Исправление потери данных и аварийного завершения.
- Исправление утечки памяти в агенте.
- Исправление ошибки при сборке мусора в пробе
controller-manager
.
[user-authn]
- Улучшение: Обновление документации и схем, объясняющих работу dex.
- Улучшение: Не использовать двоеточие при формировании DexClient ID.
- Исправление: имени сертификата, используемого при публикации API.
[user-authz]
- Исправление: роли SuperAdmin добавлен доступ к
non resource URLs
.
[others]
- Internal: добавлен GitHub Workflow для автоматической генерации списка изменений (changelog).