Cacti on OpenSolaris インストール編

ちょっと仕事中にCactiの話題になったんですが、Solaris上って動かないよね?
と言われてびっくりしました。
(動くでしょう、と思いながら)

で、OpenSolarisで確認。

cacti-0.8.7eのREADMEより


$ wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
$ gzip -cd cacti-0.8.7e.tar.gz | tar xf -
$ cd cacti-0.8.7e
$ more docs/README
...
PHP 4.3.6+
MySQL 4.1.x or 5.x
RRDTool 1.0.49+ or 1.2.x
NET-SNMP 5.1.2+
...

今回の課題は、ALL IPSパッケージで動かすこと。
使ったパッケージインストールコマンド。


$ pfexec pkg install SUNWmysql5 # MySQL5.0
$ pfexec pkg install SUNWphp52 # PHP5.2
$ pfexec pkg install SUNWphp52-mysql # PHP5.2 modules/mysql.so
$ pfexec pkg install SUNWapch22 # Apache 2.2
$ pfexec pkg install SUNWapch22m-php52 # Apache 2.2 mod_php5.2.so
$ pfexec pkg install SUNWrrdtool # rrdtool 1.3.5

パッケージとして提供されているので、各ファイルのインストールパスがデフォルトとかなり違います。

例えば、Apache 2.2


$ ls /usr/apache2/2.2/
bin/ build/ include/ lib/ libexec/
$ ls /etc/apache2/2.2/
conf.d/ httpd.conf magic original/
envvars httpd.conf.org mime.types samples-conf.d/
$

MySQLの my.cnfはこんなところに


$ ls /etc/mysql/5.0/my.cnf
/etc/mysql/5.0/my.cnf

まぁ、ある意味わかりやすいかも。

    • -

Apache起動
Portとか変えないならそのままでOK。


# svcadm enable apache22

MySQL起動


# vi /etc/mysql/5.0/my.cnf # utf 8指定
...
[client]
default-character-set=utf8
...
[mysqld]
default-character-set = utf8
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8
...
# svcadm enable mysql # プロセス起動
# /usr/mysql/5.0/bin/mysqladmin -u root password [パスワード] # パスワード設定
# /usr/mysql/5.0/bin/mysql -u root -p
Enter password:

mysql> status

                          • -

/usr/mysql/5.0/bin/mysql Ver 14.12 Distrib 5.0.67, for pc-solaris2.11 (i386) using readline 5.1

Connection id: 1
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: /usr/bin/less -ins
Using outfile: ''
Using delimiter: ;
Server version: 5.0.67 Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /tmp/mysql.sock
Uptime: 13 sec

Threads: 1 Questions: 4 Slow queries: 0 Opens: 12 Flush tables: 1 Open tables: 3 Queries per second avg: 0.308

                          • -

mysql>

Cacti


$ wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
$ gzip -cd cacti-0.8.7e.tar.gz | tar xf -
$ cd cacti-0.8.7e
$ su -
# cd /var/apache2/2.2/htdocs
# mv ~cacti/src/cacti-0.8.7e cacti
# cd /var/apache2/2.2/htdocs/cacti
# /usr/mysql/5.0/bin/mysqladmin -u root -p create cacti # DB作る
# /usr/mysql/5.0/bin/mysql -u root -p < cacti.sql cacti # SQL流し込み
# /usr/mysql/5.0/bin/mysqladmin -u root -p reload # 反映
# /usr/mysql/5.0/bin/mysql -u root -p
mysql> show databases;

                                          • +
Database
                                          • +
information_schema
cacti
mysql
test
                                          • +

4 rows in set (0.00 sec)
mysql> use cacti;
Database changed
mysql> show tables;

                                                        • +
Tables_in_cacti
                                                        • +
cdef
cdef_items
colors
data_input
data_input_data
data_input_fields
data_local
data_template
data_template_data
data_template_data_rra
data_template_rrd
graph_local
graph_template_input
graph_template_input_defs
graph_templates
graph_templates_gprint
graph_templates_graph
graph_templates_item
graph_tree
graph_tree_items
host
host_graph
host_snmp_cache
host_snmp_query
host_template
host_template_graph
host_template_snmp_query
poller
poller_command
poller_item
poller_output
poller_reindex
poller_time
rra
rra_cf
settings
settings_graphs
settings_tree
snmp_query
snmp_query_graph
snmp_query_graph_rrd
snmp_query_graph_rrd_sv
snmp_query_graph_sv
user_auth
user_auth_perms
user_auth_realm
user_log
version
                                                        • +

48 rows in set (0.00 sec)

mysql> grant all on cacti.* to cactiuser@localhost identified by 'パスワード';
mysql> exit
Bye
# /usr/mysql/5.0/bin/mysqladmin -u root -p reload
# exit
/var/apache2/2.2/htdocs/cacti/include$ vi config.php
(cactiuserのパスワードを合わせる。)

後は、http://Apacheのアドレス/cacti/ を開いて Cactiの画面ならOK. (/installに飛んでるかも。)

初回は、ユーザ名 admin, パスワード admin でログインできます。

個人的には自分でコンパイルして使うのが好きなんですが、自分のよく知らんものを動かすには、この手のパッケージシステムは便利ですね。

さて、次回はテンプレートとかいろいろやるぞ。。。