NEW! Mirantis Academy -   Learn confidently with expert guidance and On-demand content.   Learn More

< BLOG HOME

Streamline bare metal Kubernetes, etcd management, and more with Mirantis Kubernetes Engine 3.7.0

Eric Gregory - August 30, 2023
image

We’re pleased to announce the 3.7.0 major release of Mirantis Kubernetes Engine, bringing more flexibility—and simpler Kubernetes management—than ever before. 

Along with a jump to Kubernetes 1.27.4 (and all the enhancements that brings to bear), this release advances our ZeroOps vision for a simpler Kubernetes experience wherever you run your clusters. 

New features and enhancements in Mirantis Kubernetes Engine 3.7.0 include:

API for event cleanup in etcd

Kubernetes produces a ton of event objects in response to changes with resources like nodes, pods, or containers. Over time, those objects can clog up the etcd key-value store and disrupt functionality. While many event objects can be safely discarded, others may need to be retained—so operators need a way to perform maintenance simply, efficiently, and selectively.

With the 3.7.0 release, the Mirantis Kubernetes Engine API enables users to manually clean up Kubernetes event objects in etcd without using the etcd CLI. Users can specify whether all events should be deleted or only events with a certain time-to-live (TTL) as defined by the Kubernetes system. The API also includes a dry run parameter so you can return a list of events that will be deleted without actually deleting them. 

Here’s an example POST to the API using the dry run parameter:

AUTHTOKEN=$(curl --silent --insecure --data '{"username":"<username>","password":"<password>"}' <https://MKE_HOST/auth/login> | jq --raw-output .auth_token)
curl --insecure -H "Authorization: Bearer $AUTHTOKEN" <https://MKE_HOST/api/ucp/etcd/cleanup> --data '{"dryRun": true}'

After a cleanup, operators can initiate an etcd defrag via the MKE API to restore recovered space to availability, avoiding context-switching. 

MetalLB integration

For folks running clusters on bare metal, it can be a challenge to create Kubernetes services of the LoadBalancer type. Teams have often been forced to use suboptimal-for-production workarounds like NodePort services.

Mirantis Kubernetes Engine 3.7.0 gives users the power to create load balancers on bare metal with the integration of MetalLB, an open source component with features such as address allocation and external announcement. With MetalLB, the experience of creating externally-facing services is simpler and more standard.

Enhancements with NGINX Ingress Controller

With version 3.5.0, Mirantis Kubernetes Engine adopted NGINX Ingress Controller as its solution to route outsider traffic into users’ clusters. Now users can leverage the NGINX Ingress Controller to expand their capabilities:

  • Expose TCP and UDP services using NGINX Ingress Controller, enabling more protocol options.

  • Use TLS passthrough to pass un-decrypted data through the NGINX Ingress Controller to a web server.

  • Change default ports for the Ingress Controller from the Mirantis Kubernetes Engine web UI, and configure options like SSL passthrough and container ports for servicing HTTP and HTTPS traffic from an MKE configuration file. 

Automated rollback after upgrade failure

In production environments, infrastructure changes like software upgrades are generally performed during pre-defined maintenance windows. Maintenance windows are limited in time and the upgrade process needs to be completed within the allocated timeframe. But sometimes upgrades fail, and when this happens, recovery can be time-consuming. 

With Mirantis Kubernetes Engine 3.7.0, failed upgrades automatically rollback to the previous configuration and state, so users don’t lose valuable time and availability while resolving an issue. For a deeper dive into this and other ZeroOps features, check out our separate blog, Mirantis Kubernetes Engine 3.7.0 delivers ZeroOps for Day 2 operations.

Prometheus metrics for core components

Richer metrics for a Kubernetes platform enable teams to more closely monitor system health and proactively resolve issues. Mirantis Kubernetes Engine 3.7.0 exposes Prometheus metrics for components including…

  • Kube State Metrics

  • Kubernetes Workqueue

  • Kubelet

  • Kube Proxy

  • Kube Controller Manager

  • Kube API Server

  • Calico

  • RethinkDB

  • etcd

Learn more

Other changes in this release include SAML proxy support, the option to use Multus CNI, and more. Please refer to the release notes for a complete list of changes and enhancements in Mirantis Kubernetes Engine 3.7.0, and don’t hesitate to contact uswith any questions.

Choose your cloud native journey.

Whatever your role, we’re here to help with open source tools and world-class support.

GET STARTED
NEWSLETTER

Subscribe to our bi-weekly newsletter for exclusive interviews, expert commentary, and thought leadership on topics shaping the cloud native world.

JOIN NOW