-
Notifications
You must be signed in to change notification settings - Fork 7
/
INSTALL_centos.txt
206 lines (163 loc) · 6.88 KB
/
INSTALL_centos.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
【はじめに】
下記環境にて動作確認を実施しました。
CentOS5.5
apache 2.2.3
PHP 5.1.6
MySQL 5.0
【導入手順】
1. WebHiveの実行に必要なパッケージを導入する。
下記パッケージが未導入の場合はインストールして下さい。
【phpパッケージ】
php-5.1.6-27.el5_5.3
php-cli-5.1.6-27.el5_5.3
php-devel-5.1.6-27.el5_5.3
php-mbstring-5.1.6-27.el5_5.3
php-pdo-5.1.6-27.el5_5.3
php-common-5.1.6-27.el5_5.3
php-gd-5.1.6-27.el5_5.3
php-pear-1.4.9-6.el5
php-ldap-5.1.6-27.el5_5.3 (*)LDAPを利用する場合に必要
【apacheパッケージ】
httpd-2.2.3-43.el5.centos
【MySQLパッケージ(WebHiveリポジトリにMySQLを利用する場合)】
php-mysql-5.1.6-27.el5_5.3
mysql-server-5.0.77-4.el5_4.2
mysql-5.0.77-4.el5_4.2
【PostgreSQLパッケージ(WebHiveリポジトリにPostgreSQLを利用する場合)】
php-pgsql-5.1.6-27.el5_5.3
postgresql-8.1.23-1.el5_6.1
postgresql-server-8.1.23-1.el5_6.1
postgresql-libs-8.1.23-1.el5_6.1
1.1 パッケージ導入方法(例)
# yum install yum install php php-pear php-mbstring
# yum install yum install php-mysql
# yum install yum install postgresql-libs postgresql postgresql-server php-pgsql
# yum install yum install php-ldap
1.2 パッケージ導入確認方法(例)
# rpm -qa <パッケージ名>
2. WebHiveリポジトリの設定を行う。
2.1. WebHiveリポジトリにMySQLを利用する場合
(1)MySQLの起動と自動起動設定
# /etc/init.d/mysqld start
# chkconfig mysqld on
# chkconfig --list mysqld
(2)データベース作成とユーザ登録/権限付与
# mysql -u root -p
mysql> create database <DB名>;
mysql> GRANT ALL PRIVILEGES ON <DB名>.* to <ユーザ名>@localhost identified by '<パスワード>';
mysql> flush privileges;
(3)作成したDBに接続できるのを確認する。
# mysql -u <ユーザ名> -p<パスワード> <DB名>
(4)作成したDBでcreate_mysql.sqlを実行する。
mysql> source create_mysql.sql
2.2. WebHiveリポジトリにPostgreSQLを利用する場合
(1)PostgreSQLのデータベースクラスタ初期化
# su - postgres
# initdb -D /var/lib/pgsql/data --encoding=UTF8 --no-locale
(2)PostgreSQLの起動と自動起動設定
# /etc/init.d/postgresql start
# chkconfig postgresql on
# chkconfig --list postgresql
(3)ユーザ作成
# createuser -S -R -D -P <ユーザ名>
-S:スーパーユーザーになれません。
-R:新しいロールの作成を禁止します。
-D:データーベースの作成を禁止します。
-P:パスワードのプロンプトを表示します。
# psql -c "select usename from pg_user"
(4)DB作成
# createdb -O <ユーザ名> <DB名>
# psql -l
(5)接続設定
/var/lib/pgsql/data/pg_hba.conf
前)host all all 127.0.0.1/32 trust
後)host <DB名> <ユーザ名> 127.0.0.1/32 md5
# /etc/init.d/postgresql restart
(6)作成したDBに接続できるのを確認する。
# psql -W -h localhost -p 5432 -U <ユーザ名> <DB名>
xxx=> select current_schema(); ・・・カレントスキーマが正しいのを確認
(7)テーブルとシーケンスを作成する。
xxx=> \i create_postgresql.sql
3. Apacheの設定を変更する。
# vi httpd.conf
AllowOverride All <==.htaccessを読み込むように設定
# /etc/init.d/httpd restart
4. hive serverの動作を確認する。
# php /var/www/WebHive/app/modules/hivetest.php
5. WebHiveを導入する。
5.1. WebHiveパッケージダウンロード
https://github.com/recruitcojp/WebHive/
5.2. WebHiveインストール
# cd /var/www/html
# tar zxvf recruitcojp-WebHive-*******.tar.gz
# mv recruitcojp-WebHive-******* WebHive
# chown -R apache:apache WebHive
5.3. WebHiveのデータベース接続設定
環境に合わせてドライバ、DB名、ユーザ名、パスワードを変更する。
(1)WebHiveリポジトリがMySQLの場合
# cd /var/www/html/WebHive/app/config
# cp database.php.mysql database.php
# vi database.php
var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'ユーザ名',
'password' => 'パスワード',
'database' => 'DB名',
'prefix' => '',
);
(2)WebHiveリポジトリがPostgreSQLの場合
# cd /var/www/html/WebHive/app/config
# cp database.php.postgresql database.php
# vi database.php
var $default = array(
'connect' => 'pg_connect',
'driver' => 'postgres',
'persistent' => false,
'host' => 'localhost',
'port' => 'ポート番号',
'login' => 'ユーザ名',
'password' => 'パスワード',
'database' => 'DB名',
'encoding'=>'utf-8',
'prefix' => '',
);
5.4. WebHiveの設定を行う。
# cd /var/www/html/WebHive/app/config
# vi app.php
5.5. ディレクトリの設定を行う。
# mkdir /var/www/html/WebHive/request
# mkdir /var/www/html/WebHive/result
# mkdir /var/www/html/WebHive/audit
# chown -R apache:apache /var/www/html/WebHive
6. ブラウザよりユーザ登録を行う。
http://xxxxxxxxxx/WebHive/users/add
Authority:1=全権限あり、2=参照専用ユーザ、3=登録HiveQLのみ実行可能
hive_host:hive serverの接続先サーバを指定
hive_port:hive serverの接続先ポートを指定
ユーザ登録後に「http://xxxxxxxxxx/WebHive」へアクセスして登録したユーザでログインできるのを確認する。
※初回ユーザ登録後は管理者以外でユーザ管理画面を表示できなようにapp.confのUSER_ADMINパラメータを1にして下さい。
7. HiveQLリクエストファイル、処理結果ファイルのパージ設定を行う。
# crontab -e
3 * * * * /var/www/html/WebHive/app/modules/log_delete.sh > /var/www/html/WebHive/app/tmp/logs/log_delete.out 2>&1
※毎時3分にログパージスクリプトを起動する。
8. cakePHPログ/アプリログのローテーション設定を行う。
# vi /etc/logrotate.d/cakephp
/var/www/WebHive/app/tmp/logs/*.log /var/www/html/WebHive/audit/*.log {
daily
rotate 7
missingok
notifempty
}
9. ファイルアップロード制限を設定する。
# vi /etc/php.ini
memory_limit 128M
post_max_size 8M
upload_max_filesize 5M
【注意事項】
・ファイルアップロードでエラーとなる場合はapacheやphpのサイズ制限を見直して下さい。
・HiveSQLの実行でメモリ不足のエラーが発生した場合はPHPパラメータの見直しを行ってください。
・ストリーミング圧縮でメモリ不足エラーとなる場合は、zip圧縮スクリプトをご利用下さい。
ストリーミンング圧縮:/var/www/html/WebHive/app/modules/hive_request.php
zip圧縮:/var/www/html/WebHive/app/modules/hive_request_no.php