インストール手順 (Linux RHEL6系)

RedHat Enterprise Linux 6 系でのインストール手順をご説明します。

概要

Boltz パッケージについて

Boltz パッケージは、送信エンジン BoltzEngine と、 BoltzEngine を利用したリファレンス実装 BoltzMessenger の2つが含まれます。
BoltzEngine 単体ではメッセージ配信しか行いませんので、メッセージの内容やデバイスの管理はアプリごとに作成する必要があります。

BoltzMessengerBoltzEngine を使ったサービスのリファレンス実装です。BoltzMessenger には、管理画面、iOS アプリ、Android アプリ、API が含まれます。
BoltzMessenger のソースコードはお渡ししますので、そのままでも使っていただけますし、カスタマイズしていただいても構いません。(カスタマイズされた部分はサポート対象外となります)

このドキュメントについて

この文書では、Linux 版の BoltzMessenger を動作させるまでの手順を解説します。
インストールする RPM パッケージは6つあります。

パッケージ 通称 役割
boltz-engine-(バージョン).el6.x86_64.rpm BoltzEngine BoltzEngine 本体です。
boltz-messenger-gateway-(バージョン).el6.x86_64.rpm BoltzMessenger Gateway BoltzMessenger のAPIサービスです。
boltz-messenger-admin-(バージョン).el6.noarch.rpm BoltzMessenger Admin BoltzMessenger の管理サイトです。
boltz-messenger-web-(バージョン).el6.noarch.rpm BoltzMessenger Web BoltzMessenger のフロントエンドAPI・ウェブアプリケーションです。
boltz-messenger-selinux-(バージョン).el6.noarch.rpm BoltzMessenger Gateway SELinuxポリシー SELinux環境下で BoltzMessenger を使用する場合にインストールします。
boltz-tools-(バージョン).el6.x86_64.rpm BoltzEngine Tools CSVやHTTP APIなどよくある使い方をサポートしたコマンド集です。

上記のパッケージは、すべて1台のサーバに同居することも可能ですし、すべて別のサーバにインストールしても構いません。
このドキュメントでは、 BoltzMessenger を1台のサーバにインストールを行い、分散させる場合の設定項目を補足として記載します。
BoltzEngine Tools については『BoltzEngine Toolsマニュアル』を参照ください。

ドキュメントの表記

本ドキュメントでは、お客様に実施していただくコマンドをプロンプト付きで表記します。

// 一般ユーザ権限でコマンド実行する場合
$ command

// スーパーユーザ権限でコマンドを実行する場合(sudoでも可)
# command

また、各自の環境により読み替えが必要な場所は (xxx) と表記します。

boltz-engine-(バージョン).el6.x86_64.rpm

システム条件

BoltzMessenger をインストールするには、以下の条件を満たしている必要があります。

  • RedHat Enterprise Linux 7系 Linux(CentOS 7等) または RedHat Enteprise Linux 6系(CentOS 6等)
  • 100Mbps 以上のネットワーク(インターネットに対して高速な接続ができるネットワークを推奨します)
  • (iOSへHTTP/2でプッシュを送信する場合) api.push.apple.com の 443 ポートに対して通信可能であること
  • (iOSへバイナリインターフェイスでプッシュを送信する場合) gateway.push.apple.com の 2195 ポートに対して通信可能であること
  • (iOSへバイナリインターフェイスでプッシュを送信する場合) feedback.push.apple.com の 2196 ポートに対して通信可能であること
  • (Androidへプッシュを送信する場合) fcm.googleapis.com の 443 ポートに対して通信可能であること
  • (FireOSへプッシュを送信する場合) api.amazon.com の 443 ポートに対して通信可能であること
  • アプリからアクセスするためのポートを解放可能であること(デフォルトでは TCP/13070)
  • 管理画面へアクセスするためのポートを解放可能であること(TCP/80 または TCP/443)

推奨バージョン

BoltzMessengerが依存するミドルウェアは下記のバージョンを推奨しますが、BoltzMessenger Web を除いて、ディストリビューション付属のバージョンでも動作します。

  • Apache 2.4
  • PHP 5.6
  • MySQL 5.6

必須パッケージ

各パッケージをインストールするために必要な依存関係は以下の通りです。

BoltzEngine に必要なパッケージ

  • なし

BoltzMessenger Gateway に必要なパッケージ

  • rsyslog

BoltzMessenger Admin に必要なパッケージ

  • httpd
  • php
  • php-mysql
  • php-mbstring
  • php-mcrypt

BoltzMessenger Web に必要なパッケージ

標準リポジトリ外から PHP 5.6 を入手する必要があります。Software Collections(SCL) から入手する方法を以下で紹介しております。

  • httpd
  • php
  • php-mysql
  • php-mbstring
  • php-mcrypt
  • php-intl

BoltzMessenger policy module に必要なパッケージ

  • policycoreutils
  • libselinux-utils

依存するサービス

BoltzMessenger をご利用になる場合、サーバ内または外部にMySQLサービスをご用意ください。

MySQLサービスをインストールされる場合は以下のコマンドで行えます。

# yum install mysql-server
# service mysqld start

ファイル構造

BoltzEngineBoltzMessenger が利用するディレクトリは以下の通りです。

パス 用途
/usr/sbin/ バイナリを格納する
/usr/share/boltz-messenger-admin/ 管理画面用プログラムを格納する
/usr/share/boltz-messenger-web/ フロントエンドAPI・ウェブアプリケーション用プログラムを格納する
/etc/init/ Upstartサービスファイルを格納する
/etc/boltz-messenger/ ユーザが変更するべき設定ファイルを格納する

インストール

BoltzEngine のインストール

BoltzEngine のインストールを行います。

# rpm -ivh boltz-engine-(バージョン).el6.x86_64.rpm

プロダクトキーの設定

製品版・体験版のBoltzEngineをお使いの場合、プロダクトキーファイルを設定する必要があります。このファイルはご契約者様専用サイトでダウンロードするか、体験版お渡し時にフェンリルの担当より一緒にお渡しします。このファイルを任意の場所に設置していただき (例えば、/etc/sysconfig/boltz/license等)、/etc/init/boltz-master.override ファイルを作成して記載します。

1env license='/etc/sysconfig/boltz/license'

プロダクトキーファイルがない場合でもBoltzEngineは起動しますが、性能に大幅な制限がかかります。

BoltzEngineの起動

インストールを行うと、upstart 管理下のサービスが3つ実行可能になります。

サービス 役割
boltz-auth-server boltz-slaveで使用する認証情報を管理するサービス
boltz-slave 実際に Apple(APNs) や Google(FCM) などに対して通知リクエストを送信するサービス
boltz-master 配信メッセージを分散して、boltz-slave を呼び出すサービス

この2つのサービスは別のサーバで実行しても問題ありませんが、ここでは1台で両方実行します。

// 設定を読み込む
# initctl reload-configuration

// サービスを実行する
# initctl start boltz-auth-server
# initctl start boltz-slave
# initctl start boltz-master

boltz-auth-server の設定変更

boltz-slave の設定を変更するには、/etc/init/boltz-auth-server.override ファイルを作成し、変更したい値だけ記述します。

設定項目 意味 デフォルト
listen_addr boltz-auth-servder が待ち受けるアドレスとポート番号。
boltz-slaveからリクエストを受け付ける。
:13008

boltz-slave の設定変更

boltz-slave の設定を変更するには、/etc/init/boltz-slave.override ファイルを作成し、変更したい値だけ記述します。

設定項目 意味 デフォルト
listen_addr boltz-slave が待ち受けるアドレスとポート番号。
boltz-masterからリクエストを受け付ける。
:13007
auth_addr boltz-slave が使用する boltz-auth-server の接続先 localhost:13008
max_agents boltz-slave が同時に処理できるboltz-masterからのリクエスト数 30
crash_dump クラッシュログの出力先。 /var/log/boltz-slave.crash
log_output サービスログの出力先。 file:///var/log/boltz-slave.log

listen_addr を変更したい場合は、以下のようになります。

env listen_addr=:13003

ログ出力先は以下の形式となっており、利用可能パラメータは(scheme)により変わります。

(scheme)://(host)/(path)?(facility=x)&(tag=x)
scheme 意味 有効パラメータ
file ローカルファイルに出力する (path)
net ローカルのsyslogファイル(/dev/log等)に転送する (facility), (tag)
tcp IPv4またはIPv6のどちらかでsyslogに転送する (host), (facility), (tag)
tcp4 IPv4でsyslogに転送する (host), (facility), (tag)
tcp6 IPv6でsyslogに転送する (host), (facility), (tag)

(facility)は、“sys”, “app”, “service”, “security"の4種類です。
それぞれ、syslogのkern, user, daemon, authprivに対応します。
(tag)はなんでも構いません。

boltz-master の設定変更

boltz-master の設定を変更するには、/etc/init/boltz-master.override ファイルを作成し、変更したい値だけ記述します。

設定項目 意味 デフォルト
listen_addr boltz-master が待ち受けるアドレスとポート番号。
BoltzMessenger Gateway からリクエストを受け付ける。
:13010
grpc_listen_addr boltz-masterが待ち受けるgRPC用アドレスとポート番号。 :13009
slaves boltz-master が利用する boltz-slave のリスト。カンマ区切りで複数設定可能。 localhost:13007
license プロダクトキーファイル(ライセンスファイル)の設置場所。 (設定なし)
crash_dump クラッシュログの出力先。 /var/log/boltz-master.crash
log_output サービスログの出力先。 file:///var/log/boltz-master.log

log_outputについては、boltz-slaveの設定変更を参照ください。

boltz-slave を分散する

boltz-master は複数の boltz-slave を束ねることができます。
host1 と host2 の 2 台を使って構成する場合、host1 に master と slave 及び auth-server を、host2 には slave だけを実行させるように構成します。

host1:
# rpm -ivh boltz-engine-(バージョン).el6.x86_64.rpm
# initctl reload-configuration
# initctl start boltz-auth-server
# initctl start boltz-slave
# initctl start boltz-master

host2:
# rpm -ivh boltz-engine-(バージョン).el6.x86_64.rpm
# initctl reload-configuration
# initctl start boltz-slave

host1 で稼働する boltz-master.override ファイルは以下のようになります。

env slaves=host1:13007,host2:13007

host2 で稼働する boltz-slave.override ファイルは以下のようになります。

env auth_addr=host1:13008

BoltzMessenger Gateway は host1:13010 へアクセスするように設定すると、boltz-master が両方の slave を使って送信を分散させます。

同一のAPNs HTTP/2認証キーを用いて同一のIPアドレスからインターネットに接続するスレーブは、同一のauth-serverを参照するように設定する必要があります。

BoltzMessenger Gateway のインストール

依存関係の解決

BoltzMessenger Gateway は他のパッケージに依存しています。
rsyslog が無い場合はインストールしてください。

# yum install rsyslog

BoltzMessenger Gateway パッケージのインストール

依存パッケージを解決できたら、BoltzMessenger Gateway パッケージをインストールします。

# rpm -ivh boltz-messenger-gateway-(バージョン).el6.x86_64.rpm

BoltzMessenger Gateway パッケージをインストールすると、/etc/boltz-messenger/config.yml に設定ファイルが配置されます。BoltzMessenger の各コンポーネントを別のサーバーへ設置する場合、BoltzMessenger Gateway をインストールしないサーバーには手動でこのファイルを作成してください。

次に、DB のテーブル作成など、初期設定を書き込みます。
boltz-messenger-init は BoltzMessenger を動作させるためのテーブル初期化を行い、設定サンプルを出力するコマンドです。
u オプションは DB 接続ユーザ名、p はパスワード、h はホスト名を指定します。

// データベースやテーブルを作成するため、権限を持ったユーザで行うこと
# boltz-messenger-init -u root -p password -h host

boltz-messenger-init コマンドが正常に終わったら、最後に config.yml のサンプルが出力されます。
以下2項目を後の設定で使いますので、控えておいてください。

  • admin
    • salt
    • cipherSeed
  • web
    • salt

最初のインストール時には、出力をそのまま設定ファイルに書き込んでも問題ありません。

// 上書きするため初回のみのご利用をお勧めします
# boltz-messenger-init -u root -p password -h host >/etc/boltz-messenger/config.yml

BoltzMessenger 用ユーザを作成

権限を絞り込んだ DB 接続ユーザ boltz を利用したい場合、以下のように作成します。

$ mysql -u root -p
Enter password:
mysql> grant all privileges on boltz.* to boltz@localhost identified by 'passpass'; // passpassは実際のパスワードで置き換えてください

作成したユーザとパスワードを config.yml に反映します。

// 設定ファイルの以下を変更する
// db:
//  user: user
//  password: passpass
# vi /etc/boltz-messenger/config.yml

/etc/boltz-messenger/config.yml の確認

config.yml は BoltzMessenger で共通して読み込む設定ファイルです。
以下のような構造になっています。

engine:
  address: localhost:13010
apns:
  key: /etc/boltz-messenger/key.pem
  cert: /etc/boltz-messenger/cert.pem
  gateway: gateway.push.apple.com:2195
  feedback: feedback.push.apple.com:2196
  skipVerify: false
fcm:
  key: xxxxxxxxxxxxxxxx
  url: https://fcm.googleapis.com/fcm/send
  skipVerify: false
adm:
  tokenUrl: https://api.amazon.com/auth/o2/token
  originUrl: https://api.amazon.com
  clientId: xxx
  clientSecret: xxx
  skipVerify: false
db:
  user: user
  password: passpass
  address: localhost:3306
  name: boltz
admin:
  salt: xbD6LBDOcHTDWbxr8DTakhc3d1mQjqk8owcVQQcC
  cipherSeed: 4531462924257914690772224897
  tempDir: /var/tmp/boltz-messenger
  displayTimezone: Asia/Tokyo
web:
  salt: otPTH7VytAu5FOa1JYUhcTXuCP6zrxcFplPqHwwf
  tempDir: /var/tmp/boltz-messenger-web
  displayTimezone: Asia/Tokyo

それぞれの設定における意味を次にまとめます。

親キー キー 意味
engine address boltz-master サービスのリクエスト先アドレス。省略時はlocalhost:13010が設定されます。
engine protocol boltz-master サービスのプロトコル。省略時は net/rpc、grpc の場合は gRPC を使います。
engine secure boltz-master サービスとのgRPC通信にTLSを適用する場合は true を指定してください。※1
gateway mode boltz-messenger-gateway の動作モード(front/back/both のいずれか) デフォルトは back ※2
apns key APNs 接続用の秘密鍵ファイルパス。(バイナリインターフェイス場合。パスワードなしのpemファイル)
apns cert APNs 接続用の証明書ファイルパス。(バイナリインターフェイス場合)
apns privateKey APNs 接続用の秘密鍵ファイルパス。(HTTP/2の場合。p8ファイル)
apns issuer APNs Issuer(HTTP/2の場合。Apple Developer ProgramのTeam ID)
apns keyId APNs キーID(HTTP/2の場合。p8ファイル作成時に同時に発行)
apns topic APNs トピック(HTTP/2の場合。アプリのBundle Identifier)
apns gateway APNs リクエストを送信するアドレス。 ※3
apns feedback APNs フィードバックを受信するアドレス。(バイナリインターフェイスの場合)
apns timeout APNs がメッセージを保持する有効期限(分、指定のない場合3日間)
apns skipVerify APNs 接続時にサーバ証明書を検証するかどうか。通常は false (デフォルト)にしてください。
fcm key FCM 接続時のサーバキー。
fcm senderId FCM リクエストのSender ID。XMPP プロトコルを使う場合は必須です。
fcm serviceAccount FCM サービスアカウントのファイルパス
fcm url FCM リクエストを送信する URL。
fcm timeout FCM がメッセージを保持する有効期限(分、指定のない場合3日間)
fcm skipVerify FCM 接続時にサーバ証明書を検証するかどうか。通常は false (デフォルト)にしてください。
adm tokenUrl ADM がトークンを発行するための URL。
adm originUrl ADM リクエストを送信する URL のオリジン。/以降は含めてはいけない。
adm clientId ADM トークンを取得するための Client ID。
adm clientSecret ADM トークンを取得するための Client シークレット。
adm skipVerify ADM 接続時にサーバ証明書を検証するかどうか。通常は false (デフォルト)にしてください。
webpush privateKey BASE64URL エンコードされた VAPID 用の秘密鍵(パディングなし)
webpush publicKey BASE64URL エンコードされた VAPID 用の公開鍵(パディングなし)
webpush subject 送信者の連絡先メールアドレスまたはURL(mailto: または https:)
webpush timeout WebPush でメッセージを保持する有効期限(分、指定のない場合3日間)
webpush skipVerify WebPush 接続時にサーバ証明書を検証するかどうか。通常は false (デフォルト)にしてください。
db user DB ログインユーザ。
db password DB ログインユーザのパスワード。
db address DB ホスト名とポート番号を:で区切ったもの(host:3306)。
db name データベース名。
admin salt boltz-messenger-init コマンドで生成したランダム値。
admin cipherSeed boltz-messenger-init コマンドで生成したランダム値。
admin tempDir 実行時キャッシュ等を保存するディレクトリ。省略可能。
admin triggerUrl boltz-messenger-gateway が待ち受けるURL。
admin displayTimezone 管理画面に表示される時刻のタイムゾーン。
admin apnsBadge iOS 端末にバッジを付けるかどうか(trueを指定すると未読1のバッジが付く)
admin defaultUseReserve 新規送信画面の予約配信にチェックを入れるかどうか (trueを指定するとデフォルトでチェックが入ります)
admin defaultUseBandwidth 新規送信画面の速度制限にチェックを入れるかどうか (trueを指定するとデフォルトでチェックが入ります)
admin defaultBandwidth 新規送信画面の配信速度制御に指定するデフォルト値を設定。
web salt boltz-messenger-init コマンドで生成したランダム値。
web tempDir 実行時キャッシュ等を保存するディレクトリ。省略可能。
web displayTimezone Web版 BoltzMessenger に表示される時刻のタイムゾーン。

※1:boltz-master自身には現在 TLS をサポートしていませんので、環境に応じてロードバランサ等をご用意ください。
※2:boltz-messenger-gatewayにはBoltzMessenger Webが用意しているアプリ向けのAPIが実装されており、frontもしくはbothを指定することで起動します。この機能は後方互換性のために残されています。新規の利用はお控えください。
※3:https://もしくはhttp://が指定されるとHTTP/2モードで送信します。

BoltzMessenger で APNs (iOS) へ通知を行う場合

iOS へPush通知を行う場合、config.yml の apns キーを設定します。

HTTP/2で送信する場合はprivateKeyに指定したパスにp8ファイルを設置し、issuer keyId topicを指定してください。

バイナリインターフェイスで送信する場合は、正しい証明書を apns.key, apns.cert で設定したパスへ配置してください。

BoltzMessenger で FCM (Android) へ通知を行う場合

FCM への通知は、fcm.urlの値がhttps://またはhttp://で開始する場合、HTTPプロトコルでの通知を行います。
上記以外の場合は、XMPPプロトコルを使った通知を行います。

HTTP v1 APIプロトコルを使われる場合は fcm.serviceAccount が必須です。 それ以外の場合は fcm.key と fcm.senderId を使いますが、Legacy HTTPプロトコルを使う場合は fcm.senderId を省略可能です。

※後方互換性確保のため fcm キーがない場合、gcm キーも探します。

BoltzMessenger で ADM (FireOS) へ通知を行う場合

ADMへPush通知を行う場合、config.yml の adm キーを設定し、clientId と clientSecret の2つを設定してください。
それぞれの値は Amazon Developer Console のアプリケーション情報から取得できます。

BoltzMessenger で WebPush (Chrome/Firefox) へ通知を行う場合

webpushに使用するVAPID用の鍵ペアはOpenSSLを使い、下記の要領で生成します。(boltz-messenger-init コマンドでも生成します)

$ openssl ecparam -name prime256v1 -genkey -noout -out vapid_private.pem
$ openssl ec -in vapid_private.pem -pubout -out vapid_public.pem
$ openssl ec -in vapid_private.pem -pubout -outform DER|tail -c 65|base64|tr -d '=' |tr '/+' '_-' > public_key.txt
$ openssl ec -in vapid_private.pem -outform DER|tail -c +8|head -c 32|base64|tr -d '=' |tr '/+' '_-' > private_key.txt

生成された public_key.txt および private_key.txt の内容を config.yml に記載してください。また、生成された 4 つのファイルは大切に保管してください。

BoltzMessenger で特定のプラットフォームにのみ配信する場合

apns、fcm、adm、webpush のキーを削除すると、削除したキーのサービスが無効になります。
BoltzMessenger のデータベースに端末が登録されても、 無効化したプラットフォームへの通知はされず、管理画面にも表示されません。

webpush キーを削除すると、BoltzMessenger Web のウェブアプリケーションは無効になりますが、フロントエンド API はこの影響を受けません。

BoltzMessenger で速度制限を行う場合

BoltzMessenger は engine.protocolをgrpcに設定した場合に、1 秒あたりの通知速度制限をサポートしています。
有効にするためには、engine.address と engine.protocol の値を変更します。

engine:
  # boltz-master.confのgrpc_listen_addr値を設定
  address: localhost:13009
  # boltz-masterとの通信にgRPCプロトコルを使う
  protocol: grpc
  # ロードバランサ等でHTTPSをサポートする場合はtrue
  secure: false

設定を反映するため、boltz-messenger-gateway を再起動してください。

# initctl stop boltz-messenger-gateway
# initctl start boltz-messenger-gateway

起動設定

// サービスを実行する
# initctl start boltz-messenger-gateway

boltz-messenger-gateway の設定変更

boltz-messenger-gateway の設定を変更するには、/etc/init/boltz-messenger-gateway.override を作成し、変更したい値だけ記述します。

設定項目 意味 デフォルト値
config config.yml のパス。 /etc/boltz-messenger/config.yml
listen_addr boltz-messenger-gateway が待ち受けるアドレスとポート番号。
BoltzMessenger Admin からのリクエストを受け付ける。
:13070

ポートの解放

必要なら BoltzMessenger Gateway がアプリへ提供する API のポートを開けます。

# iptables -A INPUT -p tcp --dport 13070 -j ACCEPT

SELinux環境下での BoltzMessenger の使用

SELinuxを使用しているサーバーに、BoltzMessenger AdminBoltzMessenrger Gateway を同居させる場合、SELinux へのポリシー追加が必要となります。

# rpm –ivh boltz-messenger-selinux-(バージョン).el6.noarch.rpm

また、ポート13070以外で動作させる場合は、合わせて以下のコマンドでSELinuxにポートを認識させてください。

# semanage port -a -t boltz_messenger_gateway_port_t -p tcp (ポート番号)

設定後、 BoltzMessenger Admin の画面が表示されない場合は以下の点をご確認ください。

  • config.yml のラベルが etc_t になっていない場合は、chcon コマンドで修正してください。
$ ls -lZ /etc/boltz-messenger/config.yml
# chcon -t etc_t /etc/boltz-messenger/config.yml
  • RHEL6/CentOS6系でSELinuxがDisabledの状態から、運用後にEnforcingに変えた場合

/var/tmp/boltz-messenger 以下のファイルのラベルを http_sys_rw_content_t に変更する必要があります。

# chcon -R -t http_sys_rw_content_t /var/tmp/boltz-messenger

Software Collection を用いた Apache HTTP Server と PHP のセットアップ

BoltzMessenger Web をご利用の場合、PHP 5.6 のインストールが必要となります。CentOS 標準の PHP はバージョンが古いため別途 PHP 5.6 を入手していただく必要があります。BoltzMessenger Admin は CentOS 標準の PHP 5.3 でも動作しますが、同様に PHP 5.6 をお使いになることを強く推奨します。

CentOS 向けの PHP 5.6 を提供しているリポジトリはいくつかありますが、CentOS 公式の Software Collections(SCL: https://www.softwarecollections.org/) を用いた BoltzMessenger Admin および Web の依存モジュールインストールの方法をご説明します。

SCL を利用するには、以下のコマンドでリポジトリ定義をインストールします。

# yum install centos-release-SCL

インストールが完了すると、yum のパッケージリポジトリとして SCL (centos-sclo-rh) が追加されます。

BoltzMessenger Admin および Web で必要となるパッケージをインストールします。

# yum install httpd24 httpd24-mod_ssl rh-php56 rh-php56-php rh-php56-mysql rh-php56-mbstring rh-php56-mcrypt rh-php56-intl

SCL の Apache HTTP Server を有効にし、起動します。なお、設定ファイルは /opt/rh/httpd24/root/etc/httpd にインストールされます。

# chkconfig httpd24-httpd on
# service httpd24-httpd start

BoltzMessenger Admin のインストール

依存関係の解決

BoltzMessenger Web は他のパッケージに依存しています。「Software Collection を用いた Apache HTTP Server と PHP のセットアップ」を参照して SCL から PHP 5.6 をセットアップしてください。

異なるリポジトリからインストールする場合は、「必須パッケージ」の項を確認の上、対応するパッケージをインストールしてください。

# yum install httpd php php-mysql php-mbstring php-mcrypt

BoltzMessenger Admin パッケージのインストール

依存パッケージを解決できたら、BoltzMessenger Admin パッケージをインストールします。

# rpm -ivh boltz-messenger-admin-(バージョン).el6.noarch.rpm

BoltzMessenger Admin パッケージは /etc/httpd/conf.d へ BoltzMessenger Admin 用の設定を追加します。SCL を使用している場合は、SCL の httpd24 の設定ディレクトリにコピーする必要があります。

# cp /etc/httpd/conf.d/boltz-messenger-admin.conf /opt/rh/httpd24/root/etc/httpd/conf.d/boltz-messenger-admin.conf

httpd に設定を読ませるため再起動を行います。

# service httpd restart (SCL不使用の場合)
# service httpd24-httpd restart (SCLの場合)

BoltzMessenger Admin パッケージをインストールしたサーバの URL にアクセスすれば管理画面が表示されます。
(localhost は適切に読み替えてください)

  • http://localhost/boltz-messenger/

firewall ポート解放(参考)

BoltzMessenger 管理サイトへアクセスする iptables のコマンドを参考程度に記載します。
環境にあわせて修正した上でお使いください。

# iptables -A INPUT -p tcp --dport 80 -j ACCEPT

BoltzMessenger Web のインストール

依存関係の解決

BoltzMessenger Web は他のパッケージに依存しています。「Software Collection を用いた Apache HTTP Server と PHP のセットアップ」を参照して SCL から PHP 5.6 をセットアップしてください。

異なるリポジトリからインストールする場合は、「必須パッケージ」の項を確認の上、対応するパッケージをインストールしてください。

# yum install httpd php php-mysql php-mbstring php-mcrypt php-intl

BoltzMessenger Web パッケージのインストール

依存パッケージを解決できたら、BoltzMessenger Web パッケージをインストールします。

# rpm -ivh boltz-messenger-web-(バージョン).el6.noarch.rpm

BoltzMessenger Web パッケージは /etc/httpd/conf.d へ BoltzMessenger Web 用の設定を追加します。SCL を使用している場合は、SCL の httpd24 の設定ディレクトリにコピーする必要があります。

# cp /etc/httpd/conf.d/boltz-messenger-web.conf /opt/rh/httpd24/root/etc/httpd/conf.d/boltz-messenger-web.conf

httpd に設定を読ませるため再起動を行います。

# service httpd restart (SCL不使用の場合)
# service httpd24-httpd restart (SCLの場合)

ウェブプッシュ機能を使用するためには

ウェブプッシュ機能を使用するためには追加で以下の設定が必要です。

  • /etc/boltz-messenger/config.yml に webpush の設定が必要です。「/etc/boltz-messenger/config.yml の確認」に記載のある、VAPID の公開鍵・秘密鍵を設定してください。
  • https で BoltzMessenger Web にアクセスできるように設定する必要があります。httpd やリバースプロキシの設定などで https でアクセスできるように構成してください。

上記の設定を加えた上で、BoltzMessenger Web パッケージをインストールしたサーバの URL にアクセスすれば BoltzMessenger フロントエンドウェブアプリケーションが表示されます。
(localhost は適切に読み替えてください)

  • https://localhost/bm/

firewall ポート解放(参考)

BoltzMessenger フロントエンドウェブアプリケーションへアクセスする iptables のコマンドを参考程度に記載します。
環境にあわせて修正した上でお使いください。

# iptables -A INPUT -p tcp --dport 80 -j ACCEPT

アンインストール

BoltzEngineのアンインストール

# initctl stop boltz-master
# initctl stop boltz-slave
# rpm -e boltz-engine-(お客様名)

BoltzMessenger Gatewayのアンインストール

# initctl stop boltz-messenger-gateway
# rpm -e boltz-messenger-gateway
# rm /etc/boltz-messenger/config.yml.rpmsave

BoltzMessenger Adminのアンインストール

# rpm -e boltz-messenger-admin

BoltzMessenger Webのアンインストール

# rpm -e boltz-messenger-web

ご不明な点はありませんか?

機能の詳細、導入のご検討、お見積もり依頼などは、お気軽にお問い合わせください。
担当者から追ってご連絡いたします。

お問い合わせはこちら