2010 9月 6

NETWAYSPortalとは、Nagiosの監視結果をポータルサイトとして表示するためのアドオンだ。
ユーザ毎にそれぞれの監視結果だけを表示させることが出来る。
これを使えば、最近流行りの無料監視サービスを作ることも可能だ。
Nagiosサーバはファイアーウォールの内側に設置し、NETWAYSPortalサーバをDMZに設置して公開することも出来る。
NETWAYSPortalは、ポータルサイトのベースとしてTYPO3を使用する。
TYPO3は、日本ではあまり知られていないが、欧米では非常に有名なCMSで、商用製品と比較しても遜色ないエンタープライズCMSに分類される。
日本語の文献はまだまだ少ないが、かなり高機能である。
また、NETWAYSPortalの画面をフロントエンドと呼び、TYPO3の管理画面のことをバックエンドと呼ぶ。
このブログを書いている現在時点でのNETWAYSPortalの最新版は3.0.1 だ。
TYPO3の最新版は4.4.2だが、NETWAYSPortalとの組み合わせでは、4.3系以上ではエラーが出る。
このため、今回使用するTYPO3は4.2系の最新版の4.2.14だ。
以前、インストールしたNagios(3.1.0)にインストールを行う。
サーバOSは、CentOS 5.3 である。
 



 

ダウンロード

今回必要なものは以下の通りだ。
 
●NETWAYSPortal : NETWAYSPortal-3.0.1.tar.gz (Downloads
●TYPO3 : typo3_src-4.2.14.tar.gz (Downloads
 
ダウンロードしたtarballは、/usr/local/src に置くものとする。
 

インストールマニュアル

NETWAYSPortalのインストールマニュアルは、NETWAYSPortalの本家サイトのドキュメントを見るか、ダウンロードしたtarballにも含まれている。
tarballを、解凍すると以下にインストールマニュアルがある。

./NETWAYSPortal/doc/DOCUMENTATION.txt
 
TYPO3のインストールマニュアルは、4.4系のものだがTYPO3の本家サイトのドキュメントを見るか、ダウンロードしたtarballにも含まれている。
tarballを、解凍すると以下にインストールマニュアルがある。

./typo3_src-4.2.14/INSTALL.txt
 
また、全ての作業は特に断りがない限りrootアカウントで行うものとする。
 

システム要求

NETWAYSPortalのインストールマニュアルによれば、以下の通り。
 
・TYPO3(Ver 4.1.5)
・a http server with PHP5 and curl
・MySQL
・Nagios w/ ndo
・EventDB (optional)
 
http、PHP5はインストール済みだ。
MySQLとNagios w/ ndoもインストール済みだ。
EventDBは、とりあえず不要だ。
 

インストール

1.curl の確認

# rpm -qa *curl*
curl-7.15.5-2.el5
curl-devel-7.15.5-2.el5

 
2.TYPO3とNETWAYSPortalの展開

# cd /var/www/html
# tar xvfz /usr/local/src/typo3_src-4.2.14.tar.gz
# tar xvfz /usr/local/src/NETWAYSPortal-3.0.1.tar.gz

 
3.NETWAYSPortalの権限の変更

# chown -R apache:apache NETWAYSPortal
# chmod -R g+w,o-rwx NETWAYSPortal

 
4.コンフィグレーションファイルの設定
  下記の赤字部分を自分の環境に合うように変更する。

# cd /var/www/html/NETWAYSPortal/typo3conf
# cp localconf.php localconf.php.org
# vi localconf.php

      1 <?
      2 
      3 // password of install backend: 'netways'
      4 $TYPO3_CONF_VARS['BE']['installToolPassword'] = '1d30331d99f90e875d2e4de07dc8b830';
      5 
      6 // typo3-database credentials
      7 $typo_db_username = 'netwaysportal';
      8 $typo_db_password = 'netwaysportal';
      9 $typo_db_host = 'localhost';
     10 $typo_db = 'netwaysportal';
     11 $typo_db_extTableDef_script = 'extTables.php';

 
5.finalizerスクリプトの実行
  下記の赤字部分を自分の環境に合うように変更する。

# cd /var/www/html/NETWAYSPortal
# vi finish_portal.sh

      1 #!/bin/bash
      2 
      3 httpUser="apache"
      4 
      5 dirTypo3Conf="./typo3conf/"
      6 fileLocalConfOrig="$dirTypo3Conf/localconf.php"
      7 fileLocalConfTmp="$dirTypo3Conf/localconf_tmp.php"
      8 fileLocalConfBak="$dirTypo3Conf/localconf.php_"
<省略>

 
# bash finish_portal.sh
Symlinking... done.
preserving ownership of files and folders... done.

 
6.netwaysportalデータベース及びユーザの作成
  NETWAYSPortalのコンテンツデータを格納するnetwaysportalデータベースを作成する。
  また、SELECT, INSERT, UPDATE, DELETE, CREATE権限を持ったユーザ(パスワード必須)を作成する。

# mysql -uroot -p

Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 29689
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> CREATE DATABASE netwaysportal;
Query OK, 1 row affected (0.04 sec)

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE ON netwaysportal.* TO netwaysportal@localhost IDENTIFIED BY 'netwaysportal';
Query OK, 0 rows affected (0.03 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> exit;
Bye

 
7.確認
  ブラウザで http://サーバURL/NETWAYSPortal にアクセスする。
  以下のメッセージが出た時はPHPが5.2になっていないことが原因だ。
  その場合は、『PNP4Nagios(0.6.2)のインストール』のシステム要求を参考にして欲しい。
 
図1:TYPO3のエラー画面(1)
図1:TYPO3のエラー画面(1)

  
  以下のメッセージが出ればOK
 
図2:TYPO3のエラー画面(2)
図2:TYPO3のエラー画面(2)

 
8.データベースへのインポート
  /var/www/html/NETWAYSPortal/typo3conf にENABLE_INSTALL_TOOLという空っぽのファイルを作成する。

# cd /var/www/html/NETWAYSPortal/typo3conf
# touch ENABLE_INSTALL_TOOL

 
  ブラウザで http://サーバURL/NETWAYSPortal/typo3/install/ にアクセスする。
 
図3:TYPO3のインストールツール(1)
図3:TYPO3のインストールツール(1)

 
  上記の画面が出たらOKボタンを押す。
 
図4:TYPO3のインストールツール(2)
図4:TYPO3のインストールツール(2)

 
  パスワードに netways を入力して Login ボタンを押す。
 
図5:TYPO3のインストールツール(3)
図5:TYPO3のインストールツール(3)

 
  メニューの”2: Database Analyser”をクリックする。
 
図6:TYPO3のインストールツール(4)
図6:TYPO3のインストールツール(4)

 
  表示されたページの一番下までスクロールし、”typo3conf/database_4.2.x.sql” と書いてある箇所を探す。
  ”typo3conf/database_4.2.x.sql” と書いてある箇所の横にある “IMPORT” をクリックする。
 
図7:TYPO3のインストールツール(5)
図7:TYPO3のインストールツール(5)

 
  表示されたページの一番下までスクロールし、
  ”Import the whole file ‘database_4.2.x.sql’ directly (ignores selections above)”
  と書いてある箇所のチェックボックスをチェックし、”Write to database”ボタンを押す。
 
図8:TYPO3のインストールツール(6)
図8:TYPO3のインストールツール(6)

 
  上記のように “Imported ALL” という画面が表示されればOKだ。
  次に、ブラウザで http://サーバURL/NETWAYSPortal にアクセスする。
 
図9:NETWAYSPortalのフロントエンドのログイン画面
図9:NETWAYSPortalのフロントエンドのログイン画面

 
  ユーザ名:admin、パスワード:password と入力して、錠前マークのログインボタンを押す。
 
図10:NETWAYSPortalのフロントエンドのトップ画面
図10:NETWAYSPortalのフロントエンドのトップ画面

 
  ログインでき、上記の画面が表示されればOKだ。
 

Nagios DBとの連携

NETWAYSPortalは、net_dbdataというエクステンションによってNagiosのDBから情報を取り出して表示する。
そのため、バックエンド(TYPO3の管理画面)から、NETWAYSPortalのTSConfigを設定しなおして、NagiosのDBにアクセスできるようにする必要がある。
ブラウザで、http://サーバURL/NETWAYSPortal/typo3 へアクセスする。
 
図11:TYPO3のバックエンドのログイン画面
図11:TYPO3のバックエンドのログイン画面

 
ユーザ名:admin、パスワード:netways と入力して、Loginボタンを押す。
 
図12:TYPO3のバックエンドのトップ画面
図12:TYPO3のバックエンドのトップ画面

 
ログイン後に上記の画面が表示されればOKだ。
 
図13:Nagios DBとの連携(1)
図13:Nagios DBとの連携(1)

 
上記の画面のように以下の手順を行う。

①左側のメニューから”Page”をクリック
②ツリー構造の”NETWAYSPortal v3″をクリック
③右側に表示されたページのエンピツアイコン(”Edit page properties”)をクリック
 
図14:Nagios DBとの連携(2)
図14:Nagios DBとの連携(2)

 
続いて表示された画面で、上記のように以下の手順を行う。

①”Options”タブをクリック
②自分の環境にあわせて、Nagios DBの設定を記述する

 host : DBサーバのIPアドレス
 name : データベース名
 user : データベースにアクセス可能なユーザ名
 pass : 上記のパスワード
 type : データベースアクセスのインターフェース
     mysql     - MySQL generic
     pdo_mysql - MySQL PDO (PHP 5)
     postgres  - PostgreSQL
     mssql     - Microsoft SQL Server

③FDアイコン(保存ボタン)を押し、設定を保存する
 
以上で、フロントエンドにログインすれば、Nagiosの監視結果が表示されるはずだ。
 

NagiosGrapherとの連携

NETWAYSPortalは、net_sproxyというエクステンションによってNagiosGrapherをフロントエンドに表示する。
そのため、バックエンド(TYPO3の管理画面)から、NETWAYSPortalの設定をなおして、NagiosGrapherにアクセスできるようにする必要がある。
ブラウザで、http://サーバURL/NETWAYSPortal/typo3 へアクセスし、ログインする。
 
図15:NagiosGrapherとの連携(1)
図15:NagiosGrapherとの連携(1)

 
上記の画面のように以下の手順を行う。

①左側のメニューから”Page”をクリック
②ツリー構造の”Grapher”をクリック
③右側に表示されたページのエンピツアイコンをクリック
 
図16:NagiosGrapherとの連携(2)
図16:NagiosGrapherとの連携(2)

 
続いて表示された画面で、上記のように以下の手順を行う。
 
①”Plugin”タブをクリック
②”Settings”タブをクリック
③NagiosGrapherのURLを記述
④NagiosGrapherのURLへアクセスする際のBASIC認証のユーザ名とパスワードを設定
⑤FDアイコン(保存ボタン)を押し、設定を保存する
 
以上で、フロントエンドにログインし、下記のように左側メニューの”Services”をクリックし、表示された右側画面のグラフアイコンをクリックすれば、NagiosGrapherのグラフが表示されるはずだ。
 
図17:NagiosGrapherとの連携(3)
図17:NagiosGrapherとの連携(3)

 
 

 


Categories: Nagios ,NETWAYSPortal ,TYPO3


Leave a Reply