Skip to the content.

Environment Validation Guide

This guide covers the environment validation process for the OpenShift Agent Install Helper, ensuring all prerequisites and configurations are correctly set up.

Overview

Environment validation is a critical step that:

Validation Components

1. System Requirements

# Minimum requirements
- CPU: 8+ cores
- RAM: 32+ GB
- Storage: 500+ GB
- Network: 1+ GbE

2. Required Packages

# Core packages
- nmstate
- ansible-core
- bind-utils
- libguestfs
- cloud-init
- virt-install
- qemu-img
- virt-manager
- podman

3. OpenShift Tools

# Required tools
- OpenShift CLI (oc)
- OpenShift Installer
- NMState CLI

Validation Process

1. Running Validation

# Execute validation script
./e2e-tests/validate_env.sh

2. Validation Steps

  1. System Validation
    • OS version check
    • Resource verification
    • Package validation
    • Service status
  2. Tool Validation
    • CLI availability
    • Version compatibility
    • Configuration check
    • Permission verification
  3. Network Validation
    • Connectivity check
    • DNS resolution
    • Network interface status
    • VLAN availability
  4. Infrastructure Validation
    • Virtualization support
    • Storage configuration
    • Service availability
    • Security settings

Validation Results

1. Success Indicators

# Example successful validation
✓ Operating system requirements met
✓ Required packages installed
✓ OpenShift tools available
✓ Network configuration valid
✓ Infrastructure services running

2. Error Messages

# Example error messages
✗ Missing required package: nmstate
✗ Insufficient system memory
✗ Network interface not found
✗ Service not running: libvirtd

Common Issues

1. System Requirements

2. Network Configuration

3. Service Issues

Resolution Steps

1. Package Issues

# Install missing packages
sudo dnf install -y nmstate ansible-core bind-utils

# Verify installation
rpm -q package_name

2. Network Problems

# Check DNS resolution
dig +short api.cluster.domain

# Verify network interface
nmcli device show

# Test connectivity
ping -c 4 gateway_ip

3. Service Problems

# Check service status
systemctl status service_name

# Start service
sudo systemctl start service_name

# Enable service
sudo systemctl enable service_name

Best Practices

1. Pre-validation

2. During Validation

3. Post-validation

Troubleshooting

1. Validation Failures

  1. Check system logs
  2. Verify requirements
  3. Review configurations
  4. Test components

2. Resource Issues

  1. Monitor usage
  2. Free resources
  3. Adjust limits
  4. Optimize configuration

3. Configuration Problems

  1. Review settings
  2. Check syntax
  3. Verify permissions
  4. Test changes