Elvadas Nono

Recent Posts

Containerizing SQL DB changes with Flyway, Kubernetes, and OpenShift

In DevOps projects, you are sometimes haunted by the practices inherited from the monolithic world. In a previous project, we were checking how to simply apply SQL updates and changes to a relational database management system (RDBMS) database in an OpenShift Cluster.

Micro database schema evolution patterns are perfectly described by Edson Yanaga in his brilliant free book: Migrating to Microservice Databases: From Relational Monolith to Distributed Data.  A video presentation of these patterns is also available on youtube.

In this blog post series we will show a simple approach to implement the described patterns in your Continuous Integration and Continuous Delivery (CI/CD) pipelines on OpenShift. The series is split in two parts:

  • This post shows how to handle SQL update automation using Flyway, Dockerfiles, and Kubernetes on OpenShift.
  • A future post will showcase application migration patterns, including database migration stages using OpenShift Jenkins2 pipelines.

Continue reading “Containerizing SQL DB changes with Flyway, Kubernetes, and OpenShift”

Share

Tutorial: Building and consuming Virtual Microdatabase with JBoss Data Virtualization

In the following blog post, we will learn how to create and access federated views from a various data source using JBoss Data Virtualization.

This lab is from the JBoss Developer Guidebook/ch5 Exposing Data as service book (40% with discount code JBDG40 offered from October 1-31).

Continue reading “Tutorial: Building and consuming Virtual Microdatabase with JBoss Data Virtualization”

Share

JBoss: Developer’s Guide

Modern applications development demands optimized tools and services. Applications must integrate with different systems and share data. Organizations must be able to immediately respond to changing conditions. JBoss Middleware drives enterprise application innovation every day to deliver the best projects and products. Whether you are an experienced enterprise application developer or just getting started, JBoss: Developer’s Guide provides you with the best time to value guide for enterprise application delivery with the JBoss brand, using hands-on coding and lab exercises with real-life business examples. In-depth information is provided for multiple components of the JBoss Middleware ecosystem to guide you through application development, deployment, data storage and access, communication and messaging, and business process optimization.

Continue reading “JBoss: Developer’s Guide”

Share

Securing Fuse 6.3 Fabric Cluster Management Console with SSL/TLS

Introduction

Enabling SSL/TLS in a Fabric is slightly more complex than securing a jetty in a standalone Karaf container. In the following article, we are providing feedback on the overall process. For clarity and simplification, the article will be divided into two parts.

 

Part1: The Management Console

Part2: Securing Web Service:including gateway-http

 

For the purpose of this PoC, the following environment will be used.

Continue reading “Securing Fuse 6.3 Fabric Cluster Management Console with SSL/TLS”

Share

JBoss EAP 7 Domain deployments – Part 4: Domain deployment with REST Management API.

In this blog series we will present several ways to deploy an application on an EAP Domain. The series consists of five parts. Each one will be a standalone article, but the series as a whole will present a range of useful topics for working with JBoss EAP.

In part one of this series, we setup a simple JBoss EAP Domain. In  part two we reviewed the EAP Management Console deployment Mechanism and deployed the helloworld-html5 EAP Quickstart on the main-server-group ( Server11 and Server21), in part three, we checked how to deployedhelloworld-html5 on secondary-server-group using the CLI Command line; in this tutorial, part four, we are going to explore another deployment option: the REST Management API. To do so, we will upload a file in the EAP content repository and then deploy it.

Management Interfaces

On the master domain controller, we set up two management interfaces: the native on port 9999, and the HTTP management interface on port 9990.

While the CLI uses the native management port, and the EAP management console and the REST API are available on the HTTP management port, all these management interfaces also share common XML configuration files: host.xml/domain.xml. They also send commands to EAP using an intermediate representation called DMR ( Dynamic Model Representation).

DMR

DMR stands for Dynamic Model Representation, and it is a new syntax introduced with EAP 6 to denote Java objects associated with EAP Management interfaces. DMR is flatter than XML files and all the items are at the same level. Let’s check out a sample:

The domain.xml configuration section containing EAP profiles and server groups looks like this:

<profiles>
 <profile name="default">
   ....
 </profile>
 <profile name="ha">
   ....
 </profile>
 <profile name="full">
   ...
 </profile>
 <profile name="full-ha">
   ...
 </profile>
 </profiles>

 <server-groups>
 <server-group name="primary-server-group" profile="full">
   ...
 </server-group>
 <server-group name="secondary-server-group" profile="full">
   ...
 </server-group>
 <server-group name="singleton-server-group" profile="default">
   ...
 </server-group>
</server-groups>..

And the DMR representation of this same XML looks like this:

...
"profile" => {
 "default" => undefined,
 "ha" => undefined,
 "full" => undefined,
 "full-ha" => undefined
 },
 "server-group" => {
 "primary-server-group" => undefined,
 "secondary-server-group" => undefined,
 "singleton-server-group" => undefined,
 },
...

Continue reading “JBoss EAP 7 Domain deployments – Part 4: Domain deployment with REST Management API.”

Share

JBoss EAP 7 Domain deployments – Part 3: Domain deployment with Common Language Interface CLI.

In this blog series we will present several ways to deploy an application on an EAP Domain. The series consists of five parts. Each one will be a standalone article, but the series as a whole will present a range of useful topics for working with JBoss EAP. In the part one, we set up a simple EAP domain with the following topology:

Continue reading JBoss EAP 7 Domain deployments – Part 3: Domain deployment with Common Language Interface CLI.

Share