2.9.0
Roses are red, violets are blue, and Kyma is ready with the new updates for you. This release comes with some interesting changes. For example, now we officially support Kubernetes in version 1.24. Read on to find out more about the 2.9 release!
General
With this Kyma release, Kubernetes gets officially supported in version 1.24. The default settings for the provision commands provided by Kyma CLI were also adjusted. For more details on this version, read the Kubernetes release notes.
While working on that, we've already taken major steps towards the next Kubernetes version 1.25 by cleaning all PodSecurityPolicies (PSP) and revising all SecurityContexts. Remember that you may need to replace your custom PSPs with the new security standards; click here for more information.
As we removed the generic Kyma PSP, your Pods may be prevented from being deployed now as the providers’ default policies are not fitting. During the upgrade to this Kyma version, you might need to introduce proper PSPs to compensate for the removal unless you've already disabled the PSP admission controller and switched to the new security admission model.
Follow this migration guide to learn how to clean up your Kyma resources from the PSP leftovers when you upgrade from Kyma 2.8 to 2.9.
Observability
Logging
As you've probably learned from this blog post, we decided to deprecate the Loki installation which is part of the Logging component. Please start the transition to alternative solutions. The actual removal will not happen sooner than in six months, with Kyma 2.15 at the earliest.
As announced in the release notes for Kyma 2.6, the Fluent Bit component got migrated from the Logging component to the Telemetry component. With this Kyma version, the old Fluent Bit setup finally got removed from the Logging component. Before you can upgrade to Kyma 2.9, you must follow this migration guide if you have not switched to the telemetry component yet.
Monitoring
In this release, we also updated Prometheus to version 2.39.1, Prometheus Operator to version 0.60.1, and OAuth2 Proxy to version 7.4.0.
For more details, see the release notes for Prometheus, Prometheus Operator, and OAuth2 Proxy.
Telemetry
Tracing preview
We are actively working on the possibility of integrating your trace backend based on OTLP. You can try out the first preview version by following this new trace demo. Give it a try and feel free to provide feedback on the related GitHub issue.
Serverless
Node.js 12 runtime deprecated
Node.js 12 has reached the end of its life. Therefore, followed by the depreciation of Node.js 12 Serverless runtime, we decided to finally remove it from the list of the available Function runtimes.
Your Node.js 12 Functions' workloads will continue to run, but you will not be able to edit them without changing the runtime
field. Sooner or later, you must change the spec of your existing Node.js 12-based Functions and change the runtime
field to either nodejs14
or nodejs16
.
For more information about the Node.js 12 deprecation, see the Kyma 2.1 release notes.
CLI
Adjust Function commands to the new API version
Following the recent API changes in Serverless, the related Kyma CLI commands were adjusted to comply with the serverless.kyma.project.io/v1alpha2
API version.
Eventing
NATS server
NATS server was updated to version 2.9.6. For more information read the NATS server v2.9.6 release notes.
The stream setup was modified for the case of full message storages. This state will now lead to the rejection of new messages and the return of error code 507
. These changes were introduced to prevent the deletion of old messages.
Changelog
2.9.0-rc2 (2022-11-18)
Eventing
Committers: 3
- Benjamin Lindner (@lindnerby)
- Korbinian Stoemmer (@k15r)
- Wojciech Sołtys (@Sawthis)
2.9.0-rc1 (2022-11-14)
Api Gateway
- #15877 Component test to expose workload with custom domain (@cnvergence)
- #15951 Remove PSP from ory charts (@barchw)
- #15979 Update postgres exporter image (@barchw)
Application Connector
- #15980 Remove PSP from CRA (@franpog859)
- #15566 Compass Runtime Agent tests - readme (@mvshao)
- #15924 Caching the OAuth tokens in Application Gateway (@mvshao)
- #15390 Prepare code initializing Compass Runtime Agent before Compass Runtime Agent runs (@akgalwas)
Serverless
- #16090 Replace serverless PR tags (@pPrecel)
- #16004 Migrate from RegisteredLoggers to the AtomicLevel (@pPrecel)
- #15999 Improve common logging to allow the use of AtomicLevel (@pPrecel)
- #15981 remove the
golangci.yml
file (@pPrecel) - #15946 Remove serverless psp (@pPrecel)
- #15971 Remove documentation about PSP in context of serverless functions (@pPrecel)
- #15949 Remove the
nodejs12
component (@pPrecel) - #15911 Fix health tests (@dbadura)
- #15876 Add missing timeout when notifying health channel (@pPrecel)
- #15868 Add one more useful debug log for the
function-controller
(@pPrecel) - #15851 Removal of mentions of Nodejs12 (@Cortey)
- #15746 Dynamic logging for the serverless webhook (@pPrecel)
Eventing
- #16088 Update Eventing images (@marcobebway)
- #16066 Add sink validation to validating webhook (@raypinto)
- #16049 Add Validation and Defaulting webhook for v1alpha2 subscriptions (@raypinto)
- #16020 Bump Eventing NATS image to 2.9.6 (@mfaizanse)
- #15975 Manually delete a manually created NATS consumer (@VladislavPaskar)
- #15940 bump gomega version to 1.23 in Eventing (@mfaizanse)
- #15899 Add new troubleshooting guide for consumer with pending messages (@VladislavPaskar)
- #15928 fix epp latency metric labels (@k15r)
- #15906 remove v1 to v2 status conversion and pretty print cleaneventtypes (@raypinto)
- #15908 Update EPP dependencies. (@marcobebway)
- #15896 Automate patching subscription CRD when new version is enabled (@raypinto)
- #15722 setup jetstream reconciler for v1alpha2 subscription (@raypinto)
- #15643 Add exponential buckets for the Event publisher proxy latency histogram (@marcobebway)
- #15608 Use the configured NATS URL as the destination service value for the Eventing publisher proxy custom metrics (@marcobebway)
- #15734 bump build image in Dockerfile to golang1.19.2-alpine3.16 in event-publisher-proxy (@friedrichwilken)
- #15733 bump build image in Dockerfile to golang1.19.2-alpine3.16 in eventing-controller (@friedrichwilken)
Service Mesh
Monitoring
- #15950 upgrade to oauth2-proxy 7.4.0 (@a-thaler)
- #15744 Disable PSP and configure securityContext properly for observability pods (@a-thaler)
Logging
- #16004 Migrate from RegisteredLoggers to the AtomicLevel (@pPrecel)
- #16072 Improved loki deprecation notes (@a-thaler)
- #15999 Improve common logging to allow the use of AtomicLevel (@pPrecel)
- #15835 Remove logging Fluent Bit (@skhalash)
- #15744 Disable PSP and configure securityContext properly for observability pods (@a-thaler)
Tracing
- #15960 [Telemetry Operator] - TracePipeline Secret rotation handling (@lindnerby)
- #15744 Disable PSP and configure securityContext properly for observability pods (@a-thaler)
Documentation
- #16072 Improved loki deprecation notes (@a-thaler)
- #14975 Add API versioning and deprecation policy (@varbanv)
- #15971 Remove documentation about PSP in context of serverless functions (@pPrecel)
- #15899 Add new troubleshooting guide for consumer with pending messages (@VladislavPaskar)
- #15926 Add note about zero-downtime upgrades (@NHingerl)
- #15851 Removal of mentions of Nodejs12 (@Cortey)
CI
- #15963 Remove test inrepo config. (@dekiel)
- #15904 deprecation: remove github-actions-stale (@Ressetkk)
Committers: 37
- Aleksei Chernyshov (@Teneroy)
- Andreas Thaler (@a-thaler)
- Andrzej Pankowski (@Cortey)
- Arkadiusz Galwas (@akgalwas)
- Bartosz Chwila (@barchw)
- Benjamin Lindner (@lindnerby)
- Borja Clemente (@clebs)
- Christoph Kleineweber (@chrkl)
- Damian Badura (@dbadura)
- Filip Strózik (@pPrecel)
- Franciszek Pogodziński (@franpog859)
- Friedrich (@friedrichwilken)
- Jan Mędrek (@janmedrek)
- Jan Wozniak (@wozniakjan)
- Kamil Kasperski (@Ressetkk)
- Karol Szwaj (@cnvergence)
- Korbinian Stoemmer (@k15r)
- Krzysztof Kwiatosz (@kwiatekus)
- Mansur Uralov (@muralov)
- Marcin Dobrochowski (@anoipm)
- Marco Bebway (@marcobebway)
- Mohamed Elsayed (@moelsayed)
- Muhammad Faizan (@mfaizanse)
- Nina Hingerl (@NHingerl)
- Piotr Halama (@Halamix2)
- Przemek Pokrywka (@dekiel)
- Przemyslaw Golicz (@koala7659)
- Rafal Foks (@mvshao)
- Raymond Pinto (@raypinto)
- Stanislav Khalash (@skhalash)
- Tim Riffer (@triffer)
- Varban Vasilev (@varbanv)
- Vladimir Videlov (@videlov)
- Wojciech Nawa (@VOID404)
- Wojciech Wrzalik (@ralikio)
- @VladislavPaskar
- @dariusztutaj