summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Brattain <ross.b.brattain@intel.com>2017-10-11 01:40:56 -0700
committerRoss Brattain <ross.b.brattain@intel.com>2017-10-11 13:34:59 -0700
commitea9a75f0b667c6762f083593801a74b22f466dd0 (patch)
tree50cf5cdde383550a155886ad6872d6037d9bf9d1
parent19e0c4d2e004e18e6f5687e420dc51a4032b06c2 (diff)
increase number of open files for collectd
for collectd KPIs we need may need to open 10,000+ files one file for each core * number of CPU counters we read. Use the ansible pam_limits moules to increase the nofile setting. This should allow the VNF to boot with increased number of files open Change-Id: I46b75d5ca59e8e359c985a1e37daaee89897884c Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
-rw-r--r--ansible/install_collectd.yml3
-rw-r--r--ansible/roles/increase_open_file_limits/defaults/main.yml15
-rw-r--r--ansible/roles/increase_open_file_limits/tasks/main.yml20
-rw-r--r--ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml2
-rw-r--r--ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml2
5 files changed, 41 insertions, 1 deletions
diff --git a/ansible/install_collectd.yml b/ansible/install_collectd.yml
index 0824c1525..7b8291563 100644
--- a/ansible/install_collectd.yml
+++ b/ansible/install_collectd.yml
@@ -17,6 +17,8 @@
clone_dir: /tmp/yardstick-clone
roles:
+ # needed for collectd plugins
+ - increase_open_file_limits
# build shared DPDK for collectd only, required DPDK downloaded already
- role: download_dpdk
- install_dpdk_shared
@@ -27,4 +29,3 @@
- install_pmu_tools
- download_collectd
- install_collectd
-
diff --git a/ansible/roles/increase_open_file_limits/defaults/main.yml b/ansible/roles/increase_open_file_limits/defaults/main.yml
new file mode 100644
index 000000000..02cb12461
--- /dev/null
+++ b/ansible/roles/increase_open_file_limits/defaults/main.yml
@@ -0,0 +1,15 @@
+# Copyright (c) 2017 Intel Corporation
+#
+# 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.
+---
+open_file_limit: 500000
diff --git a/ansible/roles/increase_open_file_limits/tasks/main.yml b/ansible/roles/increase_open_file_limits/tasks/main.yml
new file mode 100644
index 000000000..4ef5e6f23
--- /dev/null
+++ b/ansible/roles/increase_open_file_limits/tasks/main.yml
@@ -0,0 +1,20 @@
+# Copyright (c) 2017 Intel Corporation
+#
+# 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.
+---
+ - name: increase open file limits for control
+ pam_limits: "domain={{ item[0] }} limit_type={{ item[1] }} limit_item=nofile value={{ open_file_limit }}"
+ with_nested:
+ - [ '*', 'root' ]
+ - [ 'soft', 'hard' ]
+
diff --git a/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml b/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
index 891ccd1dc..42a7b2d08 100644
--- a/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
+++ b/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
@@ -23,6 +23,8 @@
when: proxy_env is defined and proxy_env
# can't update grub in chroot/docker
- enable_hugepages_on_boot
+ # needed for collectd plugins
+ - increase_open_file_limits
- install_image_dependencies
- role: download_dpdk
# dpdk_version: "17.02"
diff --git a/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml b/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml
index 79249dd37..dff7f976a 100644
--- a/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml
+++ b/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml
@@ -31,6 +31,8 @@
when: proxy_env is defined and proxy_env
# can't update grub in chroot/docker
- enable_hugepages_on_boot
+ # needed for collectd plugins
+ - increase_open_file_limits
- modify_cloud_config
- install_image_dependencies
- role: download_dpdk