Skip to content

img0

HyperIQ

HyperIQ Installation

HyperIQ is available in two forms:

  • Virtual Appliance installed on VMWare or VirtualBox
  • Containerized Application installed on Docker

Note

As we want HyperIQ to monitor HyperBalance (as well as monitoring your HyperStore system), before installing HyperIQ you must enable the Prometheus exporter on each of your HyperBalance nodes. On each HyperBalance node, log into the HyperBalance UI, go to Cluster Configuration -> Layer 7 -- Advanced Configuration and then check the "Enable Prometheus Exporter" checkbox.

Install Docker

Instructions

  1. Log-in to your node6 (unused node)
  2. Install Docker and Docker-compose
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh
    yum install docker-compose
    systemctl start docker
    

Install HyperIQ

Instructions

  1. Log-in to the Host Server via SSH if you have not already
  2. Run the following command to allow Docker containers on different networks to communicate with each other:
    iptables -I DOCKER-USER -j ACCEPT
    
  3. Download the HyperIQ Binary
    wget --user=admin --password=cloudian123 http://10.150.1.252:8080/images/HyperIQ_1.9.1.bin
    
  4. Make the binary executable
    chmod +x HyperIQ_1.9.1.bin
    
  5. Run the binary with the install option and type 'yes' to proceed
    ./HyperIQ_1.9.1.bin install
    
  6. When prompted for a unique name, enter studentX where X is your student number
    Please enter a unique name for this HyperStore custer []: studentX
    
  7. When prompted for an IP address of a HyperStore node, enter the IP of your node1 from your HyperStore cluster
    Please enter the iP address of a HyperStore node []: <Node1 IP Address>
    
  8. When prompted for username, enter the HyperStore Shell username of sa_admin
  9. When prompted for the SSH password for user sa_admin enter the CMC admin user password
  10. When prompted to add another HyperStore cluster, answer no
  11. When prompted for the password for HyperIQ UI, enter cloudian123. Confirm your input in the next prompt.
    Please enter password for HyperIQ UI (minimum 9 characters) []: cloudian123
    

Explore HyperIQ Dashboard

Instructions

  1. Open a browser and navigate to "http://< Host Server IP >:3000"
  2. Log-in as cloudian_admin user and cloudian123 password

Info

The following is an overview of the dashboard

Info

To view details about each of the Graphs, hover over the 'i' button on the top left corner of the graph

Instructions

  1. Navigate to various panels available on the dashboard

HyperIQ Configurations

Instructions

  1. In the Host Server, navigate to ~/.config/cloudian/hyperiq
    cd ~/.config/cloudian/hyperiq
    
  2. Run the iqmgr command to show the available options
    ./iqmgr
    

Info

If you installed HyperIQ from a virtual appliance, iqmgr can be ran from any directory

HyperIQ Alerting and Notifications

Alerts are set via iqmgr. For a full list of available configs, refer to the HyperIQ User Guide: https://s3.cloudianhyperstore.com/downloads/HyperIQ/1/1.7/HyperIQ_1.7_HyperIQ_UserGuide_v-1.7.pdf

Instructions

  1. Ensure you are in the ~/.config/cloudian/hyperiq directory
  2. Configure an alert to fire when data disk space reaches 10%
    ./iqmgr config set /alerts/disk/data_disk_outof_space_medium_threshold 10
    
  3. Configure an alert to fire when number of total objects in the cluster reaches or exceeds 5
    ./iqmgr config set /alerts/s3/total_system_objectcount_limit 5
    

We will also setup Slack notifications

Instructions

  1. Configure the following Slack parameters using iqmgr
    ./iqmgr config set /alertmanager/notifications/slack/api_url https://hooks.slack.com/services/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
    
  2. Configure the Slack channel name
    ./iqmgr config set /alertmanager/notifications/slack/channel training-notifications 
    

Info

You must configure your own Slack APP and Webhook URL to use this in your own cluster. The lab API url is connected to the Cloudian Slack channel.

Instructions

  1. The changes set by iqmgr config set is not applied until you run the following command
    ./iqmgr config apply
    
  2. Send a sample alert to test our Slack integration
    ./iqmgr alerts test
    

Info

The Slack API url is sent to an instructor accessible channel. Ask the instructor to show you the outputs

Let's generate some load to trigger the alerts

Instructions

  1. Create a large file
    dd if=/dev/zero of=/tmp/2G bs=1024 count=2048000
    
  2. Upload the file to HyperStore
    aws s3 --endpoint-url http://$s3_endpoint --profile andrew cp /tmp/2G s3://engineerbucket
    

Alerts are sent every 5 minutes by default

Alertmanager

Lastly, let's look at the fired alerts we configured in the Alertmanager

Instructions

  1. On your browser, navigate to http://< Host Server >:3000/alertmanager
  2. When it prompts for the User / Password, enter cloudian_admin user and cloudian123 as password
  3. View the active alerts

Instructions

Alertmanager can be useful in silencing an unwanted alert

  1. Copy the firing alert name as shown below

  2. Click on the Silence button to configure a new silence option

  3. On the New Silence page, paste in the alert name you copied into the Matchers field

  4. Click on the + button next to the Matcher name to add it
  5. Put your name under Creator and add a useful Comment

  6. Click Create to create the silence

Instructions

  1. You can navigate to Silences at the top navigation bar to view or edit the Silence options