High Availability with Ksplice

Linux

Audience
Public
Product
FlashBlade
FlashArray
Technology Integrations
Linux
Source Type
Documentation

Ksplice Overview

What is Ksplice:

  • Zero-downtime kernel updates

  • Apply security patches without rebooting

  • Maintain NVMe-TCP connections during updates

  • Requires Oracle Linux Premier Support

Why it matters for storage:

  • No storage downtime for kernel updates

  • Maintain SLAs during patching windows

  • Reduce planned maintenance windows

  • Critical for 24/7 storage environments

Ksplice Setup

# Check if Ksplice is available (requires Premier Support)
sudo dnf list available | grep ksplice

# Install Ksplice
sudo dnf install -y uptrack

# Enable Ksplice
sudo uptrack-upgrade -y

# Check status
sudo uptrack-uname -r

Ksplice Best Practices for Storage

Before applying Ksplice updates:

# 1. Verify storage health
sudo nvme list-subsys
sudo nvme list

# 2. Check all paths are active
for subsys in /sys/class/nvme-subsystem/nvme-subsys*; do
    echo "Subsystem: $(basename $subsys)"
    cat $subsys/iopolicy
    ls $subsys/nvme*/state
done

# 3. Apply Ksplice update
sudo uptrack-upgrade -y

# 4. Verify storage still healthy
sudo nvme list-subsys

# 5. Check for any disconnections
sudo journalctl -k | grep nvme | tail -20

Monitoring Ksplice:

# Check what updates are available
sudo uptrack-show --available

# Check what updates are installed
sudo uptrack-show

# View Ksplice logs
sudo journalctl -u uptrack

Ksplice Automation

Automatic Ksplice updates:

# Enable automatic updates
sudo tee /etc/uptrack/uptrack.conf > /dev/null <<'EOF'
# Automatically install updates
autoinstall = yes

# Check for updates every 6 hours
check_interval = 6h

# Email notifications
#notify_email = admin@example.com
EOF

# Enable uptrack service
sudo systemctl enable --now uptrack-upgrade.timer

# Verify timer
systemctl status uptrack-upgrade.timer