summaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-05-16 19:23:02 +0000
committerGerrit Code Review <review@openstack.org>2017-05-16 19:23:02 +0000
commit3fccf25205d601fe1897456342160814f4cacc4f (patch)
tree831ed941d2ba9ed6b52c7fa6e106c495b95082e6 /puppet
parent00551e744ad903c89199c2e1e964baa817ea141e (diff)
parent1651a1805a16212299fe0a91aebb2a91ed39bc6e (diff)
Merge "Optimize kernel neighbour table for large scale environments"
Diffstat (limited to 'puppet')
-rw-r--r--puppet/services/kernel.yaml29
1 files changed, 29 insertions, 0 deletions
diff --git a/puppet/services/kernel.yaml b/puppet/services/kernel.yaml
index 697ec228..8121454b 100644
--- a/puppet/services/kernel.yaml
+++ b/puppet/services/kernel.yaml
@@ -34,6 +34,28 @@ parameters:
default: 0
description: Configures sysctl net.ipv6.{default/all}.disable_ipv6 keys
type: number
+ NeighbourGcThreshold1:
+ default: 1024
+ description: Configures sysctl net.ipv4.neigh.default.gc_thresh1 value.
+ This is the minimum number of entries to keep in the ARP
+ cache. The garbage collector will not run if there are
+ fewer than this number of entries in the cache.
+ type: number
+ NeighbourGcThreshold2:
+ default: 2048
+ description: Configures sysctl net.ipv4.neigh.default.gc_thresh2 value.
+ This is the soft maximum number of entries to keep in the
+ ARP cache. The garbage collector will allow the number of
+ entries to exceed this for 5 seconds before collection will
+ be performed.
+ type: number
+ NeighbourGcThreshold3:
+ default: 4096
+ description: Configures sysctl net.ipv4.neigh.default.gc_thresh3 value.
+ This is the hard maximum number of entries to keep in the
+ ARP cache. The garbage collector will always run if there
+ are more than this number of entries in the cache.
+ type: number
outputs:
role_data:
@@ -94,5 +116,12 @@ outputs:
value: 1
fs.suid_dumpable:
value: 0
+ #avoid neighbour table overflow on large deployments
+ net.ipv4.neigh.default.gc_thresh1:
+ value: {get_param: NeighbourGcThreshold1}
+ net.ipv4.neigh.default.gc_thresh2:
+ value: {get_param: NeighbourGcThreshold2}
+ net.ipv4.neigh.default.gc_thresh3:
+ value: {get_param: NeighbourGcThreshold3}
step_config: |
include ::tripleo::profile::base::kernel