From c94196ecdd12b7cbe89bce1be7a01860865fff82 Mon Sep 17 00:00:00 2001 From: Shobhi Date: Thu, 20 Jul 2017 11:57:23 +0100 Subject: src: add OVS PMD stats plugin configuration * ovs_pmd_stats: wrapper script to call actual ovs_pmd_stats python script with it's argument. * ovs_pmd_stats_config: script to check status of OVS service & copy ovs_pmd_stats wrapper script to /usr/local/src/. * Updates exec plugin configuration for running ovs pmd stats wrapper script. * Updates makefile to include ovs_pmd_stats_config file. Change-Id: I78be0bf944e816ab23d30f1c565884a1180724f7 Signed-off-by: Shobhi --- src/collectd/Makefile | 1 + src/collectd/collectd_sample_configs/exec.conf | 3 ++- .../collectd_sample_configs/ovs_pmd_stats.sh | 15 +++++++++++ src/collectd/ovs_pmd_stats_config.sh | 29 ++++++++++++++++++++++ 4 files changed, 47 insertions(+), 1 deletion(-) create mode 100755 src/collectd/collectd_sample_configs/ovs_pmd_stats.sh create mode 100755 src/collectd/ovs_pmd_stats_config.sh diff --git a/src/collectd/Makefile b/src/collectd/Makefile index cf1f704b..67646b0b 100644 --- a/src/collectd/Makefile +++ b/src/collectd/Makefile @@ -74,6 +74,7 @@ force_install: $(AT)sed -i -e 's/CapabilityBoundingSet=/CapabilityBoundingSet=CAP_SETUID CAP_SETGID CAP_SYS_RAWIO CAP_SYS_ADMIN/g' /etc/systemd/system/collectd.service $(AT)sed -i -e 's|Environment=\(.*\)|Environment=XDG_CACHE_HOME='$(XDG_CACHE_HOME_DIR)' \1|g' /etc/systemd/system/collectd.service $(AT)systemctl daemon-reload + $(AT)sudo ./ovs_pmd_stats_config.sh $(AT)sudo ./include_config.sh @echo "Make install done" diff --git a/src/collectd/collectd_sample_configs/exec.conf b/src/collectd/collectd_sample_configs/exec.conf index f62d2e7a..1402ac72 100644 --- a/src/collectd/collectd_sample_configs/exec.conf +++ b/src/collectd/collectd_sample_configs/exec.conf @@ -15,6 +15,7 @@ LoadPlugin exec -# Exec "user:group" "/path/to/exec" + # For OVS PMD stats plugin + Exec "user:group" "/opt/collectd/etc/collectd.conf.d/ovs_pmd_stats.sh" NotificationExec "collectd_exec" "/opt/collectd/etc/collectd.conf.d/write_notification.sh" diff --git a/src/collectd/collectd_sample_configs/ovs_pmd_stats.sh b/src/collectd/collectd_sample_configs/ovs_pmd_stats.sh new file mode 100755 index 00000000..0517717f --- /dev/null +++ b/src/collectd/collectd_sample_configs/ovs_pmd_stats.sh @@ -0,0 +1,15 @@ +#!/bin/bash +# Copyright 2017 OPNFV +# +# 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. +sudo python /usr/local/src/ovs_pmd_stats.py --socket-pid-file /var/run/openvswitch/ovs-vswitchd.pid diff --git a/src/collectd/ovs_pmd_stats_config.sh b/src/collectd/ovs_pmd_stats_config.sh new file mode 100755 index 00000000..dc28f204 --- /dev/null +++ b/src/collectd/ovs_pmd_stats_config.sh @@ -0,0 +1,29 @@ +#!/bin/bash +# Copyright 2017 OPNFV +# +# 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. + +export CURRENT_DIR=$(pwd) + +SERVICE="openvswitch" +RESULT=`ps -aux | grep $SERVICE | grep -v grep` +OVS_PMD_STAT_SCRIPT=$CURRENT_DIR/../../3rd_party/ovs_pmd_stats/ovs_pmd_stats.py +PATH_LOCAL=/usr/local/src/ + +if [ "${RESULT:-null}" != null ]; then + echo "Openvswitch service is running." + sudo ovs-vsctl set-manager ptcp:6640 + cp $OVS_PMD_STAT_SCRIPT $PATH_LOCAL +else + echo "Openvswitch service is not running. Please start before running ovs plugins" +fi -- cgit 1.2.3-korg