How to tune Oracle Linux Server Performance¶
Update System Packages¶
Keep your system and kernel updated
sudo dnf update -y
Optimize Kernel Parameters¶
Modify sysctl.conf for better memory and network performance
sudo vi /etc/sysctl.conf
vm.swappiness=10
vm.dirty_ratio=20
vm.dirty_background_ratio=10
net.core.somaxconn=1024
net.ipv4.tcp_max_syn_backlog=2048
Apply changes without rebooting:
sudo sysctl -p
Enable Performance Profiles¶
Use tuned to apply performance optimizations
sudo dnf install tuned -y
sudo systemctl enable --now tuned
sudo tuned-adm profile throughput-performance
Optimize Disk I/O¶
Set the correct I/O scheduler for SSD:
echo "none" | sudo tee /sys/block/sd*/queue/scheduler
Use iotop to monitor disk usage:
sudo dnf install iotop -y
sudo iotop
Optimize Memory Usage¶
Increase file descriptors limit:
sudo vi /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535
Reduce swapping:
sudo sysctl -w vm.swappiness=10
Optimize Network Performance¶
Enable TCP Fast Open:
sudo sysctl -w net.ipv4.tcp_fastopen=3
sudo sysctl -w net.netfilter.nf_conntrack_max=100000
Use Oracle Linux UEK (Unbreakable Enterprise Kernel)¶
Check if you're using UEK:
uname -r
sudo dnf install kernel-uek -y
sudo grubby --set-default /boot/vmlinuz-$(ls /boot | grep uek | tail -1)
sudo reboot
Disable Unnecessary Services¶
List enabled services:
sudo systemctl list-unit-files --type=service | grep enabled
sudo systemctl disable servicename --now
Use Oracle Linux Ksplice (Live Kernel Patching)¶
Enables zero-downtime kernel patching:
sudo dnf install ksplice-uptrack -y
sudo systemctl enable --now uptrack
Monitor Performance¶
Use built-in tools:
top # Process monitoring
htop # Enhanced top (install with `sudo dnf install htop -y`)
iostat # Disk I/O (install with `sudo dnf install sysstat -y`)
vmstat # Memory and CPU stats