Class: Google::Cloud::Container::V1beta1::LinuxNodeConfig
- Inherits:
-
Object
- Object
- Google::Cloud::Container::V1beta1::LinuxNodeConfig
- Extended by:
- Protobuf::MessageExts::ClassMethods
- Includes:
- Protobuf::MessageExts
- Defined in:
- proto_docs/google/container/v1beta1/cluster_service.rb
Overview
Parameters that can be configured on Linux nodes.
Defined Under Namespace
Modules: CgroupMode, TransparentHugepageDefrag, TransparentHugepageEnabled Classes: HugepagesConfig, SysctlsEntry
Instance Attribute Summary collapse
-
#cgroup_mode ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::CgroupMode
Cgroup_mode specifies the cgroup mode to be used on the node.
-
#hugepages ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::HugepagesConfig
Optional.
-
#sysctls ⇒ ::Google::Protobuf::Map{::String => ::String}
The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
-
#transparent_hugepage_defrag ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::TransparentHugepageDefrag
Optional.
-
#transparent_hugepage_enabled ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::TransparentHugepageEnabled
Optional.
Instance Attribute Details
#cgroup_mode ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::CgroupMode
Returns cgroup_mode specifies the cgroup mode to be used on the node.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
# File 'proto_docs/google/container/v1beta1/cluster_service.rb', line 94 class LinuxNodeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Hugepages amount in both 2m and 1g size # @!attribute [rw] hugepage_size2m # @return [::Integer] # Optional. Amount of 2M hugepages # @!attribute [rw] hugepage_size1g # @return [::Integer] # Optional. Amount of 1G hugepages class HugepagesConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class SysctlsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Possible cgroup modes that can be used. module CgroupMode # CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. # The default for the GKE node OS image will be used. CGROUP_MODE_UNSPECIFIED = 0 # CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on # the node image. CGROUP_MODE_V1 = 1 # CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on # the node image. CGROUP_MODE_V2 = 2 end # Possible values for transparent hugepage enabled support. module TransparentHugepageEnabled # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_UNSPECIFIED = 0 # Transparent hugepage support for anonymous memory is enabled system wide. TRANSPARENT_HUGEPAGE_ENABLED_ALWAYS = 1 # Transparent hugepage support for anonymous memory is enabled inside # MADV_HUGEPAGE regions. This is the default kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_MADVISE = 2 # Transparent hugepage support for anonymous memory is disabled. TRANSPARENT_HUGEPAGE_ENABLED_NEVER = 3 end # Possible values for transparent hugepage defrag support. module TransparentHugepageDefrag # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_UNSPECIFIED = 0 # It means that an application requesting THP will stall on allocation # failure and directly reclaim pages and compact memory in an effort to # allocate a THP immediately. TRANSPARENT_HUGEPAGE_DEFRAG_ALWAYS = 1 # It means that an application will wake kswapd in the background to # reclaim pages and wake kcompactd to compact memory so that THP is # available in the near future. It’s the responsibility of khugepaged to # then install the THP pages later. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER = 2 # It means that an application will enter direct reclaim and compaction # like always, but only for regions that have used madvise(MADV_HUGEPAGE); # all other regions will wake kswapd in the background to reclaim pages and # wake kcompactd to compact memory so that THP is available in the near # future. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER_WITH_MADVISE = 3 # It means that an application will enter direct reclaim like always but # only for regions that are have used madvise(MADV_HUGEPAGE). This is the # default kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_MADVISE = 4 # It means that an application will never enter direct reclaim or # compaction. TRANSPARENT_HUGEPAGE_DEFRAG_NEVER = 5 end end |
#hugepages ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::HugepagesConfig
Returns Optional. Amounts for 2M and 1G hugepages.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
# File 'proto_docs/google/container/v1beta1/cluster_service.rb', line 94 class LinuxNodeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Hugepages amount in both 2m and 1g size # @!attribute [rw] hugepage_size2m # @return [::Integer] # Optional. Amount of 2M hugepages # @!attribute [rw] hugepage_size1g # @return [::Integer] # Optional. Amount of 1G hugepages class HugepagesConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class SysctlsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Possible cgroup modes that can be used. module CgroupMode # CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. # The default for the GKE node OS image will be used. CGROUP_MODE_UNSPECIFIED = 0 # CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on # the node image. CGROUP_MODE_V1 = 1 # CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on # the node image. CGROUP_MODE_V2 = 2 end # Possible values for transparent hugepage enabled support. module TransparentHugepageEnabled # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_UNSPECIFIED = 0 # Transparent hugepage support for anonymous memory is enabled system wide. TRANSPARENT_HUGEPAGE_ENABLED_ALWAYS = 1 # Transparent hugepage support for anonymous memory is enabled inside # MADV_HUGEPAGE regions. This is the default kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_MADVISE = 2 # Transparent hugepage support for anonymous memory is disabled. TRANSPARENT_HUGEPAGE_ENABLED_NEVER = 3 end # Possible values for transparent hugepage defrag support. module TransparentHugepageDefrag # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_UNSPECIFIED = 0 # It means that an application requesting THP will stall on allocation # failure and directly reclaim pages and compact memory in an effort to # allocate a THP immediately. TRANSPARENT_HUGEPAGE_DEFRAG_ALWAYS = 1 # It means that an application will wake kswapd in the background to # reclaim pages and wake kcompactd to compact memory so that THP is # available in the near future. It’s the responsibility of khugepaged to # then install the THP pages later. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER = 2 # It means that an application will enter direct reclaim and compaction # like always, but only for regions that have used madvise(MADV_HUGEPAGE); # all other regions will wake kswapd in the background to reclaim pages and # wake kcompactd to compact memory so that THP is available in the near # future. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER_WITH_MADVISE = 3 # It means that an application will enter direct reclaim like always but # only for regions that are have used madvise(MADV_HUGEPAGE). This is the # default kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_MADVISE = 4 # It means that an application will never enter direct reclaim or # compaction. TRANSPARENT_HUGEPAGE_DEFRAG_NEVER = 5 end end |
#sysctls ⇒ ::Google::Protobuf::Map{::String => ::String}
Returns The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
The following parameters are supported.
net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_max_orphans net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.shmmni kernel.shmmax kernel.shmall fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
# File 'proto_docs/google/container/v1beta1/cluster_service.rb', line 94 class LinuxNodeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Hugepages amount in both 2m and 1g size # @!attribute [rw] hugepage_size2m # @return [::Integer] # Optional. Amount of 2M hugepages # @!attribute [rw] hugepage_size1g # @return [::Integer] # Optional. Amount of 1G hugepages class HugepagesConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class SysctlsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Possible cgroup modes that can be used. module CgroupMode # CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. # The default for the GKE node OS image will be used. CGROUP_MODE_UNSPECIFIED = 0 # CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on # the node image. CGROUP_MODE_V1 = 1 # CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on # the node image. CGROUP_MODE_V2 = 2 end # Possible values for transparent hugepage enabled support. module TransparentHugepageEnabled # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_UNSPECIFIED = 0 # Transparent hugepage support for anonymous memory is enabled system wide. TRANSPARENT_HUGEPAGE_ENABLED_ALWAYS = 1 # Transparent hugepage support for anonymous memory is enabled inside # MADV_HUGEPAGE regions. This is the default kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_MADVISE = 2 # Transparent hugepage support for anonymous memory is disabled. TRANSPARENT_HUGEPAGE_ENABLED_NEVER = 3 end # Possible values for transparent hugepage defrag support. module TransparentHugepageDefrag # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_UNSPECIFIED = 0 # It means that an application requesting THP will stall on allocation # failure and directly reclaim pages and compact memory in an effort to # allocate a THP immediately. TRANSPARENT_HUGEPAGE_DEFRAG_ALWAYS = 1 # It means that an application will wake kswapd in the background to # reclaim pages and wake kcompactd to compact memory so that THP is # available in the near future. It’s the responsibility of khugepaged to # then install the THP pages later. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER = 2 # It means that an application will enter direct reclaim and compaction # like always, but only for regions that have used madvise(MADV_HUGEPAGE); # all other regions will wake kswapd in the background to reclaim pages and # wake kcompactd to compact memory so that THP is available in the near # future. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER_WITH_MADVISE = 3 # It means that an application will enter direct reclaim like always but # only for regions that are have used madvise(MADV_HUGEPAGE). This is the # default kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_MADVISE = 4 # It means that an application will never enter direct reclaim or # compaction. TRANSPARENT_HUGEPAGE_DEFRAG_NEVER = 5 end end |
#transparent_hugepage_defrag ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::TransparentHugepageDefrag
Returns Optional. Defines the transparent hugepage defrag configuration on the node. VM hugepage allocation can be managed by either limiting defragmentation for delayed allocation or skipping it entirely for immediate allocation only.
See https://docs.kernel.org/admin-guide/mm/transhuge.html for more details.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
# File 'proto_docs/google/container/v1beta1/cluster_service.rb', line 94 class LinuxNodeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Hugepages amount in both 2m and 1g size # @!attribute [rw] hugepage_size2m # @return [::Integer] # Optional. Amount of 2M hugepages # @!attribute [rw] hugepage_size1g # @return [::Integer] # Optional. Amount of 1G hugepages class HugepagesConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class SysctlsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Possible cgroup modes that can be used. module CgroupMode # CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. # The default for the GKE node OS image will be used. CGROUP_MODE_UNSPECIFIED = 0 # CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on # the node image. CGROUP_MODE_V1 = 1 # CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on # the node image. CGROUP_MODE_V2 = 2 end # Possible values for transparent hugepage enabled support. module TransparentHugepageEnabled # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_UNSPECIFIED = 0 # Transparent hugepage support for anonymous memory is enabled system wide. TRANSPARENT_HUGEPAGE_ENABLED_ALWAYS = 1 # Transparent hugepage support for anonymous memory is enabled inside # MADV_HUGEPAGE regions. This is the default kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_MADVISE = 2 # Transparent hugepage support for anonymous memory is disabled. TRANSPARENT_HUGEPAGE_ENABLED_NEVER = 3 end # Possible values for transparent hugepage defrag support. module TransparentHugepageDefrag # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_UNSPECIFIED = 0 # It means that an application requesting THP will stall on allocation # failure and directly reclaim pages and compact memory in an effort to # allocate a THP immediately. TRANSPARENT_HUGEPAGE_DEFRAG_ALWAYS = 1 # It means that an application will wake kswapd in the background to # reclaim pages and wake kcompactd to compact memory so that THP is # available in the near future. It’s the responsibility of khugepaged to # then install the THP pages later. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER = 2 # It means that an application will enter direct reclaim and compaction # like always, but only for regions that have used madvise(MADV_HUGEPAGE); # all other regions will wake kswapd in the background to reclaim pages and # wake kcompactd to compact memory so that THP is available in the near # future. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER_WITH_MADVISE = 3 # It means that an application will enter direct reclaim like always but # only for regions that are have used madvise(MADV_HUGEPAGE). This is the # default kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_MADVISE = 4 # It means that an application will never enter direct reclaim or # compaction. TRANSPARENT_HUGEPAGE_DEFRAG_NEVER = 5 end end |
#transparent_hugepage_enabled ⇒ ::Google::Cloud::Container::V1beta1::LinuxNodeConfig::TransparentHugepageEnabled
Returns Optional. Transparent hugepage support for anonymous memory can be entirely disabled (mostly for debugging purposes) or only enabled inside MADV_HUGEPAGE regions (to avoid the risk of consuming more memory resources) or enabled system wide.
See https://docs.kernel.org/admin-guide/mm/transhuge.html for more details.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
# File 'proto_docs/google/container/v1beta1/cluster_service.rb', line 94 class LinuxNodeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Hugepages amount in both 2m and 1g size # @!attribute [rw] hugepage_size2m # @return [::Integer] # Optional. Amount of 2M hugepages # @!attribute [rw] hugepage_size1g # @return [::Integer] # Optional. Amount of 1G hugepages class HugepagesConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class SysctlsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Possible cgroup modes that can be used. module CgroupMode # CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. # The default for the GKE node OS image will be used. CGROUP_MODE_UNSPECIFIED = 0 # CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on # the node image. CGROUP_MODE_V1 = 1 # CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on # the node image. CGROUP_MODE_V2 = 2 end # Possible values for transparent hugepage enabled support. module TransparentHugepageEnabled # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_UNSPECIFIED = 0 # Transparent hugepage support for anonymous memory is enabled system wide. TRANSPARENT_HUGEPAGE_ENABLED_ALWAYS = 1 # Transparent hugepage support for anonymous memory is enabled inside # MADV_HUGEPAGE regions. This is the default kernel configuration. TRANSPARENT_HUGEPAGE_ENABLED_MADVISE = 2 # Transparent hugepage support for anonymous memory is disabled. TRANSPARENT_HUGEPAGE_ENABLED_NEVER = 3 end # Possible values for transparent hugepage defrag support. module TransparentHugepageDefrag # Default value. GKE will not modify the kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_UNSPECIFIED = 0 # It means that an application requesting THP will stall on allocation # failure and directly reclaim pages and compact memory in an effort to # allocate a THP immediately. TRANSPARENT_HUGEPAGE_DEFRAG_ALWAYS = 1 # It means that an application will wake kswapd in the background to # reclaim pages and wake kcompactd to compact memory so that THP is # available in the near future. It’s the responsibility of khugepaged to # then install the THP pages later. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER = 2 # It means that an application will enter direct reclaim and compaction # like always, but only for regions that have used madvise(MADV_HUGEPAGE); # all other regions will wake kswapd in the background to reclaim pages and # wake kcompactd to compact memory so that THP is available in the near # future. TRANSPARENT_HUGEPAGE_DEFRAG_DEFER_WITH_MADVISE = 3 # It means that an application will enter direct reclaim like always but # only for regions that are have used madvise(MADV_HUGEPAGE). This is the # default kernel configuration. TRANSPARENT_HUGEPAGE_DEFRAG_MADVISE = 4 # It means that an application will never enter direct reclaim or # compaction. TRANSPARENT_HUGEPAGE_DEFRAG_NEVER = 5 end end |