mirror of
https://github.com/arangodb/kube-arangodb.git
synced 2024-12-14 11:57:37 +00:00
[Feature] Numactl Options (#1368)
This commit is contained in:
parent
cc1f19651d
commit
647f2aa41b
11 changed files with 586 additions and 115 deletions
|
@ -7,6 +7,7 @@
|
|||
- (Feature) Expose core.PodSecurityContext Sysctl options
|
||||
- (Bugfix) Skip Collection check for missing Database
|
||||
- (Feature) Abort resignation of leadership when DB server is restared
|
||||
- (Feature) Numactl Options
|
||||
|
||||
## [1.2.31](https://github.com/arangodb/kube-arangodb/tree/1.2.31) (2023-07-14)
|
||||
- (Improvement) Block traffic on the services if there is more than 1 active leader in ActiveFailover mode
|
||||
|
|
|
@ -184,6 +184,30 @@ NodeSelector speficies a set of selectors for nodes
|
|||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L114)
|
||||
|
||||
### .spec.agents.numactl.args: []string
|
||||
|
||||
Args define list of the numactl process
|
||||
|
||||
Default Value: []
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L38)
|
||||
|
||||
### .spec.agents.numactl.enabled: bool
|
||||
|
||||
Enabled define if numactl should be enabled
|
||||
|
||||
Default Value: false
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L30)
|
||||
|
||||
### .spec.agents.numactl.path: string
|
||||
|
||||
Path define numactl path within the container
|
||||
|
||||
Default Value: /usr/bin/numactl
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L34)
|
||||
|
||||
### .spec.agents.overrideDetectedNumberOfCores: bool
|
||||
|
||||
OverrideDetectedNumberOfCores determines if number of cores should be overrided based on values in resources.
|
||||
|
@ -220,86 +244,86 @@ PriorityClassName specifies a priority class name
|
|||
|
||||
LivenessProbeDisabled if true livenessProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L188)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L191)
|
||||
|
||||
### .spec.agents.probes.livenessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.agents.probes.livenessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.agents.probes.livenessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.agents.probes.livenessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.agents.probes.livenessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.agents.probes.ReadinessProbeDisabled: bool
|
||||
|
||||
OldReadinessProbeDisabled if true readinessProbes are disabled
|
||||
Deprecated: This field is deprecated, keept only for backward compatibility.
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L195)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L198)
|
||||
|
||||
### .spec.agents.probes.readinessProbeDisabled: bool
|
||||
|
||||
ReadinessProbeDisabled override flag for probe disabled in good manner (lowercase) with backward compatibility
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L197)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L200)
|
||||
|
||||
### .spec.agents.probes.readinessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.agents.probes.readinessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.agents.probes.readinessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.agents.probes.readinessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.agents.probes.readinessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.agents.probes.startupProbeDisabled: bool
|
||||
|
||||
StartupProbeDisabled if true startupProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L202)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L205)
|
||||
|
||||
### .spec.agents.probes.startupProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.agents.probes.startupProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.agents.probes.startupProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.agents.probes.startupProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.agents.probes.startupProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.agents.pvcResizeMode: string
|
||||
|
||||
|
@ -807,6 +831,30 @@ NodeSelector speficies a set of selectors for nodes
|
|||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L114)
|
||||
|
||||
### .spec.coordinators.numactl.args: []string
|
||||
|
||||
Args define list of the numactl process
|
||||
|
||||
Default Value: []
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L38)
|
||||
|
||||
### .spec.coordinators.numactl.enabled: bool
|
||||
|
||||
Enabled define if numactl should be enabled
|
||||
|
||||
Default Value: false
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L30)
|
||||
|
||||
### .spec.coordinators.numactl.path: string
|
||||
|
||||
Path define numactl path within the container
|
||||
|
||||
Default Value: /usr/bin/numactl
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L34)
|
||||
|
||||
### .spec.coordinators.overrideDetectedNumberOfCores: bool
|
||||
|
||||
OverrideDetectedNumberOfCores determines if number of cores should be overrided based on values in resources.
|
||||
|
@ -843,86 +891,86 @@ PriorityClassName specifies a priority class name
|
|||
|
||||
LivenessProbeDisabled if true livenessProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L188)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L191)
|
||||
|
||||
### .spec.coordinators.probes.livenessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.coordinators.probes.livenessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.coordinators.probes.livenessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.coordinators.probes.livenessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.coordinators.probes.livenessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.coordinators.probes.ReadinessProbeDisabled: bool
|
||||
|
||||
OldReadinessProbeDisabled if true readinessProbes are disabled
|
||||
Deprecated: This field is deprecated, keept only for backward compatibility.
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L195)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L198)
|
||||
|
||||
### .spec.coordinators.probes.readinessProbeDisabled: bool
|
||||
|
||||
ReadinessProbeDisabled override flag for probe disabled in good manner (lowercase) with backward compatibility
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L197)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L200)
|
||||
|
||||
### .spec.coordinators.probes.readinessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.coordinators.probes.readinessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.coordinators.probes.readinessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.coordinators.probes.readinessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.coordinators.probes.readinessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.coordinators.probes.startupProbeDisabled: bool
|
||||
|
||||
StartupProbeDisabled if true startupProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L202)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L205)
|
||||
|
||||
### .spec.coordinators.probes.startupProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.coordinators.probes.startupProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.coordinators.probes.startupProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.coordinators.probes.startupProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.coordinators.probes.startupProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.coordinators.pvcResizeMode: string
|
||||
|
||||
|
@ -1345,6 +1393,30 @@ NodeSelector speficies a set of selectors for nodes
|
|||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L114)
|
||||
|
||||
### .spec.dbservers.numactl.args: []string
|
||||
|
||||
Args define list of the numactl process
|
||||
|
||||
Default Value: []
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L38)
|
||||
|
||||
### .spec.dbservers.numactl.enabled: bool
|
||||
|
||||
Enabled define if numactl should be enabled
|
||||
|
||||
Default Value: false
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L30)
|
||||
|
||||
### .spec.dbservers.numactl.path: string
|
||||
|
||||
Path define numactl path within the container
|
||||
|
||||
Default Value: /usr/bin/numactl
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L34)
|
||||
|
||||
### .spec.dbservers.overrideDetectedNumberOfCores: bool
|
||||
|
||||
OverrideDetectedNumberOfCores determines if number of cores should be overrided based on values in resources.
|
||||
|
@ -1381,86 +1453,86 @@ PriorityClassName specifies a priority class name
|
|||
|
||||
LivenessProbeDisabled if true livenessProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L188)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L191)
|
||||
|
||||
### .spec.dbservers.probes.livenessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.dbservers.probes.livenessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.dbservers.probes.livenessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.dbservers.probes.livenessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.dbservers.probes.livenessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.dbservers.probes.ReadinessProbeDisabled: bool
|
||||
|
||||
OldReadinessProbeDisabled if true readinessProbes are disabled
|
||||
Deprecated: This field is deprecated, keept only for backward compatibility.
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L195)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L198)
|
||||
|
||||
### .spec.dbservers.probes.readinessProbeDisabled: bool
|
||||
|
||||
ReadinessProbeDisabled override flag for probe disabled in good manner (lowercase) with backward compatibility
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L197)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L200)
|
||||
|
||||
### .spec.dbservers.probes.readinessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.dbservers.probes.readinessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.dbservers.probes.readinessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.dbservers.probes.readinessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.dbservers.probes.readinessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.dbservers.probes.startupProbeDisabled: bool
|
||||
|
||||
StartupProbeDisabled if true startupProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L202)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L205)
|
||||
|
||||
### .spec.dbservers.probes.startupProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.dbservers.probes.startupProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.dbservers.probes.startupProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.dbservers.probes.startupProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.dbservers.probes.startupProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.dbservers.pvcResizeMode: string
|
||||
|
||||
|
@ -2321,6 +2393,30 @@ NodeSelector speficies a set of selectors for nodes
|
|||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L114)
|
||||
|
||||
### .spec.single.numactl.args: []string
|
||||
|
||||
Args define list of the numactl process
|
||||
|
||||
Default Value: []
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L38)
|
||||
|
||||
### .spec.single.numactl.enabled: bool
|
||||
|
||||
Enabled define if numactl should be enabled
|
||||
|
||||
Default Value: false
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L30)
|
||||
|
||||
### .spec.single.numactl.path: string
|
||||
|
||||
Path define numactl path within the container
|
||||
|
||||
Default Value: /usr/bin/numactl
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L34)
|
||||
|
||||
### .spec.single.overrideDetectedNumberOfCores: bool
|
||||
|
||||
OverrideDetectedNumberOfCores determines if number of cores should be overrided based on values in resources.
|
||||
|
@ -2357,86 +2453,86 @@ PriorityClassName specifies a priority class name
|
|||
|
||||
LivenessProbeDisabled if true livenessProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L188)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L191)
|
||||
|
||||
### .spec.single.probes.livenessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.single.probes.livenessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.single.probes.livenessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.single.probes.livenessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.single.probes.livenessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.single.probes.ReadinessProbeDisabled: bool
|
||||
|
||||
OldReadinessProbeDisabled if true readinessProbes are disabled
|
||||
Deprecated: This field is deprecated, keept only for backward compatibility.
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L195)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L198)
|
||||
|
||||
### .spec.single.probes.readinessProbeDisabled: bool
|
||||
|
||||
ReadinessProbeDisabled override flag for probe disabled in good manner (lowercase) with backward compatibility
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L197)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L200)
|
||||
|
||||
### .spec.single.probes.readinessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.single.probes.readinessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.single.probes.readinessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.single.probes.readinessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.single.probes.readinessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.single.probes.startupProbeDisabled: bool
|
||||
|
||||
StartupProbeDisabled if true startupProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L202)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L205)
|
||||
|
||||
### .spec.single.probes.startupProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.single.probes.startupProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.single.probes.startupProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.single.probes.startupProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.single.probes.startupProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.single.pvcResizeMode: string
|
||||
|
||||
|
@ -2961,6 +3057,30 @@ NodeSelector speficies a set of selectors for nodes
|
|||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L114)
|
||||
|
||||
### .spec.syncmasters.numactl.args: []string
|
||||
|
||||
Args define list of the numactl process
|
||||
|
||||
Default Value: []
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L38)
|
||||
|
||||
### .spec.syncmasters.numactl.enabled: bool
|
||||
|
||||
Enabled define if numactl should be enabled
|
||||
|
||||
Default Value: false
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L30)
|
||||
|
||||
### .spec.syncmasters.numactl.path: string
|
||||
|
||||
Path define numactl path within the container
|
||||
|
||||
Default Value: /usr/bin/numactl
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L34)
|
||||
|
||||
### .spec.syncmasters.overrideDetectedNumberOfCores: bool
|
||||
|
||||
OverrideDetectedNumberOfCores determines if number of cores should be overrided based on values in resources.
|
||||
|
@ -2997,86 +3117,86 @@ PriorityClassName specifies a priority class name
|
|||
|
||||
LivenessProbeDisabled if true livenessProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L188)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L191)
|
||||
|
||||
### .spec.syncmasters.probes.livenessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.syncmasters.probes.livenessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.syncmasters.probes.livenessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.syncmasters.probes.livenessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.syncmasters.probes.livenessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.syncmasters.probes.ReadinessProbeDisabled: bool
|
||||
|
||||
OldReadinessProbeDisabled if true readinessProbes are disabled
|
||||
Deprecated: This field is deprecated, keept only for backward compatibility.
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L195)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L198)
|
||||
|
||||
### .spec.syncmasters.probes.readinessProbeDisabled: bool
|
||||
|
||||
ReadinessProbeDisabled override flag for probe disabled in good manner (lowercase) with backward compatibility
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L197)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L200)
|
||||
|
||||
### .spec.syncmasters.probes.readinessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.syncmasters.probes.readinessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.syncmasters.probes.readinessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.syncmasters.probes.readinessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.syncmasters.probes.readinessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.syncmasters.probes.startupProbeDisabled: bool
|
||||
|
||||
StartupProbeDisabled if true startupProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L202)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L205)
|
||||
|
||||
### .spec.syncmasters.probes.startupProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.syncmasters.probes.startupProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.syncmasters.probes.startupProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.syncmasters.probes.startupProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.syncmasters.probes.startupProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.syncmasters.pvcResizeMode: string
|
||||
|
||||
|
@ -3493,6 +3613,30 @@ NodeSelector speficies a set of selectors for nodes
|
|||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L114)
|
||||
|
||||
### .spec.syncworkers.numactl.args: []string
|
||||
|
||||
Args define list of the numactl process
|
||||
|
||||
Default Value: []
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L38)
|
||||
|
||||
### .spec.syncworkers.numactl.enabled: bool
|
||||
|
||||
Enabled define if numactl should be enabled
|
||||
|
||||
Default Value: false
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L30)
|
||||
|
||||
### .spec.syncworkers.numactl.path: string
|
||||
|
||||
Path define numactl path within the container
|
||||
|
||||
Default Value: /usr/bin/numactl
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_numactl_spec.go#L34)
|
||||
|
||||
### .spec.syncworkers.overrideDetectedNumberOfCores: bool
|
||||
|
||||
OverrideDetectedNumberOfCores determines if number of cores should be overrided based on values in resources.
|
||||
|
@ -3529,86 +3673,86 @@ PriorityClassName specifies a priority class name
|
|||
|
||||
LivenessProbeDisabled if true livenessProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L188)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L191)
|
||||
|
||||
### .spec.syncworkers.probes.livenessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.syncworkers.probes.livenessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.syncworkers.probes.livenessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.syncworkers.probes.livenessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.syncworkers.probes.livenessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.syncworkers.probes.ReadinessProbeDisabled: bool
|
||||
|
||||
OldReadinessProbeDisabled if true readinessProbes are disabled
|
||||
Deprecated: This field is deprecated, keept only for backward compatibility.
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L195)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L198)
|
||||
|
||||
### .spec.syncworkers.probes.readinessProbeDisabled: bool
|
||||
|
||||
ReadinessProbeDisabled override flag for probe disabled in good manner (lowercase) with backward compatibility
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L197)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L200)
|
||||
|
||||
### .spec.syncworkers.probes.readinessProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.syncworkers.probes.readinessProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.syncworkers.probes.readinessProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.syncworkers.probes.readinessProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.syncworkers.probes.readinessProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.syncworkers.probes.startupProbeDisabled: bool
|
||||
|
||||
StartupProbeDisabled if true startupProbes are disabled
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L202)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L205)
|
||||
|
||||
### .spec.syncworkers.probes.startupProbeSpec.failureThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L225)
|
||||
|
||||
### .spec.syncworkers.probes.startupProbeSpec.initialDelaySeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L218)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
|
||||
### .spec.syncworkers.probes.startupProbeSpec.periodSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L219)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L222)
|
||||
|
||||
### .spec.syncworkers.probes.startupProbeSpec.successThreshold: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L221)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L224)
|
||||
|
||||
### .spec.syncworkers.probes.startupProbeSpec.timeoutSeconds: int32
|
||||
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L220)
|
||||
[Code Reference](/pkg/apis/deployment/v1/server_group_spec.go#L223)
|
||||
|
||||
### .spec.syncworkers.pvcResizeMode: string
|
||||
|
||||
|
|
66
pkg/apis/deployment/v1/server_group_numactl_spec.go
Normal file
66
pkg/apis/deployment/v1/server_group_numactl_spec.go
Normal file
|
@ -0,0 +1,66 @@
|
|||
//
|
||||
// DISCLAIMER
|
||||
//
|
||||
// Copyright 2023 ArangoDB GmbH, Cologne, Germany
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// Copyright holder is ArangoDB GmbH, Cologne, Germany
|
||||
//
|
||||
|
||||
package v1
|
||||
|
||||
import "github.com/arangodb/kube-arangodb/pkg/util"
|
||||
|
||||
const ServerGroupSpecNumactlPathDefault = "/usr/bin/numactl"
|
||||
|
||||
type ServerGroupSpecNumactl struct {
|
||||
// Enabled define if numactl should be enabled
|
||||
// +doc/default: false
|
||||
Enabled *bool `json:"enabled,omitempty"`
|
||||
|
||||
// Path define numactl path within the container
|
||||
// +doc/default: /usr/bin/numactl
|
||||
Path *string `json:"path,omitempty"`
|
||||
|
||||
// Args define list of the numactl process
|
||||
// +doc/default: []
|
||||
Args []string `json:"args,omitempty"`
|
||||
}
|
||||
|
||||
// IsEnabled returns flag if Numactl should be enabled
|
||||
func (s *ServerGroupSpecNumactl) IsEnabled() bool {
|
||||
if s == nil {
|
||||
return false
|
||||
}
|
||||
|
||||
return util.TypeOrDefault(s.Enabled, false)
|
||||
}
|
||||
|
||||
// GetPath returns path of the numactl binary
|
||||
func (s *ServerGroupSpecNumactl) GetPath() string {
|
||||
if s == nil {
|
||||
return ServerGroupSpecNumactlPathDefault
|
||||
}
|
||||
|
||||
return util.TypeOrDefault(s.Path, ServerGroupSpecNumactlPathDefault)
|
||||
}
|
||||
|
||||
// GetArgs returns args of the numactl command
|
||||
func (s *ServerGroupSpecNumactl) GetArgs() []string {
|
||||
if s == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
return s.Args
|
||||
}
|
|
@ -180,6 +180,9 @@ type ServerGroupSpec struct {
|
|||
Port *uint16 `json:"port,omitempty"`
|
||||
// ExporterPort define Port used by exporter
|
||||
ExporterPort *uint16 `json:"exporterPort,omitempty"`
|
||||
|
||||
// Numactl define Numactl options passed to the process
|
||||
Numactl *ServerGroupSpecNumactl `json:"numactl,omitempty"`
|
||||
}
|
||||
|
||||
// ServerGroupProbesSpec contains specification for probes for pods of the server group
|
||||
|
|
36
pkg/apis/deployment/v1/zz_generated.deepcopy.go
generated
36
pkg/apis/deployment/v1/zz_generated.deepcopy.go
generated
|
@ -2485,6 +2485,11 @@ func (in *ServerGroupSpec) DeepCopyInto(out *ServerGroupSpec) {
|
|||
*out = new(uint16)
|
||||
**out = **in
|
||||
}
|
||||
if in.Numactl != nil {
|
||||
in, out := &in.Numactl, &out.Numactl
|
||||
*out = new(ServerGroupSpecNumactl)
|
||||
(*in).DeepCopyInto(*out)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -2498,6 +2503,37 @@ func (in *ServerGroupSpec) DeepCopy() *ServerGroupSpec {
|
|||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *ServerGroupSpecNumactl) DeepCopyInto(out *ServerGroupSpecNumactl) {
|
||||
*out = *in
|
||||
if in.Enabled != nil {
|
||||
in, out := &in.Enabled, &out.Enabled
|
||||
*out = new(bool)
|
||||
**out = **in
|
||||
}
|
||||
if in.Path != nil {
|
||||
in, out := &in.Path, &out.Path
|
||||
*out = new(string)
|
||||
**out = **in
|
||||
}
|
||||
if in.Args != nil {
|
||||
in, out := &in.Args, &out.Args
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerGroupSpecNumactl.
|
||||
func (in *ServerGroupSpecNumactl) DeepCopy() *ServerGroupSpecNumactl {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(ServerGroupSpecNumactl)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *ServerGroupSpecPodMode) DeepCopyInto(out *ServerGroupSpecPodMode) {
|
||||
*out = *in
|
||||
|
|
66
pkg/apis/deployment/v2alpha1/server_group_numactl_spec.go
Normal file
66
pkg/apis/deployment/v2alpha1/server_group_numactl_spec.go
Normal file
|
@ -0,0 +1,66 @@
|
|||
//
|
||||
// DISCLAIMER
|
||||
//
|
||||
// Copyright 2023 ArangoDB GmbH, Cologne, Germany
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// Copyright holder is ArangoDB GmbH, Cologne, Germany
|
||||
//
|
||||
|
||||
package v2alpha1
|
||||
|
||||
import "github.com/arangodb/kube-arangodb/pkg/util"
|
||||
|
||||
const ServerGroupSpecNumactlPathDefault = "/usr/bin/numactl"
|
||||
|
||||
type ServerGroupSpecNumactl struct {
|
||||
// Enabled define if numactl should be enabled
|
||||
// +doc/default: false
|
||||
Enabled *bool `json:"enabled,omitempty"`
|
||||
|
||||
// Path define numactl path within the container
|
||||
// +doc/default: /usr/bin/numactl
|
||||
Path *string `json:"path,omitempty"`
|
||||
|
||||
// Args define list of the numactl process
|
||||
// +doc/default: []
|
||||
Args []string `json:"args,omitempty"`
|
||||
}
|
||||
|
||||
// IsEnabled returns flag if Numactl should be enabled
|
||||
func (s *ServerGroupSpecNumactl) IsEnabled() bool {
|
||||
if s == nil {
|
||||
return false
|
||||
}
|
||||
|
||||
return util.TypeOrDefault(s.Enabled, false)
|
||||
}
|
||||
|
||||
// GetPath returns path of the numactl binary
|
||||
func (s *ServerGroupSpecNumactl) GetPath() string {
|
||||
if s == nil {
|
||||
return ServerGroupSpecNumactlPathDefault
|
||||
}
|
||||
|
||||
return util.TypeOrDefault(s.Path, ServerGroupSpecNumactlPathDefault)
|
||||
}
|
||||
|
||||
// GetArgs returns args of the numactl command
|
||||
func (s *ServerGroupSpecNumactl) GetArgs() []string {
|
||||
if s == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
return s.Args
|
||||
}
|
|
@ -180,6 +180,9 @@ type ServerGroupSpec struct {
|
|||
Port *uint16 `json:"port,omitempty"`
|
||||
// ExporterPort define Port used by exporter
|
||||
ExporterPort *uint16 `json:"exporterPort,omitempty"`
|
||||
|
||||
// Numactl define Numactl options passed to the process
|
||||
Numactl *ServerGroupSpecNumactl `json:"numactl,omitempty"`
|
||||
}
|
||||
|
||||
// ServerGroupProbesSpec contains specification for probes for pods of the server group
|
||||
|
|
|
@ -2485,6 +2485,11 @@ func (in *ServerGroupSpec) DeepCopyInto(out *ServerGroupSpec) {
|
|||
*out = new(uint16)
|
||||
**out = **in
|
||||
}
|
||||
if in.Numactl != nil {
|
||||
in, out := &in.Numactl, &out.Numactl
|
||||
*out = new(ServerGroupSpecNumactl)
|
||||
(*in).DeepCopyInto(*out)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -2498,6 +2503,37 @@ func (in *ServerGroupSpec) DeepCopy() *ServerGroupSpec {
|
|||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *ServerGroupSpecNumactl) DeepCopyInto(out *ServerGroupSpecNumactl) {
|
||||
*out = *in
|
||||
if in.Enabled != nil {
|
||||
in, out := &in.Enabled, &out.Enabled
|
||||
*out = new(bool)
|
||||
**out = **in
|
||||
}
|
||||
if in.Path != nil {
|
||||
in, out := &in.Path, &out.Path
|
||||
*out = new(string)
|
||||
**out = **in
|
||||
}
|
||||
if in.Args != nil {
|
||||
in, out := &in.Args, &out.Args
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerGroupSpecNumactl.
|
||||
func (in *ServerGroupSpecNumactl) DeepCopy() *ServerGroupSpecNumactl {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(ServerGroupSpecNumactl)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *ServerGroupSpecPodMode) DeepCopyInto(out *ServerGroupSpecPodMode) {
|
||||
*out = *in
|
||||
|
|
|
@ -188,6 +188,44 @@ func createArangodArgs(cachedStatus interfaces.Inspector, input pod.Input, addit
|
|||
return args, nil
|
||||
}
|
||||
|
||||
// createArangodNumactl creates command line arguments for a numactl in the given group.
|
||||
func createArangodNumactl(spec api.ServerGroupSpec) []string {
|
||||
if !spec.Numactl.IsEnabled() {
|
||||
return nil
|
||||
}
|
||||
|
||||
args := spec.Numactl.GetArgs()
|
||||
|
||||
if len(args) == 0 {
|
||||
return []string{
|
||||
spec.Numactl.GetPath(),
|
||||
}
|
||||
}
|
||||
|
||||
r := make([]string, len(args)+1)
|
||||
|
||||
r[0] = spec.Numactl.GetPath()
|
||||
|
||||
copy(r[1:], args)
|
||||
|
||||
return r
|
||||
}
|
||||
|
||||
// withArangodNumactl creates command line arguments with a numactl in a given group.
|
||||
func withArangodNumactl(spec api.ServerGroupSpec, args ...string) []string {
|
||||
nmctl := createArangodNumactl(spec)
|
||||
if len(nmctl) == 0 {
|
||||
return args
|
||||
}
|
||||
|
||||
vs := make([]string, len(args)+len(nmctl))
|
||||
|
||||
copy(vs, nmctl)
|
||||
copy(vs[len(nmctl):], args)
|
||||
|
||||
return vs
|
||||
}
|
||||
|
||||
// createArangoSyncArgs creates command line arguments for an arangosync server in the given group.
|
||||
func createArangoSyncArgs(apiObject meta.Object, spec api.DeploymentSpec, group api.ServerGroup,
|
||||
groupSpec api.ServerGroupSpec, member api.MemberStatus) []string {
|
||||
|
|
|
@ -121,7 +121,21 @@ func (a *ArangoDContainer) GetPorts() []core.ContainerPort {
|
|||
}
|
||||
|
||||
func (a *ArangoDContainer) GetArgs() ([]string, error) {
|
||||
return createArangodArgs(a.cachedStatus, a.input)
|
||||
args, err := createArangodArgs(a.cachedStatus, a.input)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if nmargs := createArangodNumactl(a.groupSpec); len(nmargs) > 0 {
|
||||
vs := make([]string, len(args)+len(nmargs))
|
||||
|
||||
copy(vs, nmargs)
|
||||
copy(vs[len(nmargs):], args)
|
||||
|
||||
return vs, nil
|
||||
}
|
||||
|
||||
return args, nil
|
||||
}
|
||||
|
||||
func (a *ArangoDContainer) GetName() string {
|
||||
|
|
64
pkg/deployment/resources/pod_creator_numactl_test.go
Normal file
64
pkg/deployment/resources/pod_creator_numactl_test.go
Normal file
|
@ -0,0 +1,64 @@
|
|||
//
|
||||
// DISCLAIMER
|
||||
//
|
||||
// Copyright 2023 ArangoDB GmbH, Cologne, Germany
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// Copyright holder is ArangoDB GmbH, Cologne, Germany
|
||||
//
|
||||
|
||||
package resources
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1"
|
||||
"github.com/arangodb/kube-arangodb/pkg/util"
|
||||
)
|
||||
|
||||
func TestCreateArangodArgsNumactl(t *testing.T) {
|
||||
t.Run("Nil", func(t *testing.T) {
|
||||
require.Nil(t, withArangodNumactl(api.ServerGroupSpec{}))
|
||||
})
|
||||
t.Run("With Default", func(t *testing.T) {
|
||||
require.Equal(t, []string{"arangod"}, withArangodNumactl(api.ServerGroupSpec{}, "arangod"))
|
||||
})
|
||||
t.Run("With Numactl", func(t *testing.T) {
|
||||
require.Equal(t, []string{api.ServerGroupSpecNumactlPathDefault, "arangod"}, withArangodNumactl(api.ServerGroupSpec{
|
||||
Numactl: &api.ServerGroupSpecNumactl{
|
||||
Enabled: util.NewType(true),
|
||||
},
|
||||
}, "arangod"))
|
||||
})
|
||||
t.Run("With Numactl Args", func(t *testing.T) {
|
||||
require.Equal(t, []string{api.ServerGroupSpecNumactlPathDefault, "--some=opt", "arangod"}, withArangodNumactl(api.ServerGroupSpec{
|
||||
Numactl: &api.ServerGroupSpecNumactl{
|
||||
Enabled: util.NewType(true),
|
||||
Args: []string{
|
||||
"--some=opt",
|
||||
},
|
||||
},
|
||||
}, "arangod"))
|
||||
})
|
||||
t.Run("With Numactl Override", func(t *testing.T) {
|
||||
require.Equal(t, []string{"numanew", "arangod"}, withArangodNumactl(api.ServerGroupSpec{
|
||||
Numactl: &api.ServerGroupSpecNumactl{
|
||||
Enabled: util.NewType(true),
|
||||
Path: util.NewType("numanew"),
|
||||
},
|
||||
}, "arangod"))
|
||||
})
|
||||
}
|
Loading…
Reference in a new issue