In this article, we will use a Python-based messaging client to connect and subscribe to a topic with a durable subscription in the Apache ActiveMQ Artemis broker. We will use the text-based STOMP protocol to connect and subscribe to the broker. STOMP clients can communicate with any STOMP message broker to provide messaging interoperability among many languages, platforms, and brokers.
If you need to brush up on the difference between persistence and durability in messaging, check Mary Cochran’s article on developers.redhat.com/blog.
A similar process can be used with Red Hat AMQ 7. The broker in Red Hat AMQ 7 is based on the Apache ActiveMQ Artemis project. See the overview on developers.redhat.com for more information.
Continue reading “Using the STOMP Protocol with Apache ActiveMQ Artemis Broker”
I recently got my zero-dollar developer copy of Red Hat Enterprise Linux (RHEL, version 7.5) and built a virtual machine (VM) to run it. There it was, on my PC, running in VirtualBox…a gleaming, shiny, brand-spanking-new VM running RHEL. Whatever shall I do with it?
Then I got the idea: I’ll install the Red Hat Container Development Kit (CDK) and build some Python-based containers. I’ll use Flask, a terrific microframework that makes building RESTful services easy.
Continue reading “How to install Python Flask on Red Hat Enterprise Linux 7”
There has been a need for a simple, easy-to-use handler for writing tests and other code around containers that would implement helpful methods and utilities. For this we introduce conu, a low-level Python library.
This project has been driven from the start by the requirements of container maintainers and testers. In addition to basic image and container management methods, it provides other often used functions, such as container mount, shortcut methods for getting an IP address, exposed ports, logs, name, image extending using source-to-image, and many others.
Continue reading “Introducing conu – Scripting Containers Made Easier”
APIs are critical to automation, integration and developing cloud-native applications, and it’s vital they can be scaled to meet the demands of your user-base. In this article, we’ll create a database-backed REST API based on the Python Falcon framework using Red Hat Software Collections (RHSCL), test how it performs, and scale-out in response to a growing user-base.
Continue reading Create a scalable REST API with Falcon and RHSCL
What is Rust?
Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.
- zero-cost abstractions
- move semantics
- guaranteed memory safety
- threads without data races
- trait-based generics
- pattern matching
- type inference
- minimal runtime
- efficient C bindings
Continue reading “Speed up your Python using Rust”
In an environment where OpenStack instances are automatically subscribed to Satellite, it is important that Satellite is notified of terminated instances so that is can safely delete its host record. Not doing so will:
- Exhaust the available subscriptions, leading to unsubscribed hosts not being able to apply updates and security errata.
- In the event that an emergency security errata needs to be deployed across the organization, Satellite administrators would be unable to determine if a host was either off or terminated, leading to uncertainty with their security posture.
In smaller environments, where one team is responsible for both OSP and Satellite, it’s possible to have one system administrator do this by using their administrator level access across both systems to determine which host records can be safely deleted in Satellite when the corresponding instance no longer exists.
Continue reading “Using Falcon to cleanup Satellite host records that belong to terminated OSP instances”
Today, we are announcing the general availability of Red Hat Software Collections 2.4, Red Hat’s latest set of open source web development tools, dynamic languages, and databases. We are also announcing Red Hat Developer Toolset 6.1, which helps to streamline application development on Red Hat Enterprise Linux by giving developers access to some of the latest, stable open source C and C++ compilers and complementary development tools.
New language additions to Red Hat Software Collections 2.4 include:
- Nginx 1.10
- Node.js v6
- Ruby 2.4
- Ruby on Rails 5.0
- Scala 2.10
Continue reading “Now available – Red Hat Software Collections 2.4 and Red Hat Developer Toolset 6.1”
Today, Red Hat announced the beta availability of Red Hat Software Collections 2.3, Red Hat’s newest installment of open source web development tools, dynamic languages, and databases. Delivered on a separate lifecycle from Red Hat Enterprise Linux with a more frequent release cadence, Red Hat Software Collections bridges developer agility and production stability by helping to accelerate the creation of modern applications that can then be more confidently deployed into production.
New additions to Red Hat Software Collections 2.3 Beta include:
Continue reading “Red Hat Software Collections 2.3 now beta”
This article describes how an administrator can migrate Red Hat Enterprise Linux 5 or Red Hat Enterprise Linux 6 to Red Hat Enterprise Linux 7 with the help of the Preupgrade Assistant. The Preupgrade Assistant is a tool which assesses your running system for anything that might adversely affect the success of your migration.
As Red Hat Enterprise Linux 5 will have only extended update support after March 2017, administrators will find a tool like that useful to help them migrate their systems to Red Hat Enterprise Linux 7. The migration from Red Hat Enterprise Linux 5 to Red Hat Enterprise Linux 6 is not covered by the Preupgrade Assistant, nor is it planned.
Note: The Preupgrade Assistant can also be used for the in-place upgrade from Red Hat Enterprise Linux 6 to Red Hat Enterprise Linux 7 but this is out of scope of this article. The in-place upgrade from Red Hat Enterprise Linux 5 to Red Hat Enterprise Linux 7 is neither supported nor planned.
Continue reading “Migration of Red Hat Enterprise Linux 5 or 6 to Red Hat Enterprise Linux 7 with the Preupgrade Assistant”
Microservices are becoming a new trend, thanks to the modularity and granularity they provide on top of advantages like releasing applications in a continuous manner. There are various platforms and projects that are rising which aims to make writing and managing microservices easy.
Keeping that in mind, I thought, why not make a demo application that can give an example of how microservices are built and how they interact. In this article, I will be building a small application using the Microservice Architecture (MSA).
The application will be a super simple To-Do management list. So, let’s have take a look at what we are going to build and how we are going to build.
Editor’s note: This article references Fedora, which is the upstream project for Red Hat Enterprise Linux (RHEL) — now free for developers. This tutorial should also work on RHEL, just replace ‘dnf’ with ‘yum’ wherever appropriate.
Continue reading “Writing Microservices: An Example Through a Simple To-Do Application”