Bo Zhou

Web Developer

iRODS Consortium

June 8-11, 2021

iRODS User Group Meeting 2021

Virtual Event

Zone Management Tool (ZMT)

Zone Management Tool (ZMT)

ZMT - Motivation

Develop a user-friendly, easy to deploy, fast, and light-weight GUI to manage an iRODS Zone

  • Based on React.JS SPA Framework
  • Talks to iRODS C++ REST API
  • Exposes reporting and configuration of all iRODS Servers
  • Assumes the administration duties of Metalnx
  • Focuses on administrator concerns

 

https://github.com/irods/irods_client_zone_management_tool​

ZMT - Configuration

Minimum required configuration:

  • URL of your iRODS Zone's C++ REST API endpoint

 

Additional configuration available:

  • Listen port for ZMT
  • An image to serve as the login logo
  • An image to serve as the branding logo
  • A branding name
  • Theme colors (primary & secondary)

 

A sample.env file is provided for reference...

ZMT - Configuration - sample.env

LISTEN_PORT=3000
REACT_APP_REST_API_URL=protocol://host:port
REACT_APP_APPBAR_LOGO=iRODS-logo.jpg
REACT_APP_LOGIN_LOGO=iRODS-logo-1.png
REACT_APP_BRANDING_NAME=Zone Management Tool
REACT_APP_PRIMARY_COLOR=#04bdaf
REACT_APP_SECONDARY_COLOR=#ffffff

ZMT - /servers - Table View

  • Loads data from /zone_report REST endpoint

 

  • A sortable table view of all servers in the iRODS Zone

 

  • Displays basic server information

 

  • Detail view available for each server

ZMT - /servers - Server Details

ZMT - /resources - Table View

Resources section has two views - table view and tree view.

 

Table view allows administrator to:

  • view the name, hostname, type, and vault path of a resource
  • sort each column
  • filter results by name, live per keystroke
  • edit a resource
  • remove a resource
  • add a new resource

Demo #1: Updating the context string of a resource

ZMT - /resources - Tree View

  • Shows the resource hierarchy with parent/child relationships

 

  • Allows administrators to
    • stage multiple drag and drop operations
    • undo/redo staged operations
    • reset staged operations

 

  • Sends staged changes to iRODS REST API

ZMT - /users and /groups

  • Listing of users and groups

 

  • Filtering for large lists

 

  • Create/delete a user/group

 

  • Manage group membership

 

Demo #2: Adding and Removing a user from a group

ZMT - iRODS REST API Endpoint Connection

ZMT - Future Work and Status

Future Work

  • Delay queue administration
  • Ticket administration
  • Monitoring and metrics
  • Policy administration

 

Status

  • iRODS C++ REST API - Not Yet Released
  • ZMT - Not Yet Released
  • First releases - Summer 2021?

Questions?

UGM 2021 - Zone Management Tool (ZMT)

By iRODS Consortium

UGM 2021 - Zone Management Tool (ZMT)

  • 744