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”
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”
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”
JBoss Tools 4.5 and Red Hat JBoss Developer Studio 11.0 for Eclipse Oxygen are here waiting for you. Check it out!
Continue reading “Announcing Red Hat Developer Studio 11.0.0.GA and JBoss Tools 4.5.0.Final for Eclipse Oxygen”
After a number of months with .NET Core 2.0 previews, Microsoft has released .NET Core 2.0. Very exciting for the open source world! If you’ve not seen Scott Hunter talk about today’s announcement, see it here.
Continue reading Microsoft releases .NET Core 2.0
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”
Camel Quartz can be a useful component for jobs that need to run at a particular time every day. Recently on a client site, we had a need for about 15 different jobs that each created a differently formatted file and send each file to a particular destination. While this was straightforward to get setup on a single machine, once we started deploying our camel routes to multiple servers the jobs started to kick off on both machines. To resolve this issue we needed to create a job store.
Continue reading “Using Clustered Camel Quartz Jobs on JBoss EAP”