Class: Google::Apis::ContainerV1beta1::LinuxNodeConfig
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1beta1::LinuxNodeConfig
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb
Overview
Parameters that can be configured on Linux nodes.
Instance Attribute Summary collapse
-
#accurate_time_config ⇒ Google::Apis::ContainerV1beta1::AccurateTimeConfig
AccurateTimeConfig contains configuration for the accurate time synchronization feature.
-
#cgroup_mode ⇒ String
cgroup_mode specifies the cgroup mode to be used on the node.
-
#custom_node_init ⇒ Google::Apis::ContainerV1beta1::CustomNodeInit
Support for running custom init code while bootstrapping nodes.
-
#hugepages ⇒ Google::Apis::ContainerV1beta1::HugepagesConfig
Hugepages amount in both 2m and 1g size Corresponds to the JSON property
hugepages. -
#node_kernel_module_loading ⇒ Google::Apis::ContainerV1beta1::NodeKernelModuleLoading
Configuration for kernel module loading on nodes.
-
#swap_config ⇒ Google::Apis::ContainerV1beta1::SwapConfig
Configuration for swap memory on a node pool.
-
#sysctls ⇒ Hash<String,String>
The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
-
#transparent_hugepage_defrag ⇒ String
Optional.
-
#transparent_hugepage_enabled ⇒ String
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ LinuxNodeConfig
constructor
A new instance of LinuxNodeConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ LinuxNodeConfig
Returns a new instance of LinuxNodeConfig.
5539 5540 5541 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5539 def initialize(**args) update!(**args) end |
Instance Attribute Details
#accurate_time_config ⇒ Google::Apis::ContainerV1beta1::AccurateTimeConfig
AccurateTimeConfig contains configuration for the accurate time
synchronization feature.
Corresponds to the JSON property accurateTimeConfig
5470 5471 5472 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5470 def accurate_time_config @accurate_time_config end |
#cgroup_mode ⇒ String
cgroup_mode specifies the cgroup mode to be used on the node.
Corresponds to the JSON property cgroupMode
5475 5476 5477 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5475 def cgroup_mode @cgroup_mode end |
#custom_node_init ⇒ Google::Apis::ContainerV1beta1::CustomNodeInit
Support for running custom init code while bootstrapping nodes.
Corresponds to the JSON property customNodeInit
5480 5481 5482 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5480 def custom_node_init @custom_node_init end |
#hugepages ⇒ Google::Apis::ContainerV1beta1::HugepagesConfig
Hugepages amount in both 2m and 1g size
Corresponds to the JSON property hugepages
5485 5486 5487 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5485 def hugepages @hugepages end |
#node_kernel_module_loading ⇒ Google::Apis::ContainerV1beta1::NodeKernelModuleLoading
Configuration for kernel module loading on nodes.
Corresponds to the JSON property nodeKernelModuleLoading
5490 5491 5492 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5490 def node_kernel_module_loading @node_kernel_module_loading end |
#swap_config ⇒ Google::Apis::ContainerV1beta1::SwapConfig
Configuration for swap memory on a node pool.
Corresponds to the JSON property swapConfig
5495 5496 5497 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5495 def swap_config @swap_config end |
#sysctls ⇒ Hash<String,String>
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.neigh.default.gc_thresh1 net.ipv4.neigh.default.gc_thresh2 net.ipv4.
neigh.default.gc_thresh3 net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.
tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.
tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.
tcp_congestion_control 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.
keys.maxkeys kernel.keys.maxbytes kernel.shmmni kernel.shmmax kernel.shmall
kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic
kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.
sysrq 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_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes
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
Corresponds to the JSON property sysctls
5520 5521 5522 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5520 def sysctls @sysctls end |
#transparent_hugepage_defrag ⇒ String
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.
Corresponds to the JSON property transparentHugepageDefrag
5528 5529 5530 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5528 def transparent_hugepage_defrag @transparent_hugepage_defrag end |
#transparent_hugepage_enabled ⇒ String
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.
Corresponds to the JSON property transparentHugepageEnabled
5537 5538 5539 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5537 def transparent_hugepage_enabled @transparent_hugepage_enabled end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 5544 def update!(**args) @accurate_time_config = args[:accurate_time_config] if args.key?(:accurate_time_config) @cgroup_mode = args[:cgroup_mode] if args.key?(:cgroup_mode) @custom_node_init = args[:custom_node_init] if args.key?(:custom_node_init) @hugepages = args[:hugepages] if args.key?(:hugepages) @node_kernel_module_loading = args[:node_kernel_module_loading] if args.key?(:node_kernel_module_loading) @swap_config = args[:swap_config] if args.key?(:swap_config) @sysctls = args[:sysctls] if args.key?(:sysctls) @transparent_hugepage_defrag = args[:transparent_hugepage_defrag] if args.key?(:transparent_hugepage_defrag) @transparent_hugepage_enabled = args[:transparent_hugepage_enabled] if args.key?(:transparent_hugepage_enabled) end |