Yi's wiki
SkyWalking
Initializing search
Yi's wiki
SRE Handbook
AIOps
AIOps
What is AIOps
AIOps in DevOps
AIOps Tips & Notes
BigData
BigData
Summary of Big Data Ecosystem
Druid
HBase
Hive
OLAP
Oozie
Splunk
Storm
Superset
Hadoop
Hadoop
Hadoop Ecosystem
HDFS Write Mechanism
MapReduce
Spark on Yarn
How to Add/Remove DataNode in Hadoop
Why there are two StandBy NameNodes in HDFS
Summary of Hadoop Default Port
Hadoop Related Questions
Hadoop Secondary Namenode
Install Hadoop on CentOS 6
CDN
CDN
CDN Basics
What is WAF and its Application
CICD
CICD
What is CI/CD
ArgoCD
Bitbucket CI
CircleCI
FluxCD
Jenkins
Kargo
Travis-CI
Jenkins REST API
How to use GitHub Actions for your Static Web CI/CD
Summary of CI/CD Tools & Platforms
Cloud
Cloud
Free Tier Cloud Services
Cloud Native Basic Concepts
Mesos
Nomad
OpenShift
OpenStack
Cloud Migration Basics
AWS
AWS
AWS Notes & Tips
AWS OU hierarchy
AWS QA & How-to guide
S3 cross region replication with Lambda
Set S3 bucket permission with mc
AWS System Damage Level
Access self-host S3 with aws cli
EBS vs EFS
AWS S3 Sync Command
Azure
Azure
Azure Notes & Tips
Cloud Storage Comparison
Deploying App on AKS Cluster
Connecting AWS & Azure
Azure AKS related CLI commands
Add reverse DNS for public ip in Azure
Kubernetes
Kubernetes
Kubernetes
Kubernetes at a Glance
Secret Volume in k8s
Create EKS with aws cli
K8s Installer Tools
K8s Pros & Cons
Tune Linux Kernel for K8s
K8s Q&A
K8s Troubleshoot 1
K8s Troubleshoot 2
Pod stuck in Terminating state
Rancher in k8s
Service Type in k8s
Helm examples
Autoscalers in K8s
Blue-Green Deployment in K8s
Errors in Kubernetes
k8s resources & tools
kubectl examples
Create configmap in K8s
Create daemonset in K8s
Deployment & Replicaset
Create Cronjob in K8s
Create StatefulSets in K8s
K8s security tips
Install ArgoCD on K8s
Install k3s
Install k8s cluster
OCI
OCI
Disable Ubuntu firewall on OCI
Enable ipv6 for OCI VM
Container
Container
Container Runtime Overview
Build App with Buildah
Build App with Buildpacks
Colima Container Runtime for MacOS
CRI-O Container Runtime
Build Container App with Jib
OCI Runtimes & Container Engines Overview
Podman Cheatsheet & Commands Overview
PouchContainer - A High-Performance Container Engine
Snap Packages on Ubuntu
Skopeo - A Command Line Utility for Container Images
Docker
Docker
Docker cheatsheet and useful commands
Image Layers in Container
Dockerize Django Project
Dockerize Java Application
List & Create Docker Container Network
List & Create Docker Container Volume & Env
Create Container Images in Docker with Dockerfile
Cross platform image build with dockerx
Optimized Docker Image Size with Multi-Stage Builds
Docker Swarm Basics: Simplifying Container Orchestration
DNS
DNS
DNS
DNS Route Policy
CoreDNS
Set CNAME to Root Domain
Send Email with Custom Domain
dig usage example
Public DNS over TLS
Verify DNSSEC with delv
dog usage example
Multicast DNS - mDNS
Free Public DNS List
HSTS
Debug
Debug
Debug Tools and Methods
Selenium Python Tutorial
How to debug in Bash
Calico verbose panic log ip6tables-legacy-save failed
How to debug C with Clang & LLDB
How to debug in Go
Find C/C++ mem leak with valgrind
How to debug coredump with gdb
Load Test with Siege
Debug in Lua
Network debug with tcpdump
How to debug if No Shell for Your Container
How to debug in Python3
DevOps
DevOps
DevOps Overview
Ansible
CMDB
ChatOps
Chef
Puppet
Rundeck
SaltStack
SonarQube
Useful CLI Tools
PSSH
DevSecOps
DevSecOps
DevSecOps Overview
SSL Checker Tools
Certificate-Based Auth
Firewall Scanner & Checklist
Nessus Scanner
Security Tips for Nginx
How to Auto renew SSL cert
Add Google Auth to SSH
Zero Trust
AppArmor overview & usage example
OTP in Bash, Python & Go
TLS/SSL Library Summary
Sign/Validate file with gpg
SELinux Basics & Usage Examples
IAM Basics
Kick out inactive user in Linux
Find last failed login user
Vulnerability Scan
Privilege Escalation Check
Port Scan with nrich
OpenSSL basic usage
Private Search Engines
Security tips for developers
Security tips for VPN
Sign & Verify file with SSH
Get public key from private key
Tunnel & Proxy with SSH
What is SSL Pinning
FinOps
FinOps
FinOps
AWS Cost Optimization
GitOps
GitOps
GitOps
Mercurial
Bitbucket
Git Cheatsheet
Daily Used Git Commands
Delete untracked files in Git
GUI Git Client Summary
Multi SSH key for github & gitlab
SVN
Connect GitHub with ssh
YAML
Go
Go
Golang Basics
Colon usage in Golang
Context in Golang
HTMX in Golang with examples
Background jobs in Golang
Add version in Golang project
Benchmark in Golang
Makefile in Golang
Environment variables in Golang
Connect Redis in Golang
WaitGroup in Golang
Concurrency in Golang
Clear terminal screen in Golang
Reduce binary file size in Golang
random.shuffle in Golang
Web shell in Golang
Log in Golang
IaC
IaC
Infrastructure as Code
AWS Cloud Formation
OpenTofu
Pulumi
Create ECR with Terraform
Import AWS resources to terraform
Manage EKS with terraform
Terraform
Ingress
Ingress
Load Balancer
Haproxy
Keepalived & Nginx
Keepalived
Nginx as HTTP Load Balancer
API Gateway
API Gateway
API Gateway
Traefik
APISIX
Istio
Linux
Linux
Linux knowledge Notes & Tips for SRE & DevOps
How to Create a Linux Kernel Module
Basic Usage example of Linux Firewalld UFW
How to Enable/Disable IP forwarding in Linux
Howt to Clear & Drop Memory Cache in Linux
How to Update Linux Kernel Boot Parameters
How to solve: Apparmor conflicted with ntpd apparmor=DENIED operation=capable
How to solve: Delete file argument list too long
awk usage examples
How to start a Linux terminal process in background
How to Get TCP status with proc
How to Change hostname with hostnamectl
How to Change Linux Timezone
How to use chattr to lock important files in Linux
How to use calculate md5, sha512 with checksum
How to Clean up penetration trace
Linux Hotkey with Ctrl
How to control Cronjob concurrency with flock
How to Delete specific files EXCEPT certain pattern
Linux File & Diirectory Permission Basics
Howt to Get disk block size in Linux
How to Get hardware temperature in Linux terminal
How to use dstat to know Linux system performance
What is ELF in Linux
How to safely remove large file in Linux
Linux find command usage
How to solve: nf_conntrack table full, dropping packet
How to Enable/Disable ping response in Linux kernel
Howt ot Generate random hexadecimal in Linux
How to read Linux hex file
Linux Network Monitoring with Iptraf/Iptraf-ng
Linux kernel development reference
How to get all open files with given PID in Linux
Howt to change max open files limit in Linux
mosh - UDP based SSH client
How to transfer files with nc
How to get disk space with ncdu
How to solve Kernel Warning: neighbour table overflow
netstat command usage in Linux
Linux System Performance Tools Summary
POSIX character set cheat sheet
Linux process states summary
How to purge/drop file system cache in Linux
How to Specify SSH port in rsync
How to use scp to transfer files in Linux
How to use sed to edit text in Linux
What is SetUID SetGID & Sticky bit and How to Use Them
How to proceed TCP/UDP port forwarding with socat
Socat usage cheatsheet
How to Add Files to Linux Path
How to solve: ssh warning: POSSIBLE BREAK-IN ATTEMPT
How to change default syslog max message length in Ubuntu 20.04
How to compress gz/bz2/xz files with tar command in Linux
Tmux hotkeys & cheatsheet
How to solve: Too many TCP connections
How to trigger a Kernel panic & get coredump
How to ignore case sensitive in ls
Linux NTP Services Summary
How to use rsync to synchronize files and directories
Subscribe Linux Kernel Mail List
How to Add Env PATH in supervisor
Linux Cgroups usage examples
Linux Systemd usage examples
Why should disable THP in Linux
MQ
MQ
Message Queue
AutoMQ
RabbitMQ
Apache Pulsar
Kafka
Kafka
Kafka
Kafka Reference
Network
Network
Network Tips & Notes
BGP
Calico
Fast Reverse Proxy (FRP)
Kill a TCP connection in Linux
How NAT Works and Its Applications
What is OSPF
Optimize TCP Transfer with Kcptun
Tunnel Tools for Development
Sum TCP connection with ss & netstat
CIDR calculator
Container Network Interface (CNI)
Get Public IP with curl
HAProxy with Floating IP
Iptables
How to change IPv4 priority in dual stack Linux
How to get ping latency from multiple locations
Port Based Network Control with tc
How to convert Socks5 to HTTP Proxy in Linux
What is tcp_moderate_rcvbuf
What is TCP window-size scaling
Network debug with tcpdump wireshark
Network debug with nsenter
NoSQL
NoSQL
NoSQL
KeyDB
Valkey
Zookeeper
Backup etcd cluster
CAP in NoSQL
Codis
Gossip
NoSQL Comparison
Cassandra
Cassandra
Cassandra
Deploy Cassandra with ccm
Cassandra nodetool
MongoDB
MongoDB
Mongodump
MongoDB Performance Tuning
MongoDB Replication
MongoDB Shell
MongoDB Monitoring
Redis
Redis
Redis
Aliyun Redis best practice
Save Redis config in running
Create Redis cluster
Parse Redis AOF
Redis client commands
Redis cluster commands
Redis compatible NoSQL
Redis config file reference
Get started with Redis code
Redis Memory Usage
Redis Optimization
Redis RDB & AOF
Redis rebalance & migration
Redis Tips & Tricks
RocksDB
RocksDB
RocksDB
RocksDB Admin Tool
OS
OS
OS Tips
CentOS
CentOS
How to get Wildcard Certificate with acme.sh
How to Add user to admin group on CentOS
Web benchmark tools on CentOS
How to enable Nginx SSL/TLS on CentOS
Hide nginx version on CentOS
Compile nginx to support http/2
Use nsenter in CentOS
Install different version of gcc
Add SWAP on CentOS
Extanded repo on CentOS
Send email using sendmail
Change Timezone on CentOS
Find which package provide command
Install BT Transmission on CentOS
iostat command cannot found
mkfs.xfs command not found on CentOS
Debian Ubuntu
Debian Ubuntu
Add Swap on Ubuntu 24.04
Compile & Install Ocserv on Debian
Install OpenVPN on Debian 11
Optimise BBR on Debian
Check if package is installed on Debian
Extract files from deb package
Remove login welcome message
Systemd User Service Example
Disable ipv6 on Ubuntu & Debian
Disable snapd on Ubuntu 20.04
Install LAMP on Ubuntu 22.04
Install sar error Please check if data collecting is enabled
Upgrade debian 10 to 11
FreeBSD
FreeBSD
FreeBSD cheat sheet
Alternative Linux commands on FreeBSD
Build FreeBSD kernel
Change csh to bash on FreeBSD
Disable ping on FreeBSD
FreeBSD git repo
Install ocserv on FreeBSD
FreeBSD update
Upgrade FreeBSD 12 To 13
MacOS
MacOS
Delete .DS_Store files on MacOS
Disable brew analytics on MacOS
Signing on MacOS
netstat ss on MacOS
Clean system log on MacOS
MacOS Dev Env Setup
Get a plain text of man page without backspaces and underscores on MacOS/BSD
LC_CTYPE: cannot change locale (UTF-8): No such file or directory
Observability
Observability
Observability in SRE
APM
APM
What is APM
Sentry
Logging
Logging
Logging Management
Linux Log Summary
Log Collection with Vector
Grafana Alloy
Promtail Log Collector
Monitoring
Monitoring
System Monitoring and Management
CloudWatch
Nightingale
PromQL
Prometheus
Site24x7
Cacti
Build status page with CloudFlare Worker & Atlassian Status
DataDog
Grafana
InfluxDB
Build Health Checker with Cloudflare Worker
New Relic
Open-Falcon
Send Metrics to Grafana Cloud
Zabbix
Tracing
Tracing
Tracing
Dynatrace
MantisBT
OpenTelemetry
SkyWalking
Performance
Performance
Performance Tuning
How to get CPU model
InnoDB Optimization Tips
Kernel tunning for PostgreSQL
Ceph Performance Tuning
Performance checklist for Linux
Linux I/O Scheduler for SSD
dirty page related kernel parameters
How to enable high resolution timers in Linux
Linux网络参数优化
Kernel parameter optimization for Linux
Linux kernel parameter in proc filesystem
Performance monitoring & tracing tools in Linux
USE Method & Performance Tuning in Linux
Benchmark with sysbench command
Load Testing with Siege
Fetch System Info in Terminal
Optimize Nginx for High Concurrency
Python
Python
Python3 Notes & Cheatsheet
19 Python Syntax Sugars
Django Command Line Reference
Implement lru in Python
Get public IP in Python
Send http requests in Python
Boost Python Function with Numba
Python bisect module
Catch signal in Python
Clear screen in Python
Packages & modules in Python
Python Asynchronous
Python datetime module
Currency Calculation in Python
Python Decorators
3 ways to set timeout in Python
8 ways to use functools
Get local IP address in Python
GIL in Python
Iterate over multiple lists & tuple
List, Dictionary, Set in Python
3 ways to disable output buffer
Fast pairing lists in Python
Python Performance Analysis
Python Project Structure
Virtualenv
Program in Pythonic way
Single & Double underscore of class member
Sort dict based on key, value
try except else finally in Python
CPython vs PyPy
Start Python3 in 10 seconds
Multiple CORS in Flask
Where is Python packages
SQL
SQL
Setup SSL for MySQL on Linux
SQL Cheatsheet
MySQL Utilities
PostgreSQL Cheatsheet
SQL Q&A
How to backup Mysql via SSH tunnel
mysqldump usage example
Reset MySQL Root Password
SRE
SRE
Site Reliability Engineering
Architecture Design
Chaos Engineering
DR (Disaster Recovery)
Distributed System Design
Microservices Patterns
Systems Design Notes
Engineering Book List
SRE Reading List
SRE书籍汇总
SRE Book List
Engineering Blog List
Engineering Blog RSS
Platform Engineering
SRE Tutorial
SLA SLO SLI
SRE Glossary
SRE Handover SOP
Status Page
Type of Failures
Shell
Shell
Shell Commands Cheatsheet
Delete files with space characters in file name
Fish Shell
Get union, intersection, difference of 2 files
Add dir to PATH
Extract multi segments of a json file and merge into 1 line with jq
One-liner bash script reference
Get current shell name
Disable output redirection
Better grep command
Repeat lastest command in Bash
Create a file with EOF in Bash
Reverse Shell
Environment variable in csh tcsh bash zsh
change stdout with ANSI character set
Extract password protected zip file
Clear history in zsh
Bash
Bash
Convert JSON to CSV
Bash Cheatsheet
Disable Output Redirect
Bash Reference
Special characters in Bash
Concurrency Control in Bash
Bash Scripting
Arithmetic in Bash
Array in Bash
Get file name from path
Concurrency in Bash
Debug in Bash
Detach foreground process
Usage of $ sign in Bash
Detect file exists
Bash Function
Detect current user is root
Remove color codes from output
Variable Replacement/Truncate
User switch in Linux
Test Statement
Types of Variables
Different loop style in Bash
Tips
Tips
Useful Tips for SRE
Docked Rails CLI
HTTPS/SSL
Nginx Proxy Manager
Latency & CPU Speed
Linux Manual Page
Perl Cheatsheet
RAID Calculator
WebSockets
Build Ruby on MacOS
Command line browser
Compact jq output in 1 line
curl: Argument list too long
Ignore SSL check in curl & wget
Download web with wget
Free IP SSL cert
Groovy Cheat Sheet
Cron Usage
ack usage example
ag usage example
alias usage example
bat usage example
bottom usage example
broot usage example
cat usage example
cheat usage example
chmod usage example
choose usage example
chroot usage example
curlie usage example
date usage example
e2fsck usage example
echo usage example
ffmpeg usage example
find usage example
fsck usage example
glances usage example
gping usage example
gtop usage example
head usage example
httpie usage example
hurl usage example
hyperfine usage example
journalctl usage example
jq usage example
kill usage example
less usage example
logrotate usage example
lsmod, modinfo usage
mount usage example
nslookup usage example
procs usage example
ps usage example
rclone usage example
ripgrep usage example
rm usage example
rsync usage example
scp usage example
screen usage example
sd usage example
sed usage example
sort & uniq example
ssh tunnel example
systemctl usage example
tail usage example
tar usage example
tar & gzip example
tcpdump usage example
tldr usage example
xargs usage example
HTTP Debug Tools
HTTPS Benchmark
Search Icon Online
iperf3 usage example
HTTP Time Distribution
Nginx status module
ping usage example
Realtime HTTP benchmark
WAF with LuaJIT
Lua Cheatsheet
Nginx as reverse proxy for WebSocket
Nmap usage
OpenResty
PHP Tips & Notes
Port scan with rustscan
QUIC
Regular Expressions
RSS List
Ruby Cheatsheet
Clear terminal screen in Rust
Rust Tips & Notes
Remove SSL private key password
Vim Tips & Notes
Save file with permission denied in vim
Command Line Browser
Zero-width Space
SkyWalking
Feedback
Name
Email
Send
Back to top