Skip to content

Releases: kyma-project/kyma

2.3.0-rc2

02 Jun 13:56
6015f8e
Compare
Choose a tag to compare
2.3.0-rc2 Pre-release
Pre-release

2.3.0-rc1 (2022-06-01)

Application Connector

  • #13984 Remove Application Registry and Connector Service from the Kyma documentation (@majakurcius)
  • #13891 Removal of the Application Registry, Connector Service and Connection Token Handler sources (@mvshao)

Serverless

Eventing

Security

Monitoring

Logging

Documentation

Committers: 41

2.3.0-rc1

01 Jun 13:09
Compare
Choose a tag to compare
2.3.0-rc1 Pre-release
Pre-release

2.3.0-rc1 (2022-06-01)

Application Connector

  • #13984 Remove Application Registry and Connector Service from the Kyma documentation (@majakurcius)
  • #13891 Removal of the Application Registry, Connector Service and Connection Token Handler sources (@mvshao)

Serverless

Eventing

Security

Monitoring

Logging

Documentation

Committers: 41

2.2.0

04 May 07:24
16d6352
Compare
Choose a tag to compare

Not so long ago in a galaxy not so far away, there was a friendly kingdom of Kyma-land ruled by king Kyma the Wise. The king once said: “It is time to improve our kingdom so that we all can lead even happier lives”. As the king had never made an empty promise, he introduced many features, such as a complete setup of the Istio metrics, Istio upgrade to 1.13.2, overriding Function runtime image and improved Eventing backend custom resource (CR) status. Read more if you want to learn about other ideas the king came up with!

API Gateway

ORY stack deprecation note

Due to the growing demand for a closer integration with our Service Mesh Istio implementation, we decided to gradually switch from the current implementation behind Kyma API Gateway (ORY Hydra and ORY Oathkeeper) to Authentication and Authorization features that Istio provides out of the box. With this change, we introduce more options in terms of configuration, flexibility, and performance to our customers. Additionally, we want to keep the Kyma stack as lean as possible.

The changes will be introduced gradually. We plan to provide as much automated migration as possible to ensure the smooth growth of Kyma API Gateway. This is just initial information, no action is required.

CLI

Removed support for Kyma 1.x

As announced in the Kyma 2.0 release notes, starting from the version 2.2, Kyma CLI no longer supports Kyma 1.x versions. All the deprecated commands have been removed and are no longer available:

  • kyma install: Kyma 2.x equivalent is kyma deploy
  • kyma upgrade: Kyma 2.x equivalent is kyma deploy
  • kyma console: Kyma 2.x equivalent is kyma dashboard
  • kyma provision minikube: Kyma 2.x equivalent is kyma provision k3d

Eventing

Improved Eventing backend CR status

We have made the Eventing backend CR status more verbose. We've replaced two of the three booleans, publisherProxyReady and subscriptionControllerReady, with the Kubernetes conditions. The eventingReady boolean remains unchanged.

Observability

Improved documentation on monitoring limitations

We added a new section outlining the limits of the shipped monitoring stack running on the production profile with the default settings. Read Monitoring limitations for more information.

Cleanup of rules and dashboards

We've continued to clean up Prometheus rules and Grafana dashboards. Several rules for Kubernetes introduced by Kyma itself have been removed, as they overlapped with the community-based rules. With that, the monitoring chart is fully based on the rules provided by the community upstream chart. Also, one more Kubernetes-related Grafana dashboard called Kyma / Pods has been removed, as it overlapped with the existing dashboards.

Complete Istio metrics

The Istio metrics setup, coming with the Kyma monitoring feature, now follows the approach recommended by Istio and provides all Istio metrics as aggregations over workload. Read Observability Best Practices for more information.

Minor upgrade of Fluent Bit

The Fluent Bit log collector, included in the Kyma logging stack, has been updated to the 1.9 release series. It brings major improvements in stability and performance.

Minor upgrade of Kiali

Kiali has been upgraded to version 1.49 and is fully supporting Istio 1.13.

Serverless

Overrides for the Function runtime image

We've extended the definition of the Function CR. Now you can override the base image of the Serverless runtime with a custom Docker image.

You may need this feature if you want to build your Functions on top of a runtime with tooling that is not included in the default Alpine-based runtime (for example, the GCC compiler).

Remember that, if you use a custom base image for your Functions, you are responsible for scanning and assessing any potential risks related to commonly known vulnerabilities that are potentially exploitable.

There is a dedicated example defining a custom runtime and a tutorial explaining how to use it in your Functions.

Service Mesh

Revert to distroless Istio images provided by Istio

With the 2.2 Kyma release, both Istio control plane and data plane again use distroless images provided by Istio.

Istio upgraded to 1.13.2

We've upgraded Istio from 1.12.3 to 1.13.2. For more details on the introduced changes, read the official Istio 1.13.2 release notes.


2.2.0-rc1 (2022-04-28)

Application Connector

  • #14102 Prow approval flow is not used. OWNERS files are not needed. (@dekiel)
  • #14008 Bump Compass Runtime Agent (@franpog859)
  • #13837 Update OWNER files in application-connector to new guidelines (@koala7659)
  • #13810 Fix Application connector port names in services to comply with Isti… (@cnvergence)
  • #13571 Add correlation ID to requests in compass runtime agent (@krasish)
  • #13627 Change the commerce-mock version used in fast integration tests (@mvshao)

Serverless

Eventing

Read more

2.2.0-rc1

28 Apr 08:05
Compare
Choose a tag to compare
2.2.0-rc1 Pre-release
Pre-release

2.2.0-rc1 (2022-04-28)

Application Connector

  • #14102 Prow approval flow is not used. OWNERS files are not needed. (@dekiel)
  • #14008 Bump Compass Runtime Agent (@franpog859)
  • #13837 Update OWNER files in application-connector to new guidelines (@koala7659)
  • #13810 Fix Application connector port names in services to comply with Isti… (@cnvergence)
  • #13571 Add correlation ID to requests in compass runtime agent (@krasish)
  • #13627 Change the commerce-mock version used in fast integration tests (@mvshao)

Serverless

Eventing

Read more

2.1.3

12 Apr 12:18
1755e21
Compare
Choose a tag to compare

2.1.3 (2022-04-12)

Application Connector

Service Mesh

Committers: 3

2.1.2

06 Apr 08:17
3ed3c0f
Compare
Choose a tag to compare

2.1.2 (2022-04-05)

Serverless

Eventing

Security

Service Mesh

Monitoring

Documentation

Core and Supporting

Committers: 6

2.1.1

29 Mar 07:23
5d0a330
Compare
Choose a tag to compare

2.1.1 (2022-03-28)

Eventing

Committers: 2

2.1.0

25 Mar 14:16
5c5bf35
Compare
Choose a tag to compare

Ahoy, mateys! We're calling at the port again to load up with a fresh portion of new features, improvements, and upgrades, but also to unload stuff that we no longer need on this journey and that's been slowing us down. Support for Kubernetes 1.21, a new alpha option for the deploy command, support for non-alphanumeric characters in event types, upgrade of the whole Monitoring component, and Istio refactoring are just some of those things that we happily bring aboard. Read on to find out more about this Kyma 2.1 ship!

CAUTION: Before upgrading to Kyma 2.1, read the Migration Guide.

General

With release 2.1, we now officially support and test against Kubernetes 1.21.

CLI

The deploy command: try the new dry-run option in the alpha version

With this release, a new dry-run option was added to the deploy command. It lets you trial-run the YAMLs for your Kubernetes resources and see what the output would be if they were deployed. Mind that for now, the option is in the alpha version. It cannot be used yet to apply a full Kyma installation, as the components having custom installation routines (such as Istio) are not included in the generated manifests. See the Kyma CLI documentation for more details.

The deploy command: specify components with downloadURL and version

Another addition to the deploy command is an extension to the --component flag. Previously you could specify the name and namespace for the component. Now you can also specify the two additional parameters: downloadURL and version. Again, refer to the CLI documentation for more details.

Generate schema for Function manifests

We improved the development experience for Functions developers. We added schema generation for the config.yaml manifests. This, when combined with dedicated plugins in your IDE, helps you avoid mistakes via validation and autocompletion.

  • If you use the VSCode IDE to develop Function code, just use the --vscode option when generating the Function project:

    kyma init function --vscode

    This command creates the .vscode folder, which contains the schema for config.yaml. Install the YAML plugin in your IDE and VSCode will automatically pick it up for validation and autocompletion.

  • If you just want to generate the schema, use the following command:

    kyma get schema serverless

    This will print out the JSON schema so that you can import it in your preferred IDE.

Support for Gardener cluster hibernation added

Starting with Kyma 2.1, it is now possible to specify a hibernation schedule for a Kyma cluster which was created using the kyma provision gardener command. To do so, specify a hibernation schedule by providing cron expressions for the start and end of the hibernation, and the timezone on which to base the schedule:

kyma provision gardener gcp -n my-cluster -p my-project -c /path/to/credentials.yaml -s gcp-secret --hibernation-start="00 18 * * 1,2,3,4,5" hibernation-end="00 09 * * 1,2,3,4,5" hibernation-location="Europe/Berlin" 

By default, all Gardener clusters have hibernation scheduled for weekdays at 6pm (18:00) in the Europe/Berlin timezone.

Provisioning commands for GKE, AKS, and AWS removed

With this release, we removed the support for provisioning Kyma clusters on the GKE, AWS, and AKS hyperscalers. Provisioning of a cluster via Gardener or k3d is still possible.

Eventing

Support for non-alphanumeric characters in event types

The naming in event types comes with certain restrictions.
Previously, we only supported ASCII alphanumeric characters from the range [a-zA-Z0-9]+. If your name contained an unsupported character, the event sending was failed.

Starting from this release, we no longer fail sending such events. Instead, the unsupported characters are automatically dropped from events sent to Kyma and also from event types specified in the Subscription CRD.

Read about the event names and Subscription CRD in more detail.

Observability

Kiali and Jaeger upgraded

With Kyma 2.1, the Kiali and Jaeger components were updated to the following recent versions:

  • Kiali 1.44
  • Jaeger 1.30.0

Monitoring upgraded

Speaking of upgrades, the different components of the Monitoring area also got one. While doing that, we felt inspired and updated the used Helm chart, too, and adapted it to the upstream charts. The components were upgraded to the following versions:

  • Node-exporter 1.3.1
  • Kube-state-metrics 2.3.0
  • Prometheus 2.32.1
  • Prometheus Operator 0.53.1
  • Alertmanager 0.23.0
  • Pushgateway 1.4.2
  • Grafana 7.5.15
  • Oauth2 Proxy 7.2.1

As the kube-state-metrics component got a major upgrade to version 2.x, some metrics were restructured.

The following table shows how the metrics were affected:

Previously Now
kube_pod_container_resource_requests_cpu_cores,
kube_pod_container_resource_limits_cpu_cores,
kube_pod_container_resource_requests_memory_bytes,
kube_pod_container_resource_limits_memory_byte
kube_pod_container_resource_requests,
kube_pod_container_resource_limits
kube_node_status_capacity_pods,
kube_node_status_capacity_cpu_cores,
kube_node_status_capacity_memory_bytes,
kube_node_status_allocatable_pods,
kube_node_status_allocatable_cpu_cores,
kube_node_status_allocatable_memory_bytes,
kube_node_status_capacity,
kube_node_status_allocatable
kube_daemonset_updated_number_scheduled kube_daemonset_status_updated_number_scheduled
kube_hpa_* kube_horizontalpodautoscaler_*

Furthermore, the envoy_ metrics exposed by the Istio sidecar running with every workload are not collected by default anymore.
However, we continue to collect the more relevant istio_ metrics, which are used in the Istio-specific dashboards.
It turned out that the envoy_ metrics were helpful only in advanced troubleshooting scenarios and introduced too big a cardinality of the metrics, resulting in big resource consumption. Still, you can enable them optionally.
See #issue 13659 for more details.

Grafana dashboards improved

Several improvements were applied to the dashboards that come with Grafana in Kyma:

  • The Loki dashboard was improved by adding a new top section with the most relevant metrics displayed.
  • All dashboards were adjusted to the metric changes coming with the major upgrade of kube-state-metrics.
  • The dashboards tagged as kubernetes-mixins were updated to the latest available version from the community.
  • node-exporter and Prometheus dashboards were replaced by the version provided by the community.
  • The Kyma frontends and backends dashboards were removed, as they had no additional value to the existing dashboards.
  • The Kyma Controllers dashboards were revamped to have relevant reconciliation metrics included, and they were rolled out to all Kyma controllers.

The alertmanager chart revamped

The Kyma alertmanager chart, which is a sub-chart of the Monitoring component, was refactored more heavily. Mainly, we tried to remove customizations that were in contrast to the available community chart, to simplify future updates.

With that, the following changes were applied:

  • The dedicated configuration options for VictorOps were removed. Use the typical options for configuration of notification channels instead.
  • New alert rules were added:
    • AlertmanagerFailedToSendAlerts
    • AlertmanagerClusterFailedToSendAlerts
    • AlertmanagerClusterFailedToSendAlerts Warning
    • AlertmanagerClusterDown
    • AlertmanagerClusterCrashlooping
    • ConfigReloaderSidecarErrors
    • KubeStateMetricsShardingMismatch
    • KubeStateMetricsShardsMissing
    • KubeAPITerminatedRequests
    • NodeFileDescriptorLimit
    • PrometheusLabelLimitHit
    • PrometheusTargetSyncFailure
    • PrometheusOperatorSyncFailed
  • The following alert rules were renamed:
    • AggregatedAPIDownKubeAggregatedAPIDown
    • AggregatedAPIErrorsKubeAggregatedAPIErrors

Logging chart updated and Loki improved

We updated the Logging component to the latest available FluentBit version, 1.8.13.
Furthermore, the label map for the Loki integration was improved:

  • Previously, we had the Kubernetes app label mapped to the Loki app label. Now, on top of that, we also mapped the label app.kubernetes.io/name to the Loki app label.
  • We mapped the label app.kubernetes.io/component to the Loki component label.
  • We removed the release and serverless.kyma-project.io/uuid labels to improve the chunk size handling in Loki.

Moreover, besides having data retention by time, we introduced a new sidecar taking care of data retention by size. With that, Loki will not crash anymore when reaching the volume size limit. Oldest data is deleted first.

Serverless

Node.js 12 deprecated

The base image for Node.js 12 will be maintained only until April 2022. Thus, following the recommendations from Node...

Read more

2.1.0-rc1

22 Mar 13:18
Compare
Choose a tag to compare
2.1.0-rc1 Pre-release
Pre-release

2.1.0-rc1 (2022-03-22)

Application Connector

Serverless

Service Catalog

  • #13536 fixing broken link after cleaning cluster-essentials (@strekm)
  • #13065 Fix Helm Broker port names in services to comply with Istio convention (@mjakobczyk)

Eventing

Read more

1.24.11

17 Feb 12:02
47b4783
Compare
Choose a tag to compare

1.24.11 (2022-02-17)

Eventing

Security

Monitoring

Committers: 5