Upgrading from NMIS8 compatible applications to NMIS9 compatible applications
Summary
Some new installers handle upgrading from NMIS8 compatible OMK applications to NMIS9 compatible OMK apps automatically. Therefore, please start from one of the applications which are automated; you will then be able to upgrade the remaining products without any issues. If none of your applications are in the "Automated Upgrade process" list please follow the "Step by Step upgrade process" below.
If you are installing OMK apps without access to an automated upgrade (those not listed in "Automated Upgrades process"), the installer will prevent you from installing the application, unless you follow the "Step by Step" process below or until you have completed the upgrade with an Automated Upgrade Process application.
WARNING - READ Before upgrade
Once you install your first NMIS9 compatible application any of your original applications will no longer operate until they are upgraded as well. (none of your current data is destroyed).
Automated Upgrade process
Complete Install of NMIS9 HERE
Install any of the OMK apps which have automated upgrade; the current apps with Auto Upgrade are:
- opEvents-3.2.1 or higher
- opConfig-4.2.1 or higher
- opCharts-4.2.1 or higher
- More coming soon...
After installing any of the above you can continue to install any other NMIS9 compatible applications by simply running their installer.
Step by Step Manual Upgrade Process
In short
Complete Install of NMIS9 HERE
Move aside the omk directory and install the new NMIS9 compatible application. Once the installation has finished rename the new omk/conf folder and copy over the old omk/conf folder. Convert the .nmis files in omk/conf/ directory into .json using the opcommon-cli tool. Edit the new omk/conf/opCommon.json file replacing any "nmis_dir" and "nmis8" entries for "nmis9_dir" and "nmis9". Lastly ensure the "load_applications" entry in this file shows only the new NMIS9 application previously installed and restart the omk daemon. We recommend starting this upgrade process with either opCharts or opConfig.
In detail
- Install NMIS9, should install without any issues
- Import the old nmis8 configuration and review important configuration options
- Remove the nmis 8 cron jobs in /etc/cron.d/nmis
- Rename the omk directory
mv /usr/local/omk /usr/local/omk-old
- Run the installer for the new NMIS9 application, e.g. opCharts
Rename the new omk/conf directory
mv /usr/local/omk/conf /usr/local/omk/conf-original
- Copy the omk-old/conf directory into the new omk/
cp -rf /usr/local/omk-old/conf /usr/local/omk
- Convert the .nmis files in omk/conf/ directory into .json using the opcommon-cli tool
/usr/local/omk/bin/opcommon-cli.exe act=convert_json_dir dir="/usr/local/omk/conf/"
Change any "nmis_dir" and "nmis8" entries to "nmis9_dir" and "nmis9" in the omk/conf/opCommon.json file. You can do this manually or by using the following Perl regex
perl -p -i -e 's/nmis_dir/nmis9_dir/g' /usr/local/omk/conf/opCommon.json perl -p -i -e 's/nmis8/nmis9/g' /usr/local/omk/conf/opCommon.json perl -p -i -e 's/nmis_logs/nmis9_logs/g' /usr/local/omk/conf/opCommon.json
- Change the "load_applications" entry in the opCommon.json file to only show the NMIS9 application recently installed. You can do this manually or by running the required patch_config commands to delete each application from the "load_applications" entry, except for the one that was recently installed.
# E.g.: Previously installed applications: opConfig, opCharts, opEvents, opHA, opReports and Open-AudIT # Recently installed application: opConfig /usr/local/omk/bin/patch_config.pl -b /usr/local/omk/conf/opCommon.json /omkd/load_applications-=opCharts # -b = Creates backup (opCommon.json.prepatch) /usr/local/omk/bin/patch_config.pl /usr/local/omk/conf/opCommon.json /omkd/load_applications-=opEvents /usr/local/omk/bin/patch_config.pl /usr/local/omk/conf/opCommon.json /omkd/load_applications-=opHA /usr/local/omk/bin/patch_config.pl /usr/local/omk/conf/opCommon.json /omkd/load_applications-=opReports /usr/local/omk/bin/patch_config.pl /usr/local/omk/conf/opCommon.json /omkd/load_applications-=Open-AudIT # If the recently installed application (eg.: opConfig) is deleted by mistake, you can add it back by running the follow patch_config command /usr/local/omk/bin/patch_config.pl /usr/local/omk/conf/opCommon.json /omkd/load_applications+=opConfig
- Restart omkd
systemctl restart omkd.service
- Install the rest of the NMIS9 required applications
About opReports
NMIS8 opReports and NMIS9 opReports work the same way:
- Report Schedules are stored in /usr/local/conf/schedule
- Reports caching is stored in /usr/local/omk/var/opreports
- Reports are stored in /data/omk/var/reports (unless otherwise specified by the user)
If you followed the instructions above, your Report Schedules are back in place, as you've copied over the entire omk-old/conf directory in step five. The /data/omk/var reports directory should still be where it was at the beginning of the upgrade, as it was never changed.
We recommend coping the ./opreports/known_reports_cache directory and the ./opreports/selftest.json file into the new application.
cp -rf /usr/local/omk-old/var/opreports/known_reports_cache /usr/local/omk/var/opreports cp /usr/local/omk-old/var/opreports/selftest.json /usr/local/omk/var/opreports