Skip to content

Conversation

@mugeshsp
Copy link

What type of PR is this?

This PR adds Ethtool configuration support for AKS nodes to enable custom RX buffer size configuration for network interfaces, improving network performance and reducing packet loss.

What this PR does / why we need it:

  • Introduces EthtoolConfig message in custom_linux_os_config.proto to allow custom RX buffer size configuration
  • Implements CPU-based default buffer sizing (2048 for >=4 cores, 1024 for <4 cores)
  • Adds validation functions for Ethtool configuration files and settings in validators.go
  • Creates necessary scripts and systemd service for configuring network interface RX buffers on AKS nodes
  • Updates cloud-init artifacts to include new scripts and service for Ethtool configuration
  • Enhances NodeBootstrappingConfiguration to support Ethtool settings
  • Includes comprehensive unit tests for Ethtool configuration functionality

Requirements:

  • uses conventional commit messages
  • includes documentation
  • adds unit tests
  • tested upgrade from previous version
  • commits are GPG signed and Github marks them as verified

Special notes for your reviewer:

Release note:

none

- Introduced EthtoolConfig message in custom_linux_os_config.proto to allow custom RX buffer size configuration.
- Implemented tests for Ethtool configuration in scenario_test.go, validating both custom and default settings.
- Added validation functions for Ethtool configuration files and settings in validators.go.
- Created necessary scripts and systemd service for configuring network interface RX buffers on AKS nodes.
- Updated cloud-init artifacts to include new scripts and service for Ethtool configuration.
- Enhanced NodeBootstrappingConfiguration to support Ethtool settings.
@mugeshsp mugeshsp changed the title Add Ethtool Config to CustomLinuxOSConfig feat: add Ethtool Config to CustomLinuxOSConfig Jan 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant