コマンドラインツール

コマンドラインツールとは

Hinemosコマンドラインツールは、HinemosのWebサービスAPI(アプリケーションプログラミングインタフェース)(図1)を利用して、Hinemosクライアントの上のほぼ全ての操作をCUI(キャラクタユーザ インタフェース)上で実現可能となる運用支援ツールです。Hinemosコマンドラインツールは、Hinemosクライアントが持っていない機能である設定のインポート・エクスポート機能も備えております。Hinemosコマンドラインツールを利用することで、ノード・スコープの登録、監視設定の作成や変更、さらに設定のインポート・エクスポートなどを簡単なコマンド操作から実行することができるようになります。

 

コマンドラインルール
図1 Hinemosコマンドラインツールの位置づけ

 

特徴

容易に導入可能

Hinemosコマンドラインツールは約300個のスクリプトで成り立っており、Hinemosクライアントの上のほぼ全ての操作に対応しております。WebサービスAPIの細かい仕様を意識せずに利用することができます。
また、OS付属のPythonの実行環境さえあれば、特別なパッケージをインストールすることなく、すぐに利用することができます。

運用管理の自動化を実現

従来、Hinemosマネージャに対する操作はHinemosクライアントのGUI(グラフィカルユーザインターフェース)を介して行う必要がありました。GUIは誰でも容易に扱う事ができる一方で、操作するためには必ず人の手が必要となる、というデメリットがあります。Hinemosコマンドラインツールを利用して、一連の操作を自動化することによって、Hinemosマネージャに対する操作に人手を介さない形にすることが可能です。

他ツールとHinemosを容易に連携可能

ほかのツール、または既存のスクリプトなどと組み合わせて運用することが可能となります。

 

コマンドラインツールを使ってみよう

ここでは、実際のイメージをつかんでいただくため、いくつかの例を紹介します。

 

ノード登録から監視まで

以下では、Hinemosコマンドラインツールを用いてノードを登録、そして登録したノードに対してHTTP監視を作成する方法を紹介します。ここの例を用いて、Hinemosコマンドラインツールの基本的な使い方を説明します。

1. まず、Repository_addNode.pyを用いてノードを登録します。

            [実行]
            $ python Repository_addNode.py –H http://192.168.0.1:8080/HinemosWS/ -w hinemos -A 192.168.0.2 -I WEBSERVER1 -N "Webサーバ1号機"  Enter  
            
            [結果] http://192.168.0.1:8080/HinemosWS/, addNode succeeded. 
            
                      ※上記引数の”192.168.0.1”はHinemosマネージャサーバのIP、”192.168.0.2”は監視対象のIP

 

2. MonitorSetting_addMonitor_HttpI.pyを用いてHTTP監視(数値)を登録します。なお、通知方法はデフォルトの「STATUS_FOR_POLLING」と「EVENT_FOR_POLLING」を使います。

            [実行]
            $ python MonitorSetting_addMonitor_HttpI.py –H http://192.168.0.1:8080/HinemosWS/ -w hinemos --monitorID HTTPMON1 --application WEBSRV --facilityID WEBSERVER1 --requestURL "http://#[IP_ADDRESS]/" --notifyIDs STATUS_FOR_POLLING,EVENT_FOR_POLLING --monitor on  Enter  
            
            [結果] 
            http://192.168.0.1:8080/HinemosWS/, addMonitor succeeded.
            

 

3. 最後に、Hinemosクライアントにて、上記で登録した設定と監視結果を確認します。

 

 

↓クリックすると画像が拡大されます↓

 


図2 コマンドラインツールで登録したノードとスコープ

 

↓クリックすると画像が拡大されます↓

 


図3 コマンドラインツールで登録した監視設定

 

↓クリックすると画像が拡大されます↓

 


図4 通知結果

tips

  • ◆「--help」オプションを指定すると、引数の説明や使用方法などのヘルプ情報が表示されます。
            [実行]
            $ python Repository_addNode.py --help  Enter  
            
            [結果] http://192.168.0.1:8080/HinemosWS/, addNode succeeded. 
            Usage: Repository_addNode.py [-H MANAGERURL] [-U USER] -w PASSWORD -A IPADDRESS [-P PORT] [-C COMMUNITY] [-V VERSION] [-I FACILITYID] [-N FACILITYNAME] [-n NODENAME] [-R OWNERROLEID]
            
            Options:
              --version             show program's version number and exit
              -h, --help            show this help message and exit
              -H MANAGERURL, --url=MANAGERURL
                                    Hinemos manager URL (default:
                                    http://127.0.0.1:8080/HinemosWS/)
              -U USER, --user=USER  user
              -w PASSWORD, --passwd=PASSWORD
                                    Password
              -A IPADDRESS, --ipAddress=IPADDRESS
                                    IP address
              -P PORT, --port=PORT  port number
              -C COMMUNITY, --community=COMMUNITY
                                    community name
              -V VERSION, --snmpVersion=VERSION
                                    version: 1 or 2c or 3
              -I FACILITYID, --facilityID=FACILITYID
                                    facilityID
              -N FACILITYNAME, --facilityName=FACILITYNAME
                                    facility Name
              -n NODENAME, --nodeName=NODENAME
                                    node Name
              -R OWNERROLEID, --ownerRoleID=OWNERROLEID
                                    ownerRoleID
            

 

 

設定のインポート・エクスポート

設定のインポート・エクスポートとはHinemosマネージャに登録したノード、監視設定、ジョブ設定などの情報をXML形式で出力(エクスポート)する、またはXML形式の設定データをHinemosマネージャに投入(インポート)する操作です。Hinemosコマンドラインツールのインポート・エクスポートスクリプトを用いて、Hinemosマネージャから設定情報をエクスポートし、別のHinemosマネージャにインポートすることで、マネージャサーバ間の設定複製ができます。また、エクスポートしたデータを同じマネージャにインポートすることで、設定情報のバックアップ・リストアとしても利用可能です。

以下では、リポジトリと監視設定の例を用いてインポート・エクスポートスクリプトの使い方を説明します。

1. まず、エクスポートスクリプトを用いて上記の例で登録した設定をエクスポートします。

            [実行]
            $ mkdir export_data  Enter    ※XMLファイルを書き出すディレクトリを作成
            
            [実行]
            $ python Porting_exportNode.py –H http://192.168.0.1:8080/HinemosWS/ -w hinemos -D ./export_data/  Enter  
            
            [結果]
            http://192.168.0.1:8080/HinemosWS/, exportNode succeeded.
            
            [実行]
            $ python Porting_exportMonitorSetting.py –H http://192.168.0.1:8080/HinemosWS/ -w hinemos -D ./export_data/ -T HTTP  Enter  
            
            [結果]
            exportMonitorSetting HTTPMON1 ...
            
            http://192.168.0.1:8080/HinemosWS/, exportMonitorSetting succeeded.
            

 

上記のコマンドを実行すると、export_data配下にplatformNode*.xml (ノード情報)、monitorHttp.xml(HTTP監視設定の情報)などのXMLファイルが出力されます。

2. インポートスクリプトを用いて、エクスポートした設定を別のHinemosマネージャサーバにインポートします。

            [実行]
            $ python Porting_importNode.py -H http://192.168.0.3:8080/HinemosWS/ -w hinemos -D ./export_data/  Enter  
            
            [結果]
            addNode WEBSERVER1 ...
            
            http://192.168.0.3:8080/HinemosWS/, importNode succeeded.
            
            [実行]
            $ python Porting_importMonitorSetting.py -H http://192.168.0.3:8080/HinemosWS/ -w hinemos -D ./export_data/ -T HTTP  Enter  
            
            [結果]
            addMonitorSetting HTTPMON1 ...
            
            http://192.168.0.3:8080/HinemosWS/, importMonitorSetting succeeded.
            
                      ※上記引数の”192.168.0.1”はHinemosマネージャサーバのIP、”192.168.0.2”は監視対象のIP
            

 

これで、設定のインポートが完了です。

上記の他に、ジョブの実行、環境構築機能のモジュールチェック・実行など、合計300個以上のスクリプトを用意しております。

 

 

よくあるご質問

Q1 Hinemosコマンドラインツールはどこから入手できますか?
A1 Hinemosのツール類は、Hinemosサブスクリプションに含まれております。
Q2 Hinemosコマンドラインツールを使うために必要な追加パッケージやPythonモジュールなどがあれば、教えてください。
A2 Python以外のパッケージは不要です。