2012年8月20日月曜日

net-snmpの拡張

SNMPを利用して独自のアプリケーションのメトリクスを収集しよう
とする場合に、net-snmpを利用しているのであれば、net-snmpを拡
張して対応できます。

拡張する方法としては、

 ・net-snmpに組み込む
 ・net-snmpの設定で外部スクリプトを呼び出して
  値を取得できるようにする

方法が考えられるのですが、それぞれの実装方法に関しては、以下
のURLなどをご参照ください。


net-snmpについて(独自監視項目の追加) - 前編
http://codezine.jp/article/detail/2938
net-snmpについて(独自監視項目の追加) - 後編
http://codezine.jp/article/detail/2991

18.5.5. Net-SNMP の拡張
https://access.redhat.com/knowledge/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sect-System_Monitoring_Tools-Net-SNMP-Extending.html

Linux と net-snmp の実装
http://www.wit-systems.co.jp/Linux_net-snmp001.htm
NET-SNMP 導入メモ
http://homepage3.nifty.com/myhometown/snmp.htm

第5回 図解で知るSNMP――MIB情報のすべて (1/8)
http://www.itmedia.co.jp/enterprise/articles/0705/21/news015.html

2012年5月31日木曜日

Zabbix 2.0をAmazon Linux上で動かしてみよう

これは、Zabbix 2.0のRPMを作成する手順の紹介です。

いつものように、SRPMをgithub上に置いておきました。
https://github.com/atanaka7/zabbix-jp-amzn1

これを利用して、RPMでのインストールを行います。

まずは、RPMの作成です。
先のgithub上の「zabbix-2.0.0-1.amzn1.src.rpm」をダウンロードしておきま
す。
あと、Amazon Linuxでは標準的に用意されていない、もしくはより適したRPM
をZABBIX-JPのダウンロードサイトからダウンロードしておきます。

i386用:
 http://www.zabbix.jp/binaries/relatedpkgs/rhel6/i386/fping-2.4b2-16.el6.JP.i686.rpm
 http://www.zabbix.jp/binaries/relatedpkgs/rhel6/i386/iksemel-1.4-2.el6.JP.i686.rpm
 http://www.zabbix.jp/binaries/relatedpkgs/rhel6/i386/iksemel-devel-1.4-2.el6.JP.i686.rpm

x86_64用:
 http://www.zabbix.jp/binaries/relatedpkgs/rhel6/x86_64/fping-2.4b2-16.el6.JP.x86_64.rpm
 http://www.zabbix.jp/binaries/relatedpkgs/rhel6/x86_64/iksemel-1.4-2.el6.JP.x86_64.rpm
 http://www.zabbix.jp/binaries/relatedpkgs/rhel6/x86_64/iksemel-devel-1.4-2.el6.JP.x86_64.rpm

これらのファイルをEC2上のAmazon Linuxのインスタンスにアップロードしま
す。
ここでは、ec2-userを利用して作業を行うこととします。

まず、アーキテクチャに合わせて上記の3つのRPMを

 $ sudo yum localinstall RPMファイル名 .....

でインストールしておきます。
続いて、RPMをビルドするための環境構築です。

 $ sudo yum install rpm-build
 $ sudo yum groupinstall 'Development tools'
 $ mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
 $ vi ~/.rpmmacrosを作成して、以下の記述を行います。

-----
%_topdir /home/ec2-user/rpmbuild
%_builddir %{_topdir}/BUILD
%_rpmdir %{_topdir}/RPMS
%_sourcedir %{_topdir}/SOURCES
%_specdir %{_topdir}/SPECS
%_srcrpmdir %{_topdir}/SRPMS
-----

そして、RPMのビルドです。

 $ rpmbuild --rebuild zabbix-2.0.0-1.amzn1.src.rpm

と実行すると、

-----
Installing zabbix-2.0.0-1.amzn1.src.rpm
error: Failed build dependencies:
        mysql-devel is needed by zabbix-2.0.0-1.amzn1.i386
        postgresql-devel is needed by zabbix-2.0.0-1.amzn1.i386
        net-snmp-devel is needed by zabbix-2.0.0-1.amzn1.i386
        openldap-devel is needed by zabbix-2.0.0-1.amzn1.i386
        gnutls-devel is needed by zabbix-2.0.0-1.amzn1.i386
        iksemel-devel is needed by zabbix-2.0.0-1.amzn1.i386
        sqlite-devel is needed by zabbix-2.0.0-1.amzn1.i386
        unixODBC-devel is needed by zabbix-2.0.0-1.amzn1.i386
        libssh2-devel >= 1.0.0 is needed by zabbix-2.0.0-1.amzn1.i386
        java-devel >= 1.6.0 is needed by zabbix-2.0.0-1.amzn1.i386
        curl-devel >= 7.13.1 is needed by zabbix-2.0.0-1.amzn1.i386
        OpenIPMI-devel >= 2.0.14 is needed by zabbix-2.0.0-1.amzn1.i386
        gettext is needed by zabbix-2.0.0-1.amzn1.i386
$
-----

のように足りないものがあった場合は、上記のように表示されますので、それ
ぞれをインストールします。

 $ sudo yum install mysql-devel postgresql-devel net-snmp-devel .....

インストールできたら、再度ビルドの実行です。

 $ rpmbuild --rebuild zabbix-2.0.0-1.amzn1.src.rpm

正常にビルドが終了すると、/home/ec2-user/rpmbuild/RPMS/ 以下にRPMファ
イルが作成されます。
注:Zabbix 2.0.0からzabbix-webパッケージがnoarchの下に出力されます。

ビルドできた各RPMも、

 $ sudo yum localinstall RPMファイル名

でインストールすると、依存関係を解決して依存するRPMも一緒にインストー
ルできるので便利です。

i386用とx86_64用は、それぞれの環境でビルドしてください。
全てx86_64の環境なら1台だけビルド用に構築して、他のサーバはビルドでき
たRPMを利用すれば大丈夫です。

RPMができたら、インストールや設定は以下のURLなどをご参照あれ。
http://www.slideshare.net/BlueSkyDetector/zabbix20
http://thinkit.co.jp/book/2012/04/13/3503

2012年2月28日火曜日

CentOS 6標準phpのConfigureコマンド

情報提供用の書き込みです。

CentOS 6のphpのphpinfo()の出力の一部です。

Configure Command => './configure' '--build=i686-pc-linux-gnu' '--host=i686-pc-linux-gnu' '--target=i686-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-libdir=lib' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--with-pic' '--disable-rpath' '--without-pear' '--with-bz2' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--with-xpm-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--with-kerberos' '--enable-ucd-snmp-hack' '--enable-shmop' '--enable-calendar' '--without-sqlite' '--with-libxml-dir=/usr' '--enable-xml' '--with-system-tzdata' '--enable-force-cgi-redirect' '--enable-pcntl' '--with-imap=shared' '--with-imap-ssl' '--enable-mbstring=shared' '--enable-mbregex' '--with-gd=shared' '--enable-bcmath=shared' '--enable-dba=shared' '--with-db4=/usr' '--with-xmlrpc=shared' '--with-ldap=shared' '--with-ldap-sasl' '--with-mysql=shared,/usr' '--with-mysqli=shared,/usr/bin/mysql_config' '--enable-dom=shared' '--with-pgsql=shared' '--enable-wddx=shared' '--with-snmp=shared,/usr' '--enable-soap=shared' '--with-xsl=shared,/usr' '--enable-xmlreader=shared' '--enable-xmlwriter=shared' '--with-curl=shared,/usr' '--enable-fastcgi' '--enable-pdo=shared' '--with-pdo-odbc=shared,unixODBC,/usr' '--with-pdo-mysql=shared,/usr' '--with-pdo-pgsql=shared,/usr' '--with-pdo-sqlite=shared,/usr' '--with-sqlite3=shared,/usr' '--enable-json=shared' '--enable-zip=shared' '--without-readline' '--with-libedit' '--with-pspell=shared' '--enable-phar=shared' '--with-tidy=shared,/usr' '--enable-sysvmsg=shared' '--enable-sysvshm=shared' '--enable-sysvsem=shared' '--enable-posix=shared' '--with-unixODBC=shared,/usr' '--enable-fileinfo=shared' '--enable-intl=shared' '--with-icu-dir=/usr' '--with-enchant=shared,/usr' '--with-recode=shared,/usr'

2011年7月15日金曜日

Yumを利用せずにZABBIX-JPのZabbixをインストール

Zabbixサーバをインストールする場合は、以下のパッケージをインストールして下さい。

RHEL 5(CentOS 5) 32bitの場合:
 http://www.zabbix.jp/binaries/relatedpkgs/rhel5/i386/
  fping-2.4b2-16.el5.JP.i386.rpm
  iksemel-1.2-13.el5.JP.i386.rpm
  libssh2-1.2.5-1.el5.JP.i386.rpm

 http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/i386/
  zabbix-1.8.5-1.el5.JP.i386.rpm
  zabbix-agent-1.8.5-1.el5.JP.i386.rpm
  zabbix-server-1.8.5-1.el5.JP.i386.rpm
  zabbix-server-mysql-1.8.5-1.el5.JP.i386.rpm
  zabbix-web-1.8.5-1.el5.JP.i386.rpm
  zabbix-web-mysql-1.8.5-1.el5.JP.i386.rpm


RHEL 5(CentOS 5) 64bitの場合:
 http://www.zabbix.jp/binaries/relatedpkgs/rhel5/x86_64/
  fping-2.4b2-16.el5.JP.x86_64.rpm
  iksemel-1.2-13.el5.JP.x86_64.rpm
  libssh2-1.2.5-1.el5.JP.x86_64.rpm

 http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/x86_64/
  zabbix-1.8.5-1.el5.JP.x86_64.rpm
  zabbix-agent-1.8.5-1.el5.JP.x86_64.rpm
  zabbix-server-1.8.5-1.el5.JP.x86_64.rpm
  zabbix-server-mysql-1.8.5-1.el5.JP.x86_64.rpm
  zabbix-web-1.8.5-1.el5.JP.x86_64.rpm
  zabbix-web-mysql-1.8.5-1.el5.JP.x86_64.rpm


監視対象には、以下のパッケージをインストールして下さい。

RHEL 5(CentOS 5) 32bitの場合:
 http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/i386/
  zabbix-1.8.5-1.el5.JP.i386.rpm
  zabbix-agent-1.8.5-1.el5.JP.i386.rpm

RHEL 5(CentOS 5) 64bitの場合:
 http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/x86_64/
  zabbix-1.8.5-1.el5.JP.x86_64.rpm
  zabbix-agent-1.8.5-1.el5.JP.x86_64.rpm

これら以外のパッケージは、OSのインストールメディアにあります。

ご不明な点があれば、ZABBIX-JP(http://www.zabbix.jp/)まで。

2011年4月14日木曜日

ZABBIX-JPのRPMをCentOS 5.6上のPHP 5.3で動かせ!

CentOS 5.6がリリースされました。
よ〜く見ると、今までのPHPのアップデート以外に、php53というPHP 5.3が入っているではないですか。
そこで、Zabbix-1.8.4-1.JPをCentOS 5.6で搭載されたPHP 5.3を利用してインストールできないじゃないかとのご意見も聞かれたのでやってみた。

詳細は説明しません。
わからなかったら聞いてください。

以下、手順です。

# wget http://www.zabbix.jp/binaries/relatedpkgs/rhel5/i386/zabbix-jp-release-5-3.noarch.rpm
# rpm -ivh zabbix-jp-release-5-3.noarch.rpm
# 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
# yum install zabbix-agent zabbix-server-mysql
# yum install php53 php53-gd php53-mbstring php53-xml php53-bcmath php53-mysql
# wget http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/i386/zabbix-web-1.8.4-1.el5.JP.i386.rpm
# wget http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel5/i386/zabbix-web-mysql-1.8.4-1.el5.JP.i386.rpm
# rpm -ivh --nodeps zabbix-web-1.8.4-1.el5.JP.i386.rpm zabbix-web-mysql-1.8.4-1.el5.JP.i386.rpm

# yum install mysql-server

後は通常のインストールと同じです。

2011年4月12日火曜日

CentOS 5.6へのアップデート手順

お行儀の良いアップデート手順は、以下のように行うらしい。from リリースノート。
yum clean all
yum update glibc\*
yum update yum\* rpm\* pyth\*
yum clean all
yum update mkinitrd nash
yum update selinux\*
yum update
shutdown -r now

2011年3月8日火曜日

Amazon Linux用Zabbix 1.8.4のRPM

とりあえずSRPMだけ公開してみた。
https://github.com/atanaka7/zabbix-jp-amzn1