2011年8月19日金曜日

Zabbixホスト登録の手順



Zabbixにホストを登録する手順のメモです。

1.対象ホストにzabbix-agentをインストールします。
http://sdc.sangi.jp/2011/03/zabbix-agent.html を参考

2.zabbixにログインし、設定->ホスト->ホストの作成 をクリック

名前:今回はFQDNを入力
IPアドレスを入力
テンプレートをTemplate_Linuxを選択

その後、ホスト一覧に出てくる。

3.MAPへの登録
設定->マップ->マップ一覧からマップ選択->アイコンの作成
図のように選択し、適用->マップを保存します。


この段取りでホストを追加していきます。

2011年8月18日木曜日

Javaで姫野ベンチを動かす(Javaからの呼び出し)Windows版

Javaから姫野ベンチを呼び出し実行し表示させるメモです。

1. 姫野ベンチをダウンロード設置
http://accc.riken.jp/HPC/HimenoBMT/download1.html
から実行形式のhimenoBMTxp_s.exeをダウンロードして解凍します。
D:¥himeno¥himenoBMTxp_s.exe
と設置しました。

2.Eclipseでプロジェクト、クラス(Himeno)を作成し、次のコードを入力します。


public class Himemo {
public static void main(String[] args) throws
InterruptedException,
IOException {
ProcessBuilder pb = new ProcessBuilder("D:\\himeno
\\himenoBMTxp_s.exe");
Process p = pb.start();

BufferedReader br = new BufferedReader(new
InputStreamReader(p.getInputStream()));
Catcher c = new Catcher(br);

c.start();

p.waitFor();
p.destroy();


System.out.println(c.out.toString());
}

}

class Catcher extends Thre
ad {
Reader in;
StringWriter out = new
StringWriter();
public Catcher(Reader in) {
this.in = in;

}

public void run() {

int c;
try {
while ((c = in.read()) != -1) {

out.write((char)c);
}
} catch (IOException e) {
e.printStackTrace();

}

}


}

姫野ベンチの結果が出力されまし
た。


つまり、下記の流れでDBに姫野ベンチの結果をアップロードします。
1.姫野ベンチ設置
2.Javaより姫野ベンチを実行し結果を出力(出力はバッファ、またはテキストなど)
3.出力された結果からMFLOPSの結果だけ取り出し、DBにアップロード(http://sdc.sangi.jp/2011/08/mysqljava.html)
4.Eclipseよりjarファイルで出力
5.Winodwsのタスクスケジューラにjarファイル実行を登録

これで定期的にDBにアップロードされればOKです。

2011年8月17日水曜日

MySQLに接続(Java編)

MySQLにJavaから接続します。
C言語より、非常に簡単です。
Eclipseを使ってやります。

1.MySQL Connector/J をダウンロード
http://dev.mysql.com/downloads/connector/j/5.0.html
適当なところへ配置

2.Eclipseでプロジェクト作成後、
プロジェクトを右クリック->ビルド・パス->ビルド・パスの構成->ライブラリ->外部Jarの追加
から先ほど設置した
mysql-connector-java-5.0.8-bin を指定

3.クラスを作成し、次のコードを入力

import java.sql.*;

public class MySQL {
public static void main(String[] args) {
String msg = "";
try {
// ドライバロード
Class.forName("org.gjt.mm.mysql.Driver");

// MySQLに接続
Connection con = DriverManager.getConnection("jdbc:mysql://ホスト名/DB名", "id", "pass");

// ステートメント生成
Statement stmt = con.createStatement();

// SQLを実行
String sqlStr = "SELECT * FROM servers";
ResultSet rs = stmt.executeQuery(sqlStr);

// 結果行をループ
while(rs.next()){
// レコードの値
int id = rs.getInt("id");
String name = rs.getString("name");

//表示
System.out.println(id + ":" + name);
}

// 接続を閉じる
rs.close();
stmt.close();
con.close();
}catch (ClassNotFoundException e){
msg = "ドライバのロードに失敗しました";
System.out.println(msg);
}catch (Exception e){
msg = "ドライバのロードに失敗しました";
System.out.println(msg);
}
}
}

2011年8月15日月曜日

Zabbixインストール(再確認)


Zabbixのインストールの再確認メモです。
CentOS5に対しバージョン1.8をインストールします。

1.yumリポジトリ登録用RPMのインストール方法
# rpm -ivh http://www.zabbix.jp/binaries/relatedpkgs/rhel5/i386/zabbix-jp-release-5-3.noarch.rpm

2.使用するZABBIXのバージョンの切替方法
(確認)
# alternatives --display zabbix-jp-release

(変更)
[root@rad-xen-vweb10 ~]# alternatives --config zabbix-jp-release

4 プログラムがあり 'zabbix-jp-release' を提供します。

選択 コマンド
-----------------------------------------------
1 /usr/share/zabbix-jp-release/zabbix-jp-1.1.repo
2 /usr/share/zabbix-jp-release/zabbix-jp-1.4.repo
*+ 3 /usr/share/zabbix-jp-release/zabbix-jp-1.6.repo
4 /usr/share/zabbix-jp-release/zabbix-jp-1.8.repo

Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:4

変更されたか確認
[root@rad-xen-vweb10 ~]# alternatives --display zabbix-jp-release
zabbix-jp-release - ステータスは手動です。
リンクは現在 /usr/share/zabbix-jp-release/zabbix-jp-1.8.repo を指しています。
/usr/share/zabbix-jp-release/zabbix-jp-1.1.repo - 優先項目 10
/usr/share/zabbix-jp-release/zabbix-jp-1.4.repo - 優先項目 20
/usr/share/zabbix-jp-release/zabbix-jp-1.6.repo - 優先項目 40
/usr/share/zabbix-jp-release/zabbix-jp-1.8.repo - 優先項目 30

(キャッシュを削除)
# yum clean all

3.インストール
# yum install zabbix zabbix-agent zabbix-server zabbix-server-mysql zabbix-web zabbix-web-mysql

4. MySQLデータベースサーバの設定
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

default-character-set=utf8
skip-character-set-client-handshake

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

赤字の部分を追加(場所も同じように)。サーバを起動。

5.MySQLユーザ:zabbix, DB:zabbixを作成
今回はphpMyAdminで作成しました。

6.初期DBをインポート
[root@rad-xen-vweb10 ~]# mysql -u zabbix zabbix -p < /usr/share/doc/zabbix-server-1.8.5/schema/mysql.sql
Enter password:
[root@rad-xen-vweb10 ~]# mysql -u zabbix zabbix -p < /usr/share/doc/zabbix-server-1.8.5/data/data.sql
Enter password:
[root@rad-xen-vweb10 ~]# mysql -u zabbix zabbix -p < /usr/share/doc/zabbix-server-1.8.5/data/images_mysql.sql
Enter password:

7.Webインターフェースの設定
Webサーバを起動後、一旦設定ファイルを削除します。
# rm /etc/zabbix/zabbix.conf.php

アクセスします。
http://zbx.xxxx.xx/zabbix/
後はナビに従って入力していきます。
終了するとログイン画面がでてきます。
デフォルトでは
ID admin
PASS zabbix
でログインできます。

8.ZABBIXサーバの設定
# vi /etc/zabbix/zabbix_server.conf

DBName=zabbix

### Option: DBSchema
# Schema name. Used for IBM DB2.
#
# Mandatory: no
# Default:
# DBSchema=

### Option: DBUser
# Database user. Ignored for SQLite.
#
# Mandatory: no
# Default:
# DBUser=

DBUser=zabbix
DBPassword=XXXXXXX

赤字の部分を確認、変更します。
# service zabbix-server start
# chkconfig zabbix-server on

9.エージェントの設定
http://sdc.sangi.jp/2011/03/zabbix-agent.html を参考

10.エージェントの登録
メニューから[設定] → [ホスト]をクリックし、右上のプルダウンメニューより[ホスト]が選択されていることを確認し、[ホストの作成]をクリックします。

ホストの表示名を記入します。
zabbix_agentd.confでHostnameに設定した名称を記入してください。
後の項目も設定します。

以上で設定終了です。