Since the first Red Hat OpenShift release in 2015, Red Hat has put out numerous releases based on Kubernetes. Five years later, Kubernetes is celebrating its sixth birthday, and last month, we announced the general availability of Red Hat OpenShift Container Platform 4.5. In this article, I offer a high-level view of the latest OpenShift release and its technology and feature updates based on Kubernetes 1.18.
Although OpenShift 4.5 brings many improvements by itself, many other Red Hat contributions enhance the developer experience with this release. Figure 1 shows the range of additional technology updates that improve the operational and development experience when using OpenShift 4.5.
Note: No two developers are the same. Developers have different skill sets, backgrounds, and prefer different development environments. Some developers want to concern themselves with platform details, and some do not. At Red Hat, we focus on meeting developers where they are and providing stability and experience improvements in popular open source projects as part of our developer tooling.
OpenShift 4.5 includes the Kubernetes 1.18 release, which was focused on fit-and-finish work that provided stability for high-scale operations. Developer experience improvements to OpenShift Container Platform 4.5 include web console updates, one-click navigation to add health check probes to your deployments, a unified experience for virtual machines alongside your containers, and easy access to command-line tools in a web terminal. Figure 2 shows the new one-click navigation tool for adding health checks to your deployments.
OpenShift Serverless 1.7.2 delivers updates to Knative Serving 0.13.3, Knative Eventing 0.13.0, and the associated command-line interface (CLI) tool,
kn 0.13.2. Altogether, these updates provide serverless autoscaling to and from zero, flexible traffic routing, and secure connections across your Kubernetes applications. The OpenShift web console enables simple event source creation.
OpenShift Service Mesh
OpenShift Service Mesh 1.1.5 brings upgrades to Istio 1.4.8, Jaeger stream support via Kafka, and linking to the Kiali web console from OpenShift's web console. Istio 1.4 enables automatic mutual TLS sidecar improvements. It also supports users in disconnected environments for offline installation.
OpenShift 4.5 offers updates for command-line tooling like
odo, Helm, and the
oc new-app command.
odo 2.0 is a CLI for developers who write, build, and deploy applications on OpenShift. It uses a
git push-style syntax that is familiar to developers, is included with OpenShift, and provides a new way for developers to iterate on code. The
odo 2.0 release features support for Kubernetes, as well as OpenShift, and provides an open model for tools through a standard definition and rapid, iterative development. This new model and rapid development are available for Java using Quarkus, Node.js, and Python in technical preview. All of the IDE extensions for OpenShift leverage
odo, bringing iterative development and deployment flows directly to developers.
Helm 3.2 is a package manager for Kubernetes that helps developers create templated packages called charts for installing and updating applications. The latest updates include displaying rich chart descriptions in the developer catalog and managing the Helm release lifecycle with features such as upgrade and rollback directly in the OpenShift console.
oc new-app command now defaults to creating Kubernetes deployments, and can also create OpenShift
OpenShift 4.5 offers a collection of CI/CD updates as well, from OpenShift Pipelines to Tekton Hub, Red Hat extensions for IDEs, and Argo CD.
OpenShift Pipelines 1.1 automates and controls application delivery across on-premises and public cloud platforms with maintenance-free Kubernetes-native CI/CD pipelines. The latest update adds enhancements for Git webhooks, credentials management for private Git repositories, and image registries and insights into pipeline metrics in Prometheus.
Furthermore, Tekton Hub was launched within the Tekton community as a central hub for discovering and using Tekton resources in pipelines.
Argo CD is a declarative continuous delivery tool for Kubernetes following the GitOps pattern of treating Git repositories as the source of truth for application and infrastructure configuration and deployments. Red Hat recently joined the Argo CD community as a member of the steering committee in order to bring Argo CD into the OpenShift portfolio of developer tools.
Red Hat extensions for CI/CD systems
Red Hat extensions for CI/CD systems allow teams to get the most out of OpenShift and Kubernetes while using the CI/CD tools that best fit their needs. We updated our Tekton extension for VS Code. These CI/CD extensions allow developers to execute commands to OpenShift and Kubernetes for Azure DevOps, GitHub Actions, Jenkins, and Tekton. You also can run CI/CD jobs on the cluster using Tekton, Jenkins, and the newly announced option to run GitLab runners on OpenShift.
IDEs and extensions
OpenShift 4.5 also interacts with a number of IDE-related improvements.
Red Hat CodeReady Workspaces
Red Hat CodeReady Workspaces 2.2 uses Kubernetes and containers to provide development or operations team members with a consistent, secure, and zero-configuration development environment. This release allows for faster workspace loading—and what developer doesn't love faster tools? Also, it is possible to support multiple devfile registries, which allows for additional language, framework, and runtime support from various sources. You can tune workspaces with appropriate Kubernetes requests and limits to optimize resource utilization and performance.
Red Hat CodeReady Studio
Red Hat CodeReady Studio 12.16 is an Eclipse-based IDE preconfigured to support Red Hat's application development components and tools. This update allows you to create secure URLs (routes) for your OpenShift application components. Other updates include new versions of Hibernate and Wildfly.
Red Hat extensions for IDEs
Red Hat extensions for IDEs are designed to let teams use the tools that they already have, but also take advantage of new technologies like OpenShift, Kubernetes, Kafka, Camel, Quarkus, Tekton, and many more. We've updated our IDE extensions for the VS Code and JetBrains IDEs, including IntelliJ and Pycharm.
With the recent addition of Quarkus as a supported runtime in Red Hat's application services portfolio, developers can use Quarkus with JVM optimizations that reduce startup time and memory consumption for new Java applications. Quarkus makes Java well-suited for cloud-native, microservices, and event-driven application architectures. Further, it spurs innovation beyond the runtime with an ecosystem of application extensions that configure, boot, and integrate a framework or technology into the Quarkus application.
Note: OpenShift 4.5 includes many more updates. Be sure to check out Red Hat Developer's Middleware and Application Services page for details.
There is only so much that I can include in this report. With more time, I would add details about consuming application services via automated operations from the Red Hat Marketplace and community Kubernetes Operators via OperatorHub.io. I would also add details about specific updates for any of the VS Code extensions in OpenShift 4.5.
We work hard to deliver tools and services that bring joy to many kinds of developers working across Kubernetes and OpenShift. One way we accomplish this is by getting feedback early and often. You can get involved by joining our hosted feedback sessions or submitting feedback directly to any of the open source projects that interest you. You can also visit the Red Hat developer tools portal to learn more and get started with the tools mentioned in this article.Last updated: August 17, 2020