Class LinuxOSConfig
java.lang.Object
com.azure.resourcemanager.containerservice.models.LinuxOSConfig
- All Implemented Interfaces:
com.azure.json.JsonSerializable<LinuxOSConfig>
public final class LinuxOSConfig
extends Object
implements com.azure.json.JsonSerializable<LinuxOSConfig>
OS configurations of Linux agent nodes. See [AKS custom node
configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic LinuxOSConfigfromJson(com.azure.json.JsonReader jsonReader) Reads an instance of LinuxOSConfig from the JsonReader.Get the swapFileSizeMB property: The size in MB of a swap file that will be created on each node.sysctls()Get the sysctls property: Sysctl settings for Linux agent nodes.com.azure.json.JsonWritertoJson(com.azure.json.JsonWriter jsonWriter) Get the transparentHugePageDefrag property: Whether the kernel should make aggressive use of memory compaction to make more hugepages available.Get the transparentHugePageEnabled property: Whether transparent hugepages are enabled.voidvalidate()Validates the instance.withSwapFileSizeMB(Integer swapFileSizeMB) Set the swapFileSizeMB property: The size in MB of a swap file that will be created on each node.withSysctls(SysctlConfig sysctls) Set the sysctls property: Sysctl settings for Linux agent nodes.withTransparentHugePageDefrag(String transparentHugePageDefrag) Set the transparentHugePageDefrag property: Whether the kernel should make aggressive use of memory compaction to make more hugepages available.withTransparentHugePageEnabled(String transparentHugePageEnabled) Set the transparentHugePageEnabled property: Whether transparent hugepages are enabled.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.azure.json.JsonSerializable
toJson, toJson, toJsonBytes, toJsonString
-
Constructor Details
-
LinuxOSConfig
public LinuxOSConfig()Creates an instance of LinuxOSConfig class.
-
-
Method Details
-
sysctls
Get the sysctls property: Sysctl settings for Linux agent nodes.- Returns:
- the sysctls value.
-
withSysctls
Set the sysctls property: Sysctl settings for Linux agent nodes.- Parameters:
sysctls- the sysctls value to set.- Returns:
- the LinuxOSConfig object itself.
-
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
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
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
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
Get the swapFileSizeMB property: The size in MB of a swap file that will be created on each node.- Returns:
- the swapFileSizeMB value.
-
withSwapFileSizeMB
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.
-
toJson
- Specified by:
toJsonin interfacecom.azure.json.JsonSerializable<LinuxOSConfig>- Throws:
IOException
-
fromJson
Reads an instance of LinuxOSConfig from the JsonReader.- Parameters:
jsonReader- The JsonReader being read.- Returns:
- An instance of LinuxOSConfig if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
- Throws:
IOException- If an error occurs while reading the LinuxOSConfig.
-