diff --git a/README.rst b/README.rst index 9273b26c7eca374dfefe74723d61d95ef5080bde..d4e2322284e1ce7ebe823641a7e06f838805f4d6 100644 --- a/README.rst +++ b/README.rst @@ -7,3 +7,12 @@ and higher level product generation. NOTE: Most of the code in this repository was copied from the old subversion repository. This code was executed on python 2.6/2.7 environments, but will be run from python 3.6+ from now on. Some scripts may not work out of the box. + +Serial Adapter +^^^^^^^^^^^^^^ + +To communicate with the ceilometer there is an ethernet to serial adapter +attached to it. The "rain01" server communicates to it through a special +driver from "MOXA" (the manufacturer of the adapter). This driver is +automatically installed as part of the root accounts crontab. See the +``scripts/reinstall_ceilo_driver.sh`` script for more information. \ No newline at end of file diff --git a/scripts/reinstall_ceilo_driver.sh b/scripts/reinstall_ceilo_driver.sh new file mode 100755 index 0000000000000000000000000000000000000000..96053bc8d1a07841dcc9829e964cdca841d298da --- /dev/null +++ b/scripts/reinstall_ceilo_driver.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +# Description: This script must be run as root and will reinstall the "MOXA" +# drivers for the ethernet to serial adapter so the ceilometer can be +# communicated with. This should be run on reboot as the driver seems to +# have trouble with kernel updates and maybe even reboots of the server. + +if [ $UID -ne 0 ]; + echo "ERROR: This script must be run as root (UID 0)." + exit 1 +fi + +TARBALL="/opt/metobs/misc/npreal2_1.18.65_build_17062316.tgz" +if [ ! -f $TARBALL ]; then + echo "ERROR: Source tarball does not exist" + exit 1 +fi + +SRC_DIR="/tmp/moxa" +if [ ! -d $SRC_DIR ]; then + cd `dirname $SRC_DIR` + tar -xzf $TARBALL + if [ ! -d $SRC_DIR ]; then + echo "ERROR: Could not extract moxa drivers" + exit 1 + fi +fi + +DRIVER_DST="/usr/lib/npreal2/driver" + +# Uninstall the old drivers +if [ -d $DRIVER_DST ]; then + cd $DRIVER_DST + ./mxuninst +fi + +cd "${SRC_DIR}/kernel3.x" +/usr/bin/expect <(cat << EOF +spawn ./mxinst SP1 +expect "Do you want to continue installing?" +send "N\r" +expect eof +EOF +) + +# Add the server +cd $DRIVER_DST +./mxaddsvr 192.168.16.27 4 +status=$? + +if [ $? -ne 0]; then + echo "ERROR: Could not install driver" + exit 1 +fi \ No newline at end of file