Home
FlamingBytes
Cancel

Compile Linux kernel on CentOS

Build preparations To perform a successful kernel build, the following packages need to be installed: yum groupinstall “Development Tools” yum install ncurses-devel yum install qt3-devel (...

Deploy systemtap on multiple systems

Normally, SystemTap scripts can only be run on systems where SystemTap is deployed together with the following required kernel packages. kernel-devel-$(uname -r) kernel-debuginfo-$(uname -r) ...

Using systemtap to analyze latency of the kernel module function

In this post, we continue to explore how to use SystemTap to analyze the latency of the kernel module function. In the following example, we want to analyze the latency of the function “nfsd_vfs_wr...

Getting started with systemtap for Linux system profiling

Intro to SystemTap SystemTap is a tracing and probing tool that allows users to study and monitor the activities of the operating system (particularly, the kernel) in fine detail. It provides info...

Using ftrace to analyze latency of the kernel module function

In this example, we study the latency of the function “nfsd_vfs_write” from kernel module “nfsd”. ftrace configuration The following ftrace options are used in this example. There are 8 nfsd proc...

Dynamically tracing with user-defined tracepoint in perf

In this post, we are going to explore how to use perf for dynamic tracing with user-defined tracepoint. When we say dynamic tracing, the kernel event(function) to be traced is not predefined in per...

tuned - dynamic adaptive system tuning daemon

Tuned Tuned is a daemon that uses udev to monitor connected devices and statically and dynamically tunes system settings according to a selected profile. Tuned is distributed with a numb...

Install and uninstall debuginfo package on CentOS

Install debuginfo package On CentOS, we can install debuginfo package as below. Modify /etc/yum.repos.d/CentOS-Debuginfo.repo by setting “enabled=1” Run “yum install kernel-debuginfo” [roo...

Using sar to understand system activity

About sadc and sar sadc is known as system activity data collector. It samples system data a specified number of times (count) at a specified interval measured in seconds (interval). It writes in ...

Using nconnect to improve NFS performance

The nfs mount option “nconnect=n” exists in all Linux distributions with kernel 5.3 or higher. nconnect enables multiple TCP connections for a single NFS mount. From the nfs manual page: nconn...

How to setup NFS (Network File System) on RHEL/CentOS

We need to install NFS packages on the NFS Server as well as on NFS Client machine. We can install it via “yum” for RHEL/CentOS. On the NFS server side, run the following commands to setup NFS ser...

SysRq - Linux Magic System Request Key Hacks

What is the magic SysRq key? It is a ‘magical’ key combo you can hit which the kernel will respond to regardless of whatever else it is doing, unless it is completely locked up. How do I enable t...

journalctl - Query the systemd journal

journalctl may be used to query the contents of the systemd journal as written by systemd-journald.service. If called without parameters, it will show the full contents of the journal, starting wi...

Flame graph - A visualization for profiling and debugging

Flame graphs can be generated from the output of many different software profilers, including profiles for different resources and event types. The article written by Brendan Gregg describes how th...

Deploy kubernetes statefulset with affinity

Here is an example to demonstrate how to assign statefulset and pod to the target worker node. affinity helps define which node will be assigned for the pod by using the node labels. $ kubectl ge...

A six-step framework to tackle any system design question

Introduction In the book of System Design Interview by Lewis C. Lin, a six-step framework called PEDALS is introduced to help answer any system design question. PEDALS stand for: Process requ...

The complete guide to System Design in 2022

The complete guide to System Design in 2022 covers: What is System Design? System Design fundamentals Horizontal and vertical scaling Microservices Proxy servers ...

Understanding RPO and RTO

The disasters could occur unexpectedly and it could take down the whole data center in an application region. In the real world, a well designed disaster recovery solution would help restore the ap...

Understanding the Linux inodes

Linux makes a clear distinction between the contents of a file and the information about a file. All information needed by the filesystem to handle a file is included in a data structure called an ...

Lambda architecture in big data system

What is Lambda Architecture When working with very large data sets, it can take a long time to run the sort of queries that clients need. These queries can’t be performed in real time, and often r...