Vaadin Brings Java Framework to Kubernetes Clusters

Vaadin has updated its Java application development framework to make it simpler to deploy stateful applications on Kubernetes clusters and in cloud computing environments.

Version 23.3 of Vaadin Flow now includes two acceleration kits for Kubernetes and Azure Cloud to better enable horizontal scalability, high availability/failover, non-disruptive rolling updates and session replication for instances of Kubernetes running on-premises or in the cloud.

In addition, Vaadin has made available three additional user interface (UI) components—Spreadsheet, Tab Sheet and Tooltip—for building Java applications.

Vaadin Flow provides developers with an alternative to building Java applications without having to write HTML or JavaScript code.

Kimberly Weins, chief marketing officer for Vaadin, says organizations are looking for simpler ways to build and deploy the full-stack Java applications that are at the core of most enterprise IT environments on Kubernetes clusters.

In general, Kubernetes clusters are more cost-efficient because they make it simpler to scale applications up and down versus requiring organizations to overprovision infrastructure.

It’s not clear how quickly stateful Java applications are being deployed on Kubernetes clusters. As more complex software is developed, however, the percentage of applications written in Java—still the dominant programming language in the enterprise—should steadily increase.

Many of those applications will be stateful in the sense that they access local rather than external storage resources. Kubernetes provides access to storage using persistent volumes (PV). Upon creation, the PV is bound to the pod that requested the PersistentVolumeClaim (PVC). IT teams can then manage storage in Kubernetes via a PVC function to request storage; a PV to manage storage life cycle and a StorageClass function that defines different classes of storage services. This makes it possible to access data far beyond the lifespan of any given pod. Kubernetes volumes allow users to mount storage units to expand how much data they can share between nodes. Regular volumes will still be deleted if and when the pod hosting that particular volume is shut down. The permanent volume, however, is hosted on its own pod to ensure data remains accessible.

There is, of course, no shortage of options for building and deploying Java applications on Kubernetes clusters. Vaadin is making the case for a higher level of abstraction that accelerates the rate at which those applications can be built. Building a stateful application that accesses local storage resources is much more challenging than building a stateless application that stores data on an existing external storage platform.

Right now, the bulk of applications running on Kubernetes clusters are stateless but the percentage of applications that are stateful is starting to steadily increase as more applications are deployed in greenfield IT environments.

Mainstream adoption of Kubernetes in enterprise IT environments has been a long time coming. At the start of 2023, it appears that the percentage of workloads running on Kubernetes clusters is finally starting to increase. The challenge is finding the best way to accelerate the development of those applications as part of a larger IT modernization effort.

Mike Vizard

Mike Vizard is a seasoned IT journalist with over 25 years of experience. He also contributed to IT Business Edge, Channel Insider, Baseline and a variety of other IT titles. Previously, Vizard was the editorial director for Ziff-Davis Enterprise as well as Editor-in-Chief for CRN and InfoWorld.

Mike Vizard has 1723 posts and counting. See all posts by Mike Vizard