This article will show how OpenTracing instrumentation can be used to collect Application Metrics, in addition to (but independent from) reported tracing data, from services deployed within Kubernetes. These Application Metrics can then be displayed in your monitoring dashboard and used to trigger alerts.
Continue reading “Using OpenTracing with Jaeger to collect Application Metrics in Kubernetes”
From hobbyist SoC devices such as the ubiquitous Raspberry Pi to a complete domination of the mobile device market, ARM processors have proven the value of the architecture. It is easy to see why ARM processors were able to explode in this market, given that they are able to pack quite a bit of performance into a rather small physical space. Take for instance Qualcomm’s Snapdragon 400 processor, which is used in many products including the Huawei Watch This processor provides a dual core, fast, performance using 14-nanometer design. This makes it small enough to fit on your wrist, and it is efficient enough to limit power consumption enough to run on a battery, which can also fit on your wrist. The usefulness in these spheres of ARM processors is well known, and the fact that RHEL seems to have little interest in the mobile, embedded device, or hobbyist market is also fairly well known. What should be of interest to Red Hat developers, though, is the potential for the Enterprise Server market that ARM processors seem to be displaying. While x86 devices likely are to remain in place for workstations and laptops, the low power usage and small physical design of ARM processors make it interesting to the server market, where power consumption and space are also limitations.
Continue reading “After Years of Linux on ARM, when is the Year of Red Hat on ARM servers?”
Continue reading “Developing Mobile Applications using TypeScript on Red Hat Mobile Application Platform”
Reactive, what an overloaded word. Many things turn out to become magically Reactive these days. In this post, we are going to talk about Reactive Programming, i.e. a development model structured around asynchronous data streams.
I know you are impatient to write your first reactive application, but before doing it, there are a couple of things to know. Using reactive programming changes how you design and write your code. Before jumping on the train, it’s good to know where you are heading.
In this post, we are going to explain 5 things about reactive programming to see what it changes for you.
Continue reading “5 Things to Know About Reactive Programming”
In Network Function Virtualization, there is a need to scale functions (VNFs) and infrastructure (NFVi) across multiple NUMA nodes in order to maximize resource usage.
In this blog, we’ll show how to configure Open vSwitch using DPDK datapath (OVS-DPDK) parameters for multiple NUMA systems, based on OVS 2.6/2.7 using DPDK 16.11 LTS.
Continue reading “OVS-DPDK Parameters: Dealing with multi-NUMA”
The March/April C++ meeting was back in Kona, Hawaii again, only a year and a half after the last Kona meeting. As usual, Red Hat sent three of us to the meeting: Jonathan Wakely, Torvald Riegel, and me.
Continue reading “Red Hat at the ISO C++ Standards Meeting (April 2017, Kona): Core Language”
In a previous post, we introduced QinQ support for Open vSwitch. This post will investigate how QinQ performs relative to alternatives (VXLAN, GENEVE) in both throughput and CPU utilization. This will give us some understanding why we might consider QinQ over VXLAN or GENEVE.
Continue reading “Open vSwitch: QinQ Performance”