Class LinuxOSConfig


  • public final class LinuxOSConfig
    extends Object
    OS configurations of Linux agent nodes. See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.
    • Constructor Detail

      • LinuxOSConfig

        public LinuxOSConfig()
    • Method Detail

      • sysctls

        public SysctlConfig sysctls()
        Get the sysctls property: Sysctl settings for Linux agent nodes.
        Returns:
        the sysctls value.
      • withSysctls

        public LinuxOSConfig withSysctls​(SysctlConfig sysctls)
        Set the sysctls property: Sysctl settings for Linux agent nodes.
        Parameters:
        sysctls - the sysctls value to set.
        Returns:
        the LinuxOSConfig object itself.
      • transparentHugePageEnabled

        public String transparentHugePageEnabled()
        Get the transparentHugePageEnabled property: Whether transparent hugepages are enabled. Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
        Returns:
        the transparentHugePageEnabled value.
      • withTransparentHugePageEnabled

        public LinuxOSConfig withTransparentHugePageEnabled​(String transparentHugePageEnabled)
        Set the transparentHugePageEnabled property: Whether transparent hugepages are enabled. Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
        Parameters:
        transparentHugePageEnabled - the transparentHugePageEnabled value to set.
        Returns:
        the LinuxOSConfig object itself.
      • transparentHugePageDefrag

        public String transparentHugePageDefrag()
        Get the transparentHugePageDefrag property: Whether the kernel should make aggressive use of memory compaction to make more hugepages available. Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
        Returns:
        the transparentHugePageDefrag value.
      • withTransparentHugePageDefrag

        public LinuxOSConfig withTransparentHugePageDefrag​(String transparentHugePageDefrag)
        Set the transparentHugePageDefrag property: Whether the kernel should make aggressive use of memory compaction to make more hugepages available. Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
        Parameters:
        transparentHugePageDefrag - the transparentHugePageDefrag value to set.
        Returns:
        the LinuxOSConfig object itself.
      • swapFileSizeMB

        public Integer swapFileSizeMB()
        Get the swapFileSizeMB property: The size in MB of a swap file that will be created on each node.
        Returns:
        the swapFileSizeMB value.
      • withSwapFileSizeMB

        public LinuxOSConfig withSwapFileSizeMB​(Integer swapFileSizeMB)
        Set the swapFileSizeMB property: The size in MB of a swap file that will be created on each node.
        Parameters:
        swapFileSizeMB - the swapFileSizeMB value to set.
        Returns:
        the LinuxOSConfig object itself.
      • validate

        public void validate()
        Validates the instance.
        Throws:
        IllegalArgumentException - thrown if the instance is not valid.