Skip to main content
Redhat Developers  Logo
  • Products

    Featured

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat OpenShift AI
      Red Hat OpenShift AI
    • Red Hat Enterprise Linux AI
      Linux icon inside of a brain
    • Image mode for Red Hat Enterprise Linux
      RHEL image mode
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • Red Hat Developer Hub
      Developer Hub
    • View All Red Hat Products
    • Linux

      • Red Hat Enterprise Linux
      • Image mode for Red Hat Enterprise Linux
      • Red Hat Universal Base Images (UBI)
    • Java runtimes & frameworks

      • JBoss Enterprise Application Platform
      • Red Hat build of OpenJDK
    • Kubernetes

      • Red Hat OpenShift
      • Microsoft Azure Red Hat OpenShift
      • Red Hat OpenShift Virtualization
      • Red Hat OpenShift Lightspeed
    • Integration & App Connectivity

      • Red Hat Build of Apache Camel
      • Red Hat Service Interconnect
      • Red Hat Connectivity Link
    • AI/ML

      • Red Hat OpenShift AI
      • Red Hat Enterprise Linux AI
    • Automation

      • Red Hat Ansible Automation Platform
      • Red Hat Ansible Lightspeed
    • Developer tools

      • Red Hat Trusted Software Supply Chain
      • Podman Desktop
      • Red Hat OpenShift Dev Spaces
    • Developer Sandbox

      Developer Sandbox
      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Secure Development & Architectures

      • Security
      • Secure coding
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
      • View All Technologies
    • Start exploring in the Developer Sandbox for free

      sandbox graphic
      Try Red Hat's products and technologies without setup or configuration.
    • Try at no cost
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • Java
      Java icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • API Catalog
    • Product Documentation
    • Legacy Documentation
    • Red Hat Learning

      Learning image
      Boost your technical skills to expert-level with the help of interactive lessons offered by various Red Hat Learning programs.
    • Explore Red Hat Learning
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

How to use Helm charts to deploy Data Grid on OpenShift

March 6, 2024
Francisco De Melo Junior Alexander Barbosa Ayala
Related topics:
HelmKubernetes
Related products:
Red Hat OpenShift

Share:

    In Red Hat OpenShift 4.x, the Operator framework became a fundamental part of the daily cluster operations, and we explain the Data Grid Operator in this Data Grid Operator installation article.

    The Data Grid Operator provides an easy and straightforward method for deploying a Red Hat Data Grid server. Once the Data Grid is deployed it can include features such as cross-site and JVM settings, which are set via the Custom Resources (CRs) consumed by the Data Grid Operator to build the Data Grid server.

    [ Learning path: Cross site and cross applications with Red Hat OpenShift and Red Hat Data Grid ]

    Another supported approach for deploying Data Grid in Red Hat OpenShift Container Platform (RHOCP) 4 is via the use of Helm charts, where the user installs the charts and passes a value YAML file to be deployed as a StatefulSet (sts).

    These are the only two supported approaches to deploy Data Grid in OpenShift Container Platform 4 given the absence of template/direct deployment in Data Grid, unlike Red Hat JBoss Data Grid 7. To cover this deployment method, which complements the Data Grid Operator, we will explain how to install a Data Grid server using the Data Grid Helm charts. We'll also discuss the use and limitations of this approach.

    Introduction

    Data Grid is Red Hat's supported solution for in-memory cache storage.

    A Helm chart is a popular approach to install resources using pre-made charts, which helps the development and provides a standardized way to customize the deployment (usually via a custom YAML file passed to the RHOCP cluster—comprised of values to be consumed by the Helm).

    The Red Hat Data Grid Helm charts are the official files we provide to deploy Data Grid directly on the RHOCP 4 environment and provide several embedded features ready for use. The Helm charts has two components: Helm and the charts.

    • Helm: the command-line process that processes the values YAMLs together with the chart itself.
    • Charts:  a collection of files in a specific structure already pre-made.

    To use the Helm charts, the user needs to add the Helm charts and then create a file that will be consumed by the Helm parser, called the value file.  The value YAML passes the information for the Helm charts on the Helm installation. Finally, Helm uses its CLI tool helm to select the specific details for installation: namespace, specific Helm chart, resource name, and the value YAML to be consumed. 

    Data Grid installation using Helm charts

    CLI installation

    Below is an example of a minimalistic custom value YAML file—to be passed on the Helm installation and consumed to create the Data Grid resources:

    $ cat jdg-values.yaml 
    images:
      server: quay.io/infinispan/server:14.0
      initContainer: registry.access.redhat.com/ubi8-micro
    
    deploy:
      replicas: 1
      container:
    extraJvmOpts: ""
    storage:
       size: 1Gi
    resources:
       limits:
         cpu: 1200m
         memory: 5Gi
       requests:
         cpu: 1000m
         memory: 3Gi
      security:
    batch: "user create admin -p changeme"

    To install Data Grid via Helm charts, use the helm command CLI as below.

    helm install --values jdg-values.yaml infinispan openshift-helm-charts/redhat-data-grid

    Another example is shown below.

    helm install infinispan openshift-helm-charts/redhat-data-grid --values jdg-values.yml

    Explanation: The example above creates a StatefulSet (STS) called Infinispan passing the values file above (called jdg-values.yml) and the official Helms will be openshift-helm-charts/redhat-data-grid.

    OpenShift web console installation

    Besides the CLI installation detailed above, it’s also possible to install the Helm chart via OpenShift web console by switching to the Developer perspective, then selecting the +Add option in the left panel and scrolling down to the Helm Chart option, as shown in Figure 1.

    Alt text
    Figure 1: Installing Helm chart via OpenShift web console.

    Then search the Data Grid Helm chart and create the project (Figure 2).

    Alt text
    Figure 2: Creating the project in OpenShift web console.

    Once selected, there is an option to add the custom value YAML with the required deployment options, as shown in Figure 3.

    Alt text
    Figure 3: Adding the custom value YAML.

    Data Grid Operator versus Data Grid via Helm charts

    First and foremost, Data Grid Operator already covers most use cases, and Red Hat's official recommendation is to use the Data Grid Operator we ship for its deployment. The Operator relies on Custom Resources (CRs), which are finely tuned and easy to manage covering the vast majority of use cases.

    However, for very specific use cases that involve certain customizations like using Memcached listener, Helm charts can be a better approach. For most of the other use cases, Data Grid Operator is the most useful, direct, and simple approach for deployment.

    Data Grid Operators and Helm chart deployment strategies differ in the different resources they create and how they manage these resources to achieve the same goal.

    Table 1 summarizes some of the main differences.

    Table 1: Comparing Data Grid Operator versus Data Grid Helm charts.

    Resource/Verb

    Data Grid Operator

    Data Grid Helm charts

    Pod deployments

    Data Grid manager deployment
    Data Grid config listener deployment
    Data Grid Gossip Router deployment
    Data Grid server pods StatefulSet

    Data Grid server pods StatefulSet

    Services

    Created and managed by the Operator, by creating an STS

    Deployed together with the StatefulSet

    Route

    Created and managed by the Operator

    Deployed together with the StatefulSet

    User interacts

    Using CRs

    Directly on the STS

    Helm CLI commands

    Table 2 shows the command list for Helm CLI.

    Table 2: Helm CLI commands.

    Command Purpose

    helm install

    Installs a certain chart passing some values—to provide a release.

    helm list 

    Lists the releases.

    helm get manifest 

    Lists all definitions; very useful for troubleshooting.

    Getting support

    For support and assistance, we encourage you to open a case with Red Hat and include some of the following details that may help to understand the issues you may encounter, including the value file and the namespace's inspect. See below.

    logging:
       - catalog: org.infinispan.SERVER
       level: debug

    We also collect the YAML value file that the user provides, also known as the values file.

    Finally, we can collect the manifest file with everything that is deployed:

    $ helm get manifest infinispan
    • For troubleshooting, we follow similar steps as the Operator, collecting the resources on that namespace like the pod YAML/pod logs/services/routes/StatefulSet, which comes in the inspect bundle:
      $ oc adm inspect namespace $NAME_PROJECT
    • Before running the inspect command above, it is very useful to collect the server logs with debug level so we can see the actual configuration being set—so the Data Grid pod logs/inspect will bring it.

    For more information, see the solution Troubleshooting Data Grid 8 deployed via Helm charts. Sometimes the problem might be as trivial as a value file parsing error, others can be more advanced, such as JVM settings misconfiguration.

    Conclusion

    Data Grid provides two methods of deployment and both are very straightforward: Data Grid Operator and Data Grid Helm charts.

    As Table 2 shows, using Data Grid Operator is much simpler and streamlined, given the Operator is the one that creates but also manages those resources. This means that changes in those resources are handled by the Data Grid Operator. On the one hand, the Data Grid Helm charts provide more flexibility in terms of deployment and especially management of resources, where the user uses the value file to create the resource. On the other hand, Data Grid Helm charts provide fewer embedded features than the Data Grid Operator.

    We recommend using the Data Grid Operator in most of the use cases for these reasons—ease of deployment, simpler troubleshooting, and embedded features—but also for managing resources, given the Data Grid Grid Operator deploys CRs and controls resources. Red Hat considers the Operator Framework to be considerably streamlined and a mature technology with vast applications and suitable for most of the use cases, but Red Hat's Data Grid Helm charts deployment is still supported.

    Additional resources

    To learn more about the DG Operator, see the Data Grid Operator Guide.

    For any other specific inquiries, please open a case with Red Hat support. Our global team of experts can help you with any issues.

    Special thanks to Will Russell for the review of this article.

    Related Posts

    • How to install and upgrade Data Grid 8 Operator

    • Integrate a Spring Boot application with Red Hat Data Grid

    • Build embedded cache clusters with Quarkus and Red Hat Data Grid

    • Develop and test a Quarkus client on Red Hat CodeReady Containers with Red Hat Data Grid 8.0

    • Five layers of security for Red Hat Data Grid on OpenShift

    • Build embedded cache clusters with Quarkus and Red Hat Data Grid

    Recent Posts

    • Create and enrich ServiceNow ITSM tickets with Ansible Automation Platform

    • Expand Model-as-a-Service for secure enterprise AI

    • OpenShift LACP bonding performance expectations

    • Build container images in CI/CD with Tekton and Buildpacks

    • How to deploy OpenShift AI & Service Mesh 3 on one cluster

    What’s up next?

    Cache configuration in Red Hat Data Grid

    Red Hat Data Grid is an in-memory, distributed, NoSQL datastore solution that boosts application performance, provides greater deployment flexibility, and minimizes the overhead of standing up new applications. This cheat sheet is a quick reference for creating and configuring Data Grid caches, complete with configuration examples.

    Get the cheat sheet
    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Products

    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2025 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue