From ea9a75f0b667c6762f083593801a74b22f466dd0 Mon Sep 17 00:00:00 2001 From: Ross Brattain Date: Wed, 11 Oct 2017 01:40:56 -0700 Subject: 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 --- ansible/install_collectd.yml | 3 ++- .../increase_open_file_limits/defaults/main.yml | 15 +++++++++++++++ .../roles/increase_open_file_limits/tasks/main.yml | 20 ++++++++++++++++++++ .../ubuntu_server_baremetal_deploy_samplevnfs.yml | 2 ++ ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml | 2 ++ 5 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 ansible/roles/increase_open_file_limits/defaults/main.yml create mode 100644 ansible/roles/increase_open_file_limits/tasks/main.yml 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 -- cgit 1.2.3-korg