src: add OVS PMD stats plugin configuration 55/37855/1
authorShobhi <shobhi.jain@intel.com>
Thu, 20 Jul 2017 10:57:23 +0000 (11:57 +0100)
committerShobhi <shobhi.jain@intel.com>
Thu, 20 Jul 2017 10:57:23 +0000 (11:57 +0100)
* 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 <shobhi.jain@intel.com>
src/collectd/Makefile
src/collectd/collectd_sample_configs/exec.conf
src/collectd/collectd_sample_configs/ovs_pmd_stats.sh [new file with mode: 0755]
src/collectd/ovs_pmd_stats_config.sh [new file with mode: 0755]

index cf1f704..67646b0 100644 (file)
@@ -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"
 
index f62d2e7..1402ac7 100644 (file)
@@ -15,6 +15,7 @@
 
 LoadPlugin exec
 <Plugin 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"
 </Plugin>
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 (executable)
index 0000000..0517717
--- /dev/null
@@ -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 (executable)
index 0000000..dc28f20
--- /dev/null
@@ -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