From 3b9119f9ad31a5fc4e2fab3487bb1469c3195a99 Mon Sep 17 00:00:00 2001 From: Mark Nellemann Date: Wed, 8 Mar 2023 10:28:27 +0100 Subject: [PATCH] Update documentation. --- README.md | 36 ++++-------------------------------- doc/readme-aix.md | 4 +--- doc/readme-debian.md | 19 +++++++++++-------- doc/readme-redhat.md | 19 +++++++++---------- doc/readme-suse.md | 12 ++++++++---- doc/svci.toml | 22 +++++++++++++++++----- 6 files changed, 50 insertions(+), 62 deletions(-) diff --git a/README.md b/README.md index 320a45e..d372796 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Spectrum Virtualize Insights +# Spectrum Virtualize Insights / SVCi **SVCi** is a utility that collects metrics from one or more *IBM SAN Volume Controllers*. The metric data is processed and saved into an InfluxDB time-series database. Grafana is used to visualize the metrics data from InfluxDB through provided dashboards, or your own customized dashboards. @@ -17,6 +17,8 @@ Some of my other related projects are: ![screenshot](doc/screenshots/v7000-8_4_2_0-1.png) +More screenshots can be found in the [doc/screenshots/](doc/screenshots) folder. + ## Installation and Setup @@ -35,8 +37,6 @@ There are few steps in the installation. Install InfluxDB (v. **1.8.x** or **1.9.x** for best compatibility with Grafana) on a host which is network accessible by the SVCi utility (the default InfluxDB port is 8086). You can install Grafana on the same server or any server which are able to connect to the InfluxDB database. The Grafana installation needs to be accessible from your browser (default on port 3000). The default settings for both InfluxDB and Grafana will work fine as a start. -- You can download [Grafana ppc64le](https://www.power-devops.com/grafana) and [InfluxDB ppc64le](https://www.power-devops.com/influxdb) packages for most Linux distributions and AIX on the [Power DevOps](https://www.power-devops.com/) site. -- Binaries for amd64/x86 are available from the [Grafana website](https://grafana.com/grafana/download) (select the **OSS variant**) and [InfluxDB website](https://portal.influxdata.com/downloads/) and most likely directly from your Linux distributions repositories. - Create the empty *svci* database by running the **influx** CLI command and type: ```text @@ -70,16 +70,6 @@ Install *SVCi* on a host, that can connect to your SAN Volume Controllers (on po This is most likely due to timezone, date and/or NTP not being configured correctly on the SAN Volune Controller and/or host running SVCi. -### Start InfluxDB and Grafana at boot (systemd compatible Linux) - -```shell -systemctl enable influxdb -systemctl start influxdb - -systemctl enable grafana-server -systemctl start grafana-server -``` - ### InfluxDB Retention Policy Examples for changing the default InfluxDB retention policy for the svci database: @@ -109,23 +99,6 @@ journalctl -f -u svci # to check log output ``` -### AIX Notes - -To install (or upgrade) on AIX, you need to pass the *--ignoreos* flag to the *rpm* command: - -```shell -rpm -Uvh --ignoreos svci-x.y.z-n.noarch.rpm -``` - - -## Screenshots - -Screenshots of the provided Grafana dashboard can be found in the [doc/screenshots/](doc/screenshots) folder. - - -## Known problems - - ## Development Information You need Java (JDK) version 8 or later to build svci. @@ -166,5 +139,4 @@ docker run --name grafana --link influxdb:influxdb --rm -d -p 3000:3000 grafana/ Setup Grafana to connect to the InfluxDB container by defining a new datasource on URL *http://influxdb:8086* named *svci*. - -Grafana dashboards can be imported from the *doc/dashboards/* folder. +Import dashboards from the [doc/dashboards/](doc/dashboards/) folder. diff --git a/doc/readme-aix.md b/doc/readme-aix.md index 4085fa3..95c2c02 100644 --- a/doc/readme-aix.md +++ b/doc/readme-aix.md @@ -2,8 +2,6 @@ Please note that the software versions referenced in this document might have changed and might not be available/working unless updated. -More details are available in the [README.md](../README.md) file. - - Grafana and InfluxDB can be downloaded from the [Power DevOps](https://www.power-devops.com/) website - look under the *Monitor* section. - Ensure Java (version 8 or later) is installed and available in your PATH. @@ -14,7 +12,7 @@ More details are available in the [README.md](../README.md) file. [Download](https://git.data.coop/nellemann/-/packages/generic/svci/) the latest version of SVCi packaged for rpm. ```shell -rpm -ivh --ignoreos svci-0.0.1-1_all.rpm +rpm -ivh --ignoreos svci-0.0.3-1_all.rpm cp /opt/svci/doc/svci.toml /etc/ ``` diff --git a/doc/readme-debian.md b/doc/readme-debian.md index cc1c57f..4cf24e7 100644 --- a/doc/readme-debian.md +++ b/doc/readme-debian.md @@ -1,15 +1,13 @@ -# Instruction for Debian / Ubuntu Systems +# Instructions for Debian / Ubuntu Systems Please note that the software versions referenced in this document might have changed and might not be available/working unless updated. -More details are available in the [README.md](../README.md) file. - All commands should be run as root or through sudo. ## Install the Java Runtime from repository ```shell -apt-get install default-jre-headless +apt-get install default-jre-headless wget ``` @@ -25,13 +23,17 @@ systemctl start influxdb Run the ```influx``` cli command and create the *svci* database. +```sql +CREATE DATABASE "svci" WITH DURATION 365d REPLICATION 1; +``` + ## Download and Install Grafana ```shell -sudo apt-get install -y adduser libfontconfig1 -wget https://dl.grafana.com/oss/release/grafana_9.1.3_amd64.deb -dpkg -i grafana_9.1.3_amd64.deb +apt-get install -y adduser libfontconfig1 +wget https://dl.grafana.com/oss/release/grafana_9.1.7_amd64.deb +dpkg -i grafana_9.1.7_amd64.deb systemctl daemon-reload systemctl enable grafana-server systemctl start grafana-server @@ -45,7 +47,8 @@ When logged in to Grafana (port 3000, admin/admin) create a datasource that poin [Download](https://git.data.coop/nellemann/-/packages/generic/svci/) the latest version of SVCi packaged for deb. ```shell -dpkg -i svci_0.0.1-1_all.deb +wget https://git.data.coop/api/packages/nellemann/generic/svci/v0.0.3/svci_0.0.3-1_all.deb +dpkg -i svci_0.0.3-1_all.deb cp /opt/svci/doc/svci.toml /etc/ cp /opt/svci/doc/svci.service /etc/systemd/system/ systemctl daemon-reload diff --git a/doc/readme-redhat.md b/doc/readme-redhat.md index 875c0b5..0deeb2d 100644 --- a/doc/readme-redhat.md +++ b/doc/readme-redhat.md @@ -2,16 +2,14 @@ Please note that the software versions referenced in this document might have changed and might not be available/working unless updated. -More details are available in the [README.md](../README.md) file. If you are running Linux on Power (ppc64le) you should look for ppc64le packages at the [Power DevOps](https://www.power-devops.com/) website. - All commands should be run as root or through sudo. ## Install the Java Runtime from repository ```shell -dnf install java-11-openjdk-headless +dnf install java-11-openjdk-headless wget # or -yum install java-11-openjdk-headless +yum install java-11-openjdk-headless wget ``` @@ -27,12 +25,15 @@ systemctl start influxdb Run the ```influx``` cli command and create the *svci* database. +```sql +CREATE DATABASE "svci" WITH DURATION 365d REPLICATION 1; +``` ## Download and Install Grafana ```shell -wget https://dl.grafana.com/oss/release/grafana-9.1.3-1.x86_64.rpm -rpm -ivh grafana-9.1.3-1.x86_64.rpm +wget https://dl.grafana.com/oss/release/grafana-9.1.7-1.x86_64.rpm +rpm -ivh grafana-9.1.7-1.x86_64.rpm systemctl daemon-reload systemctl enable grafana-server systemctl start grafana-server @@ -43,15 +44,13 @@ When logged in to Grafana (port 3000, admin/admin) create a datasource that poin ## Download and Install svci -[Download](https://git.data.coop/nellemann/-/packages/generic/svci/) the latest version of SVCi packaged for rpm. - ```shell -rpm -ivh svci-0.0.1-1_all.rpm +wget https://git.data.coop/api/packages/nellemann/generic/svci/v0.0.3/svci-0.0.3-1.noarch.rpm +rpm -ivh svci-0.0.3-1_all.rpm cp /opt/svci/doc/svci.toml /etc/ cp /opt/svci/doc/svci.service /etc/systemd/system/ systemctl daemon-reload systemctl enable svci -systemctl start svci ``` Now modify */etc/svci.toml* and test your setup by running ```/opt/svci/bin/svci -d``` manually and verify connection to SVC and InfluxDB. Afterwards start service with ```systemctl start svci``` . diff --git a/doc/readme-suse.md b/doc/readme-suse.md index ac24ebe..0f72d73 100644 --- a/doc/readme-suse.md +++ b/doc/readme-suse.md @@ -9,7 +9,7 @@ All commands should be run as root or through sudo. ## Install the Java Runtime from repository ```shell -zypper install java-11-openjdk-headless +zypper install java-11-openjdk-headless wget ``` @@ -25,12 +25,15 @@ systemctl start influxdb Run the ```influx``` cli command and create the *svci* database. +```sql +CREATE DATABASE "svci" WITH DURATION 365d REPLICATION 1; +``` ## Download and Install Grafana ```shell -wget https://dl.grafana.com/oss/release/grafana-9.1.3-1.x86_64.rpm -rpm -ivh --nodeps grafana-9.1.3-1.x86_64.rpm +wget https://dl.grafana.com/oss/release/grafana-9.1.7-1.x86_64.rpm +rpm -ivh --nodeps grafana-9.1.7-1.x86_64.rpm systemctl daemon-reload systemctl enable grafana-server systemctl start grafana-server @@ -44,7 +47,8 @@ When logged in to Grafana (port 3000, admin/admin) create a datasource that poin [Download](https://git.data.coop/nellemann/-/packages/generic/svci/) the latest version of SVCi packaged for rpm. ```shell -rpm -ivh svci-0.0.1-1_all.rpm +wget https://git.data.coop/api/packages/nellemann/generic/svci/v0.0.3/svci-0.0.3-1.noarch.rpm +rpm -ivh svci-0.0.3-1_all.rpm cp /opt/svci/doc/svci.toml /etc/ cp /opt/svci/doc/svci.service /etc/systemd/system/ systemctl daemon-reload diff --git a/doc/svci.toml b/doc/svci.toml index 6fd95a9..4f25b0a 100644 --- a/doc/svci.toml +++ b/doc/svci.toml @@ -1,17 +1,29 @@ # SVCi Configuration +# Copy this file into /etc/svci.toml and customize it to your environment. + +### +### Define one InfluxDB to save metrics into +### -# InfluxDB to save metrics [influx] url = "http://localhost:8086" username = "root" password = "" database = "svci" -# SVC on our primary site + + +### +### Define one or more SVC's to query for metrics +### Each entry must be named [svc.] +### + + +# SVC to query for data and metrics [svc.site1] -url = "https://10.10.10.12:7443" +url = "https://10.10.10.5:7443" username = "superuser" password = "password" -refresh = 30 -trust = true # Ignore SSL cert. errors +refresh = 30 # How often to query HMC for data - in seconds +trust = true # Ignore SSL cert. errors (due to default self-signed cert.)