java.lang.Object
com.azure.resourcemanager.containerservice.models.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 Details

    • LinuxOSConfig

      public LinuxOSConfig()
  • Method Details

    • 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.