Rocky 9 Installation Validation Results
Test Environment
- OS: Rocky Linux 9.2 (Blue Onyx)
- Test Date: November 21, 2025
- Server: 193.40.154.165
- Initial Access: SSH as
rocky user
Validation Progress
✅ Completed Steps
- Confirmed Rocky Linux 9.2 (Blue Onyx)
- ID: rocky, VERSION_ID: 9.2
- Support until 2032-05-31
System Update Process
sudo dnf update -y initiated successfully
- Process began updating 280 packages including kernel 5.14.0-570.58.1.el9_6
- Large updates including linux-firmware (658 MB) and other system components
dnf groupinstall "Development Tools" started successfully
- Installation included essential packages:
- gcc, gcc-c++, make, git, autoconf, automake
- binutils, bison, flex, libtool, etc.
⚠️ Interrupted Steps
Connection Lost
- Server became unreachable during package installation
- SSH connection refused (port 22)
- Likely system reboot during kernel update process
Identified Requirements for Rocky 9
Based on initial testing and system analysis:
System Dependencies
- EPEL Repository - Required for additional packages
| sudo dnf install -y epel-release
|
- Development Tools Group - Essential for building Python packages
| sudo dnf groupinstall "Development Tools" -y
|
- System Libraries - Required for waldur-site-agent dependencies
| sudo dnf install -y openssl-devel libffi-devel bzip2-devel sqlite-devel
|
Python 3.11 Installation
Rocky 9 ships with Python 3.9 by default. For optimal compatibility:
| # Install from EPEL repository
sudo dnf install -y python3.11 python3.11-pip python3.11-devel
|
Security Considerations
- SELinux - Enabled by default, requires proper contexts
- Firewalld - Active, needs configuration for API endpoints
- Service User - Dedicated user recommended for security
Service Management
- Systemd - Version supports required features
- Journal Logging - Available for log management
- Service Dependencies - Standard systemd unit files compatible
Recommended Installation Refinements
1. Robust Installation Script
Create a script that handles common issues:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | #!/bin/bash
# rocky9-install-waldur-agent.sh
set -e
echo "Installing Waldur Site Agent on Rocky Linux 9..."
# Update system
sudo dnf update -y
# Install EPEL
sudo dnf install -y epel-release
# Install development tools (in one command to reduce interruptions)
sudo dnf groupinstall "Development Tools" -y
sudo dnf install -y git curl wget openssl-devel libffi-devel bzip2-devel sqlite-devel python3.11 python3.11-pip python3.11-devel
# Install UV
curl -LsSf https://astral.sh/uv/install.sh | sh
source ~/.bashrc
echo "Base system preparation complete."
|
2. Service User Setup
| # Create service user with proper home directory
sudo useradd -r -s /bin/bash -d /opt/waldur-agent -m waldur-agent
# Set up directory structure
sudo mkdir -p /etc/waldur /var/log/waldur-agent
sudo chown waldur-agent:waldur-agent /etc/waldur /var/log/waldur-agent
sudo chmod 750 /etc/waldur /var/log/waldur-agent
|
3. SELinux Configuration
| # Set proper contexts
sudo setsebool -P httpd_can_network_connect 1
sudo semanage fcontext -a -t admin_home_t "/opt/waldur-agent(/.*)?"
sudo restorecon -R /opt/waldur-agent/
|
Next Steps for Complete Validation
- Reconnect to System - When server is available
- Complete Installation - Run through full process
- Test All Modes - Verify each agent mode works
- Document Issues - Any Rocky 9 specific problems
- Performance Testing - Resource usage and stability
Known Considerations
Package Management
- DNF is the package manager (not YUM)
- EPEL repository needed for additional packages
- Rocky repositories mirror RHEL structure
Python Environment
- Default Python 3.9 should work but 3.11 recommended
- UV package manager preferred over pip
- Virtual environments recommended for isolation
Networking
- Firewalld active by default
- NetworkManager handles network configuration
- IPv6 enabled by default
Security
- SELinux enforcing by default
- Automatic security updates available via dnf-automatic
- Audit logging enabled
Lessons Learned
- Large Updates - Rocky 9 systems may require significant updates on fresh install
- Reboot Required - Kernel updates may cause system restart
- Connection Stability - Plan for potential interruptions during system updates
- EPEL Dependency - Many development packages require EPEL repository
Recommendations for Documentation
- Add Reboot Warning - Inform users about potential system restart during updates
- Connection Recovery - Document how to handle SSH disconnections
- Verification Steps - Add commands to verify installation at each step
- Troubleshooting - Common issues and solutions section