Installation

GroundWork Monitor 8 Installation

GroundWork Monitor 8 utilizes Docker containers and a Continuous Integration/Continuous Deployment methodology. This means less waiting for feature development, security patches and bug fixes. You will get faster turnaround on bugs, feature enhancements, and security fixes, with little effort on your part to maintain your on-premises monitoring system. Version 8.1.0 is primarily a feature release, with some fixes from the prior release, 8.0.1.

Select the tab below for the installation type you wish to perform. New Install is used for a fresh GroundWork Monitor installation; Update Install will update a previously installed version of GroundWork Monitor 8; Migrate Install is considered a fresh GroundWork Monitor installation plus a migration of your Monarch configuration from a previous version of GroundWork Monitor 7.x.; and Uninstall is used to remove GroundWork Monitor 8.


New Install

This section steps through an initial installation for GroundWork Monitor 8.1.0. The New Install uses the Install from Installer method which is an offline method, it does not require internet access other than for the initial download, and it uses a GroundWork Installer file to install. You will need to prepare your system, get the installer file, transfer it to the server where you wish to install, and run the installer. The installer will initially create a gw8 sub-directory of the directory where it runs, and will drop the configuration files into this subdirectory. The installation will take approximately 25 minutes to complete. 

If your installation is an Update and not a New Install, please refer to Update Install.

Prepare

  1. First, prepare your system as described in System Requirements, including installing Docker CE and Docker Compose.
  2. Review the Release Notes which contains details of issues fixed, new features, and items of interest to those users who have customized or significantly enhanced a previous version of GroundWork Monitor.
  3. Make sure you can access Docker with your current user by running the following commands:

    docker
    docker-compose
  4. Next, obtain the GroundWork Monitor 8.1.0 installer file from the Downloads page.
  5. Lastly for this Prepare section and before continuing to the Run section below, you will need the following information during the installation process. If you need to adjust these settings later see Configuration files.
    • Timezone: Set this to the timezone that will be used for cron. It should be the timezone of those that will access the system most. This can be different from the server timezone, but ideally is not.
    • GroundWork Monitor 8 web UI host name: This the fully qualified host name used to get to your GroundWork Monitor system UI. The host name will be automatically populated with the output of the console command hostname -f. You can override this hostname if you have a DNS entry that points to your host under a different name. If you plan to obtain and install a certificate with a specific common name for your GroundWork host, you can use that name. It can be changed later. It's usually safe to accept the default.

      You can't use an IP address or alternate name to contact GroundWork 8.1.0. You will get an http error 421 if you try. The hostname you enter here is the one you should use to log in and access the web interface, set up GDMA with, etc. 

    • Type of installation will you be performing for this GroundWork server: GroundWork Monitor can be installed as a standalone system (a single server in a single location) or installed to run Parent-child distributed monitoring implementing child GroundWork servers. The choices will be:
      • Standalone: GW8 server in a single location.
      • Parent: GW8 central server for GW8 child servers. You will need the parent host name which needs to resolve to the parent server you are installing and be reachable by any associated child servers.
      • Parent Managed Child: GW8 child server managed from the GW8 parent. You will need the parent host name which must match the parent instance name on the parent server this child will connect and the child host name which must match the child's Monarch Group name, be reachable by the parent, and resolve to the server you are installing.
      • Child Managed Child: GW8 child server managed independently. You will need the parent host name which must match the parent instance name on the parent server the child will connect to.
    • A subnet to use for Docker containers: The networking settings are designed to avoid conflicts in your networking setup. Make sure this subnet does not conflict with your own infrastructure. If you use the 172.16.0.0/12 subnet anywhere internally, make sure that the subnet chosen by the installer does not conflict with your use of it elsewhere or you may not be able to use the system until you correct it. 

Run

After completing the Prepare steps above, you can proceed by running the installer.

Do not run the installer as the root user. There is no need to, as long as the user has access to the file system and Docker, and the Docker daemon is running.

  1. Mark the file as executable:

    chmod +x gw8setup-8.1.0-GA.run
  2. Run the installer:

    ./gw8setup-8.1.0-GA.run
  3. Follow the prompts to confirm you want to install, that the resource check is ok, and later for the timezone for cron jobs, networking settings and host name (mentioned in the Prepare section above):
  4. When the process completes, open a browser to the name of the host system to log in to GroundWork Monitor 8.1.0. The default Administrator login is admin/admin. Note that it may take a few minutes for the availability calculations to complete and display, so you may see warnings about this on the relevant dashboards.


Update Install

This section steps through an update installation for GroundWork Monitor 8.1.0. The Update Install uses the Update from Installer method which is an offline method, it does not require internet access other than for the download, and it uses a GroundWork Installer file to install.

Prepare

  1. First, verify your running GroundWork 8.0.0 or 8.0.1 system is up to date as described in System Requirements. It most likely is, but it's a good time to update and patch the OS. 
  2. Review the Release Notes for 8.1.0, which contain details of issues fixed, new features, and items of interest to those users who have customized or significantly enhanced a previous version of GroundWork Monitor. 
  3. You may need to obtain a new license for 8.1.0 from GroundWork Support. This version will not work with licenses that are specifically for 8.0.x (like the default 50-host core licenses issued with 8.0.x), and you don't want to go all the way through an upgrade just to wait for a license to be generated before you can use the system. Existing customers are welcome to equivalent 8.1.0 licenses at no extra cost, and many existing customers have been issued licenses that are for 8.x.x, so you may just want to check with support to be sure.
  4. Running the Installer will update an existing GroundWork Monitor installation without any changes to configuration or license.

    It is recommended you perform a backup before updating your installation. 

  5. Open a command line to the directory where you installed GroundWork Monitor 8. This is the directory above the gw8 directory. Check with an ls command to be sure. You should see the gw8 directory listed. 
  6. Next, go to the Downloads page, navigate to and select the Installer file for the new version and place it in this directory.
  7. Change the installer mode:

    chmod +x gw8setup-8.1.0-GA.run
  8. If you are running the optional NeDi netflow or nfpcapd containers, stop them manually: 

    docker ps |grep nfcapd
    docker ps |grep nfpcapd

    This will give you the container name as the last column in the output, for example: 

    e5a971431d05      groundworkdevelopment/nedi:8.0.1-GA     "nfpcapd -i eth0 -T …"   49 minutes ago      Up 49 minutes (health: healthy)      nfpcapd_capture  

    Usually, these are nfcapd_collector (for NetFlow) and nfpcapd_capture (for packet capture). For each of these containers, type: 

    docker stop <name>

    where <name> is the name of the container, e.g., nfcapd_collector.

Run

After completing the Prepare steps above, you can proceed by running the installer:

  1. Run the installer: 

    ./gw8setup-8.1.0-GA.run
  2. The installer will function much as it does during a New Install, with the exception that it will not prompt for a host name or installation type. The installer will shut down GroundWork, extract all the new containers, update the system and restart it.
  3. If you want to run the optional NeDi netflow or nfpcapd containers again, start them with the following: 

    docker start nfcapd_collector
    docker start nfpcapd_capture

    or re-create them with this procedure NeDi Flowi NetFlow sFlow and packet capture.

  4. Log in as an administrative user and apply your new license to use 8.1.0.


Migrate Install

This section steps through the process for migrating Monarch to GroundWork Monitor 8. You will first need to refer to the New Install tab above to perform a new installation. After installation you can refer to the migration tasks on this page.

The migration to GroundWork Monitor 8 is not quite exact, since the way we do self-monitoring in GroundWork Monitor changes significantly. Therefore you can expect that the "localhost" host in GroundWork Monitor 7.x configurations will vanish in GroundWork Monitor 8 after migration. If you have any particular custom services assigned to localhost that you wish to preserve, we suggest you move them to another host first. 

Also, you will see several added hosts in GroundWork Monitor 8 for the containers that run the system. Nagios™ ping checks of the containers will be automatically added after migration, and will show in the default Status Summary. These hosts and services are necessary, and any license will be increased to include them at no charge. They have names like "gw8-dockergw8_elasticsearch_1", and have several services from the Docker Cloud Hub connector as well. 

GroundWork Monitor 7.x

The following steps can be used to capture your existing GroundWork Monitor 7.x Nagios configuration database from your latest backup.

  1. Access the command line on your Groundwork 7.x server, for example via SSH. We assume you are using a user that is not root, but has sudo access. If you use root, then you can omit the sudo part. 
  2. Copy and paste the following command and run it:

    sudo tar -C /usr/local/groundwork/core/monarch/backup \
        -czf /tmp/$(ls /usr/local/groundwork/core/monarch/backup | tail -1).tar.gz \
        $(ls /usr/local/groundwork/core/monarch/backup | tail -1)

    This will produce a file such as /tmp/2018-12-26_16-44-47.tar.gz. This is the backup to be transferred. Note the date portion of the filename as the timestamp for the next steps, e.g., "2018-12-26_16-44-47" in this example. 

GroundWork Monitor 8

  1. Transfer the backup you made above to the GroundWork 8 server. Place it in the gw8 directory. Use any secure method of transferring files you like, e.g., SCP. 
  2. From the command line on the GroundWork 8 server, change to the gw8 directory:

    cd gw8
  3. Substitute the appropriate timestamp from your captured filename and set it as the timestamp variable. For example (you will need to use your own timestamp):

    timestamp=2018-12-26_16-44-47
  4. Copy and paste the following two commands to set the TAG variable and load the configuration:

    TAG=$(grep '^TAG=' .env | sed 's/^TAG=//')
    docker run --rm \
        -v ${PWD}/$timestamp.tar.gz:/$timestamp.tar.gz \
        -v dockergw8_monarch-backup:/usr/local/groundwork/monarch/backup \
        --name gw8 groundworkdevelopment/gw8:${TAG} \
        /src/docker_cmd.sh loadMonarchBackup $timestamp.tar.gz
  5. In GroundWork Monitor 8, go to Configuration > Nagios Monitoring > Control > Back up and restore and proceed to restore the GroundWork Monitor 7.x backup with the noted timestamp.

    You should disable notifications before committing the imported configuration. This will allow to identify any unforeseen problems without creating a notification storm. 

    Notifications are automatic in NoMa as well as Nagios. To disable notifications, for NoMa go to Configuration > Notifications and check each notification rule that is currently active (green checkmark) to be disabled (grey checkmark), and for Nagios go to Configuration > Nagios Monitoring > Control > Nagios main configuration > Notification and uncheck Enable notifications.


Uninstall

This uninstall process completely removes GroundWork Monitor 8, removing volumes and containers and the docker directory. It does not remove other docker containers and volumes that may exist on the same host. 

  1. Go to the Docker directory you created when you installed GroundWork Monitor 8.
  2. Go to the gw8 directory:

    cd gw8
  3. Shut down the existing containers:

    docker-compose down
  4. Remove GroundWork Monitor 8 volumes and containers:

    docker volume ls | grep "$(grep COMPOSE_PROJECT_NAME .env | sed -e 's/^[^=]*=//')_" | \
        awk '{print $2}' | xargs docker volume rm
    docker images -a | grep "groundworkdevelopment/" | \
        awk '{print $3}' | xargs docker rmi
  5. Remove the docker directory:

    cd ..
    rm -rf gw8

Related articles