Cloud-native application development is the new paradigm for building applications and although is it often mistaken for microservices, it is much more than that and encompasses not only the application architecture but also the process through which applications are built, deployed, and managed.
New apps are often seen as the focus of cloud-native applications; however, we believe existing and new applications are alike and can incorporate cloud-native practices if they have the four defining characteristics of cloud-native applications:
- Service-based: Build modular loosely coupled services (for example, microservices).
- API-driven: Expose services via lightweight technology-agnostic APIs.
- Containers: Package and deploy in containers as a portable unit of compute.
- DevOps: Adopt agile and DevOps principles.
The Getting Started with Cloud-Native Apps lab at Red Hat Summit 2018, which takes place in San Francisco on May 8–10, has a packed agenda that focuses on walking participants through the principles of building and operating cloud-native applications.
Continue reading “Red Hat Summit Spotlight: Getting Started with Cloud-Native Apps Lab”
Hopefully by now, you know how to write your first Rest DSL Camel Route using Spring Boot. If not, check this post first. Now that you have your route written, it’s time to write a unit test for it. Many people find Apache Camel unit testing a big struggle to figure out. Luckily, when using Spring Boot with the Apache Camel Rest DSL testing, a Rest Route isn’t too difficult.
Continue reading “Unit Testing for Camel Rest DSL and Spring Boot”
This article shows how to take an existing Spring Boot standalone project that uses MySQL and deploy it on Red Hat OpenShift, In the process, we’ll create docker images which can be deployed to most container/cloud platforms. I’ll discuss creating a Dockerfile, pushing the container image to an OpenShift registry, and finally creating running pods with the Spring Boot app deployed.
To develop and test using OpenShift on my local machine, I used Red Hat Container Development Kit (CDK), which provides a single-node OpenShift cluster running in a Red Hat Enterprise Linux VM, based on minishift. You can run CDK on top of Windows, macOS, or Red Hat Enterprise Linux. For testing, I used Red Hat Enterprise Linux Workstation release 7.3. It should work on macOS too.
To create the Spring Boot app I used this article as a guide. I’m using an existing openshift/mysql-56-centos7 docker image to deploy MySQL to OpenShift.
Continue reading “Deploying a Spring Boot App with MySQL on OpenShift”
Rest services are becoming more and more popular for communication between systems. Now that Red Hat supports the use of Red Hat JBoss Fuse with Apache Camel Spring Boot, learn how you can get started with the Rest DSL and Spring Boot. These directions will use the camel-servlet component, although various components can be used.
Continue reading “Writing Your First Camel Spring Boot Project With the Rest DSL”
The next online DevNation Live Tech Talk will be Thursday, March 1st at 12pm EST. The topic is Secure Spring Boot Microservices with Keycloak presented by Sébastien Blanc.
Although security and identity management are critical aspects for any application, implementation can be difficult. As a result, these things are often neglected, poorly implemented, and intrusive in the code. Recently, identity management servers have appeared that allow you to outsource and delegate all aspects of authentication and authorization, such as auth0.com. Of these servers, one of the most promising is Keycloak, because it is open source, flexible, and technology agnostic. Keycloak is easily deployable on a variety of infrastructure and is very adaptable for many types of deployments.
Register now, and join the live presentation at 12 pm EST on Thursday, March 1st.
** UPDATE: Missed the live session? Watch the video online. **
Continue reading “Next DevNation Live: Secure Spring Boot Microservices with Keycloak, March 1st, 12pm EST”
The next online DevNation Live Tech Talk will be Thursday, February 15th, at 12 pm EST. The topic is Spring Boot deployment on Kubernetes presented by Kamesh Sampath. In this 30-minute live session, we will see how to build, debug, deploy, and discover Spring Boot applications on Kubernetes. The talk will include details of the tools, libraries, and platform that could be used to make your spring boot deployment smooth and easy.
Register Now, and then join the live presentation at 12 pm EST, February 15th.
Continue reading “DevNation Live Tech Talk: KubeBoot – Spring Boot deployment on Kubernetes”
Logs are like gold dust. Taken alone they may not be worth much, but put together and worked by a skillful goldsmith they may become very valuable. OpenShift comes with The EFK stack: Elasticsearch, Fluentd, and Kibana. Applications running on OpenShift get their logs automatically aggregated to provide valuable information on their state and health during tests and in production.
The only requirement is that the application sends its logs to the standard output. OpenShift does the rest. Simple enough!
In this blog I am covering a few points that may help you with bringing your logs from raw material to a more valuable product.
Continue reading “Structured application logs in OpenShift”
In the Part-I of the series, we saw how we used ConfigMaps in configuring spring boot application Kubernetes. ConfigMaps are OK when we use simple configuration data that do not contain sensitive information. When using sensitive data like API Keys, passwords etc. Secrets are the preferred and recommended way. In this second part of the series, we will explore configuring spring boot on kubernetes with Secrets.
The sources for this blog post are available in my github repo.
Continue reading “Configuring Spring Boot on Kubernetes with Secrets”
ConfigMaps is the Kubernetes counterpart of the Spring Boot externalized configuration. ConfigMaps is a simple key/value store, which can store simple values to files. In this post “Configuring Spring Boot on Kubernetes with ConfigMap”, we will see how to use ConfigMaps to externalize the application configuration.
Continue reading “Configuring Spring Boot on Kubernetes with ConfigMap”
When the developers plan to deploy Spring Boot application on Kubernetes, the first question comes to a spring developer’s mind is “Can I use Spring Config server?” Spring Config server is a de-facto way of doing centralized configuration of a distributed application. Yes, we can use Spring Config server, but let’s think of some constraints that Spring Config server can have in a typical Enterprise deployment:
Continue reading Configuring Spring Boot Application on Kubernetes