Troubleshooting Java applications on OpenShift

What is it about?

OpenShift has seen a lot of traction with the release of its third version based on Kubernetes a couple of years ago. More and more companies after a thorough evaluation of OpenShift Container Platform (OCP) have built an on-premise or in the cloud PaaS. With the next step, they have started to run their applications on OCP. One of the important aspects of running applications in production is the capacity of quickly restoring services to the normal service level after an incident followed by the identification and the resolution of the underlying problem. In this respect, I want to present in this blog a few approaches for troubleshooting Java applications running on OpenShift. Similar approaches can be taken with other languages.

Debugging applications during development phase can be done thanks to features like:

  • Debug mode for resolving issues during startup.
  • Port forwarding for connecting an IDE like JBDS to an application running in a remote container and debugging it with breakpoints and object inspection.

This has been presented in blogs like here and here.

In this blog, on the contrary, I want to focus on troubleshooting applications in production and to cover things like capturing heap and thread dumps, resource consumption per thread. These are techniques that have more than once been helpful in the past for resolving deadlocks, memory leaks or performance degradation due to excessive garbage collection for instance.

Let’s get into the heart of the matter!

Continue reading “Troubleshooting Java applications on OpenShift”

Share

Introduction to NuGet with .NET Core on RHEL

Introduction to NuGet with .NET Core

NuGet is an open source package manager for the .NET Core ecosystem. For those familiar with Red Hat Enterprise Linux (RHEL), you can think of it as the “yum” for pulling libraries into your .NET Core project. Working with NuGet packages in .NET Core applications is accomplished primarily through your project’s .csproj file and the dotnet command-line interface.

Continue reading “Introduction to NuGet with .NET Core on RHEL”

Share

Red Hat Releases New Development Tools

I’m extremely pleased to announce the latest releases of our Red Hat developer tools, available on multiple platforms. The general theme of this release is expanded usability, product integration, expanded support for Middleware products in Development Suite, plus the brand new addition of Kompose and the DevTools channel for Red Hat Enterprise Linux.

This collection of tools has been assembled into an easy-to-use installer to help software developers quickly and easily put together a development environment to create containerized enterprise Java apps by installing OpenShift on their desktop. The Developer Tools Installer will automatically download, install and configure the selected tools on macOS, Windows and Red Hat Enterprise Linux.  Development Suite also simplifies the installation and configuration of EAP, Fuse, and Kompose. As always, it’s available at no-cost from developers.redhat.com/downloads.

Today, Red Hat has released new versions of the following:

Continue reading “Red Hat Releases New Development Tools”

Share

How to run FIS 2.0 application using source S2I deployment procedure

This article describes how to create and deploy an FIS 2.0 project using the s2i source workflow. It creates a project from scratch and using github repository one can deploy their FIS 2.0 camel and spring-boot based project to an Openshift environment. Below are the steps in the sequence, which should be followed to deploy the application easily.

Continue reading “How to run FIS 2.0 application using source S2I deployment procedure”

Share