Winter is almost over, and spring is just around the corner. If you look carefully, you’ll notice that here comes the sun, and with it, many interesting Kyma changes. Read on to find out more!
See the overview of all changes in this release:
- General - support for Kubernetes 1.25, migration guide actions, plans to remove the Blog and Community sections from the website
- Application Connectivity - use the
kyma-system
Namespace for Compass Runtime Agent - Observability - New example on how to collect and export metrics based on OpenTelemetry
- Telemetry - Fixes and an update to third-party versions for logging and tracing
- Eventing - NATS server updated to
v2.9.14
, Subscription updates - Serverless - Node.js 18 runtime introduction, deprecation of Node.js 14 runtime, forthcoming removal of
serverless.kyma-project.io/v1alpha1
General
Kubernetes 1.25 support
Now, we officially support Kubernetes in version 1.25. For more information about changes in Kubernetes version 1.25, see the Kyma 2.9 release notes.
Migration
You'll need a few cleanup actions when updating to the newest version. For more information, read the 2.11-2.12 Migration Guide.
Blog and Community sections removal
We're planning to restructure our Kyma website. Soon, the Community section will be removed, and the whole content will be kept in our Kyma community
repository.
In addition, the Blog section will also be removed in the future. Worry not! All Kyma release notes will be available on the Kyma release page on GitHub and the blog posts on the SAP community portal.
Stay tuned for more information.
Application Connectivity
With Kyma 2.12, the Compass Runtime Agent component will use the kyma-system
Namespace instead of compass-system
.
When you upgrade Kyma from version 2.11 to 2.12, the old component deployed in the compass-system
Namespace won't be removed automatically.
If you're using Compass Runtime Agent, you must execute the script after successfully migrating from Kyma 2.11 to Kyma 2.12. If not, no additional action is required.
For more information, read the 2.11-2.12 Migration Guide.
Observability
Monitoring
- We have added a new example that illustrates collecting and exporting metrics using only OpenTelemetry technology.
- To decouple the Kyma components from the monitoring stack, all components have been refactored to use annotation-based metrics scraping instead of leveraging ServiceMonitors. Therefore, you must follow the 2.11-2.12 Migration Guide to clean up ServiceMonitors of the system components. Also, the bundled rules for Loki have already been removed. With that, the system components have no direct dependency on the Monitoring module anymore.
- As announced in the release notes of Kyma 2.11, the Monitoring module has been deprecated. All relevant documentation pages contain the deprecation note.
Telemetry
Logging
- A bug that caused Fluent Bit to print errors on startup has been fixed. Check this issue for more information.
- Fluent Bit has been updated to the 2.0.9 version.
Tracing
- Since this release, the Kyma Dashboard extension for TracePipeline supports custom headers for OTLP outputs.
- Warnings at the startup of
otel-collector
have been removed. otel-collector
has been updated to version 0.72.0.
Eventing
NATS server
The NATS server image has been updated to v2.9.14
. For more details, see the NATS server release notes.
Updated Subscription CRD
With this release, we have upgraded event Subscriptions from v1alpha1
to v1alpha2
. This simplifies subscribing to events by removing the need for a prefix on the NATS/Jetstream backend. With the new version, we have also removed the previous modification of the event type during dispatching. The old Subscriptions will be upgraded automatically. For more details, check the updated tutorials.
Serverless
Introducing Node.js 18 Serverless runtime
With Kyma 2.12, we have introduced new Node.js 18 runtime for your Functions.
Deprecation of Node.js 14 Serverless runtime
Because of the planned EOL for Node.js 14 we are planning to remove Node.js 14 from the list of the supported runtimes.
For now, we recommend that you don’t use Node.js 14 as a runtime for your new Functions and re-configure all your existing Node.js 14 Functions to run on the latest available Node.js runtime.
See this blog post to learn how to update existing Functions.
Reminder about new Serverless API version
As of Kyma 2.6, the serverless.kyma-project.io/v1alpha1
API has been deprecated.
We are getting close to the end of the 6-month depreciation period. Therefore, with the next Kyma release (2.13), we plan to stop supporting the deprecated API and support only serverless.kyma-project.io/v1alpha2
.
The conversion webhook that handles the conversion between the versions on the fly will be removed with Kyma 2.13.
Don't wait that long and adjust your Function manifests (YAML files) to the new version of the serverless.kyma-project.io/v1alpha2
as soon as possible.
Changelog
2.12.0 (2023-03-14)
Serverless
Documentation
Committers: 2
2.12.0-rc2 (2023-03-10)
Serverless
- #17033 Document example with Python OTEL skd (#17025) (@kwiatekus)
Eventing
- #17046 Bumped api-gateway-webhook-certificates image in Eventing - Rel-2.12 (@mfaizanse)
- #17047 Allow input of event types in busolas subscription form in the simple - Rel 2.12 (@mfaizanse)
Documentation
- #17033 Document example with Python OTEL skd (#17025) (@kwiatekus)
Committers: 4
- Grzegorz Karaluch (@grego952)
- Krzysztof Kwiatosz (@kwiatekus)
- Michał Kalke (@MichalKalke)
- Muhammad Faizan (@mfaizanse)
2.12.0-rc1 (2023-03-08)
Api Gateway
- #17011 Bump api-gateway to 1.4 (@werdes72)
- #16967 Bump postgres image to 11.19-alpine3.17 (@videlov)
Application Connector
- #16978 Remove PR images from application-connector code before release 2.12 (@koala7659)
- #16917 add note on Istio sidecar injection (@grego952)
- #16525 Change Compass Runtime Agent namespace to kyma-system (@mvshao)
Serverless
- #16990 Exclude default
request
auto-instrumentation in python functions (@kwiatekus) - #16989 change alpha1 to alpha2 in AC and Eventing tutorials (@grego952)
- #16986 change alpha1 to alpha2 in Trigger a workload with an event (@grego952)
- #16920 Include nodejs18 in serverless integration and benchmark tests (@kwiatekus)
- #16918 Add nodejs18 in function controller (@kwiatekus)
- #16965 Deprecate nodejs14 runtime - remove from docs (@kwiatekus)
- #16925 Move function profile overrides from the test-infra scripts (@pPrecel)
- #16892 Remove dependencies to compass-system Namespace (@mvshao)
- #16869 Fix regression in response formatting in nodejs16 runtime (@kwiatekus)
Eventing
- #17007 Clean up the comments in Subscription v1alpha2. (@friedrichwilken)
- #16944 Fix Eventing controller makefile recipe indentation (@marcobebway)
- #16945 Fix Eventing tutorial (@marcobebway)
- #16921 Added tests for exact type matching in Eventing FI tests (@mfaizanse)
- #16916 Fix time comparisons for NATS in Eventing FI tests (@mfaizanse)
- #16900 Bumped NATS version to 2.9.14 (@mfaizanse)
- #16905 Globalized subscription names in Eventing FI tests (@mfaizanse)
- #16896 Removed JetStream atLeastOnceCheck test in Eventing FI tests (@mfaizanse)
- #16548 bump CPU limit to 1k to support same load as epp (@k15r)
- #16522 add metric for dispatch duration in nats dispatcher (@k15r)
- #16772 Update security context for the Eventing components (@marcobebway)
- #16771 Change loglevel for unneccessary info messages to debug (@k15r)
- #16553 change epp linter config (@k15r)
- #16756 Fixed NATS config comparison (@mfaizanse)
Service Mesh
Monitoring
- #16873 updated alpine to 1.17.2 (@a-thaler)
- #16858 update to alpine 1.17.2 for third-party-images (@a-thaler)
- #16816 Fix Kyma 2.12.0 cleanup script (@skhalash)
- #16814 Revert "Temporarily re-add FluentBit ServiceMonitor" (@skhalash)
- #16813 Convert logging, tracing to annotation-based Prometheus scraping (@skhalash)
- #16810 Convert serverless to annotation-based Prometheus scraping (@skhalash)
- #16805 Convert api gateway, istio, ory to annotation-based Prometheus scraping (@skhalash)
- #16761 Convert eventing to annotation-based Prometheus scraping (@skhalash)
- #16769 Add deprecation notes for monitoring component (@shorim)
- #16792 Always disable scraping for kube-state-metrics service (@skhalash)
- #16766 Temporarily re-add FluentBit ServiceMonitor (@skhalash)
- #16740 Convert telemetry to annotation-based Prometheus scraping (@skhalash)
Logging
- #16858 update to alpine 1.17.2 for third-party-images (@a-thaler)
- #16764 update fluentbit to 2.0.9 (@a-thaler)
- #16781 remove init container from fluentbit (@rakesh-garimella)
- #16767 Always have dynamic-parsers config file (@rakesh-garimella)
Tracing
- #16851 Remove unused network policy (@rakesh-garimella)
- #16831 Remove Telemetry Component from Kyma repository (@hisarbalik)
Documentation
- #16989 change alpha1 to alpha2 in AC and Eventing tutorials (@grego952)
- #16986 change alpha1 to alpha2 in Trigger a workload with an event (@grego952)
- #16985 Change link in 2.12 Migration Guide (@mvshao)
- #16876 Change the migration script name (@mvshao)
- #16964 fixed link in migration guide (@a-thaler)
- #16965 Deprecate nodejs14 runtime - remove from docs (@kwiatekus)
- #16917 add note on Istio sidecar injection (@grego952)
- #16945 Fix Eventing tutorial (@marcobebway)
- #16857 Fix broken links in Telemetry docs (@IwonaLanger)
Committers: 32
- Aleksei Chernyshov (@Teneroy)
- Andreas Thaler (@a-thaler)
- Christoph Kleineweber (@chrkl)
- Filip Strózik (@pPrecel)
- Friedrich (@friedrichwilken)
- Grzegorz Karaluch (@grego952)
- Hisar Balik (@hisarbalik)
- Iwona Langer (@IwonaLanger)
- Jan Wozniak (@wozniakjan)
- Karol Szwaj (@cnvergence)
- Korbinian Stoemmer (@k15r)
- Krzysztof Kwiatosz (@kwiatekus)
- Mansur Uralov (@muralov)
- Marco Bebway (@marcobebway)
- Mostafa Shorim (@shorim)
- Muhammad Faizan (@mfaizanse)
- Natalia Sitko (@nataliasitko)
- Patryk Strugacz (@werdes72)
- Piotr Halama (@halamix2)
- Przemyslaw Golicz (@koala7659)
- Rafal Foks (@mvshao)
- Rakesh Garimella (@rakesh-garimella)
- Stanislav Khalash (@skhalash)
- Tarik Özkahraman (@TarikOez)
- Tim Riffer (@triffer)
- Vladimir Videlov (@videlov)
- Vladislav Paskar (@vpaskar)
- Wojciech Nawa (@VOID404)
- Wojciech Wrzalik (@ralikio)
- Zhoujing Wang (@zhoujing2022)
- @kasiakepka
- marcin witalis (@m00g3n)