SMF SDK のアップデート¶
共通アップデート手順¶
作業順序¶
ここでは各バージョンアップでの共通手順を説明します。 まず初めに後半の各バージョンごとのアップデート手順を参照した後、ここでの手順を進めてください。
ARMS-Proxy および Heartbeat サーバの停止
RS の停止
データベースのアップデート
RS のアップデートと起動
ARMS-Proxy および Heartbeat サーバのアップデートと起動
ARMS-Proxy サーバのアップデート¶
- cron の停止(SMF SDK Ver3.1以前の場合)
cron の設定ファイルをすべてコメントアウトし、スケジュールを停止します。
# vi /etc/cron.d/arms-proxy #*/5 * * * * root /var/service/smf/bin/proxy-runagent.py #0 4 * * * root /var/service/smf/bin/proxy-gc.py
- httpdの停止(SMF SDK Ver1.3以前の場合)
ARMS-Proxy が収容されている httpd を停止します。
# /sbin/service httpd stop
- arms-proxyの停止(SMF SDK Ver2.0以降の場合)
ARMS-Proxy サーバを停止します。
# /sbin/service arms-proxy stop
パッケージのアップデート
# rpm -Uvh arms-proxy-*.i386.rpm
httpdの開始(SMF SDK Ver1.3以前の場合)
# /sbin/service httpd start
arms-proxyの開始(SMF SDK Ver2.0以降の場合)
# /sbin/service arms-proxy start
- cronの開始(SMF SDK Ver2.5以前の場合)
コメントアウトした cron のスケジュールを戻します。
# vi /etc/cron.d/arms-proxy */5 * * * * root /var/service/smf/bin/proxy-runagent.py 0 4 * * * root /var/service/smf/bin/proxy-gc.py
Heartbeat サーバのアップデート¶
- cron の停止
以下の行をコメントアウトして cron のスケジュールを停止します。
# vi /etc/cron.d/hbserver #*/5 * * * * heartbeat /var/service/smf/bin/mreport.py
hbserver の停止
# /sbin/service hbserver stop
パッケージのアップデート
# rpm -Uvh heartbeat-server-*.i386.rpm
hbserver の開始
# /sbin/service hbserver start
- cron の開始
コメントアウトした cron のスケジュールを戻します。
# vi /etc/cron.d/hbserver */5 * * * * heartbeat /var/service/smf/bin/mreport.py
RS のアップデート¶
アプリケーションで利用している rs-api.jar を rs-api-*.zip 内に含まれるものと差し替えてください。 必要に応じて Apache Tomcat の再起動や Web コンテキストの再読込等をしてください。
デモ環境アップデート手順¶
ここではデモ環境ガイドに基づいて構築した環境のアップデート手順について解説します。 デモ環境の RS 実装に当たる rs-cli.war には SDK に含まれる rs-api.jar と同一のものが含まれています。
作業順序¶
作業順序 の RS アップデートに該当する作業として行ってください。 その他のパッケージアップデートは各バージョンごとの項目を参照してください。具体的な手順は以下のようになります。
ARMS-Proxy および Heartbeat サーバの停止
RS の停止
データベースのアップデート
rs-cli.war のアップデート
ARMS-Proxy および Heartbeat サーバのアップデートと起動
rs-cli.war のアップデート¶
最新のデモ RS へ入れ替えるには以下の手順で行います。
# /sbin/service tomcat stop
# cd <package directory>/demo
# cp rs-cli.war /var/service/smf/web/webapps/rs-cli.war
# rm -rf /var/service/smf/web/tomcat/webapps/rs
# /sbin/service tomcat start
Ver1.0 → Ver1.1 へのアップデート¶
アップデート対象¶
- Proxy/arms-proxy-1.1-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-1.1-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-1.1.zip
RS のアップデート のアップデート手順に従います。
- データベーススキーマ
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
UPDATE config_container SET type = ’raw-startup’ WHERE type = ’raw-statup’;
Ver1.1 → Ver1.2 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-1.2-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-1.2-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-1.2.zip
RS のアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
UPDATE config_container SET type = ’raw-startup’ WHERE type = ’raw-statup’;
Ver1.2 → Ver1.3 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-1.3-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-1.3-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-1.3.zip
RS のアップデート のアップデート手順に従います。
- データベース
アップデートの必要はありません。
Ver1.3 → Ver2.0 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-2.0-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従い、ARMS-Proxy のアップ デート時に追加で以下のパッケージをインストールしてください。
/Proxy/python-smf-Twisted-8.1.0-*.i386.rpm
/Proxy/python-smf-zope-interface-3.3.0-*.i386.rpm
# rpm -ivh python-smf-Twisted-8.1.0-*.i386.rpm python-smf-zope-interface-3.3.0-*.i386.rpm
- /Heartbeat/heartbeat-server-2.0-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-2.0-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
ALTER TABLE service_adapter ADD COLUMN push_method int NOT NULL AFTER push_port;
ALTER TABLE service_adapter ADD COLUMN preferred_push_method int AFTER push_method;
ALTER TABLE service_adapter ADD COLUMN confirming_push_method int NOT NULL AFTER preferred_push_method;
ALTER TABLE service_adapter ADD COLUMN proxy_push_state1 int NOT NULL AFTER confirming_push_method;
ALTER TABLE service_adapter ADD COLUMN proxy_push_state2 int NOT NULL AFTER proxy_push_state1;
ALTER TABLE service_adapter ADD COLUMN proxy_push_state3 int NOT NULL AFTER proxy_push_state2;
ALTER TABLE service_adapter ADD COLUMN proxy_push_state4 int NOT NULL AFTER proxy_push_state3;
ALTER TABLE service_adapter ADD COLUMN proxy_push_state5 int NOT NULL AFTER proxy_push_state4;
ALTER TABLE event1 add result_code int NOT NULL AFTER subtype;
ALTER TABLE event2 add result_code int NOT NULL AFTER subtype;
ALTER TABLE event3 add result_code int NOT NULL AFTER subtype;
ALTER TABLE event4 add result_code int NOT NULL AFTER subtype;
ALTER TABLE server add proposal_order int NOT NULL AFTER cookie;
UPDATE service_adapter SET push_method = 1 WHERE config_state = 2;
Proxy の設定ファイルのアップデート¶
Proxy の XML-RPC エンドポイントのポート番号が 80 番から 8000 番 (デフォルト値) に変更されています。 Proxy の設定ファイル proxy.cfg の my-rpc-url に指定されている URL のポート番号を更新してください。
# vi /var/service/smf/etc/proxy.cfg
my-rpc-url: http://localhost:8000/arms/xmlrpc
Proxy のリクエスト処理結果保持ファイルの削除¶
Ver2.0 ではリクエストの処理結果を保持するファイルの形式が変更されており、Ver1.3 から引き継ぐことができません。 すべての既存のリクエスト結果を削除して下さい。
# rm /var/service/smf/var/proxy/op/*
Ver2.0 → Ver2.1 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-2.1-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-2.1-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-2.1-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
アップデートの必要はありません。
Ver2.1 → Ver2.2 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-2.2-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-2.2-*.i386.rpm
共通手順と異なり、従来のグラフ表示用データを削除する必要があります。 Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-2.2-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
アップデートの必要はありません。
Heartbeat サーバのアップデート¶
- cron の停止
以下の行をコメントアウトして cron のスケジュールを停止します。
# vi /etc/cron.d/hbserver #*/5 * * * * heartbeat /var/service/smf/bin/mreport.py
hbserver の停止
# /sbin/service hbserver stop
過去のグラフデータの削除
# rm -fr /var/service/smf/var/hb/info/*
パッケージのアップデート
# rpm -Uvh heartbeat-server-*.i386.rpm
hbserver の開始
# /sbin/service hbserver start
- cron の開始
コメントアウトした cron のスケジュールを戻します。
# vi /etc/cron.d/hbserver */5 * * * * heartbeat /var/service/smf/bin/mreport.py
Ver2.2 → Ver2.3 へのアップデート¶
アップデート対象¶
- /Proxy/python-smf-socket-*.i386.rpm
新規に導入する必要があります。以下の手順にしたがって RPM をインストールしてください。
# rpm -Uvh /Proxy/python-smf-socket-*.i386.rpm
なお、下記 /Proxy/arms-proxy-2.3-*.i386.rpm パッケージのアップデートを行う前にインストールしてください。
- /Proxy/arms-proxy-2.3-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-2.3-*.zip
RS のアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-2.3-*.i386.rpm
共通手順と異なり、up/down 検出に用いるデータを更新する必要があります。 Heartbeat サーバのアップデート のアップデート手順に従います。
- データベース
アップデートの必要はありません。
Proxy の設定ファイルのアップデート¶
SA の認証キーをキャッシュする機能がデフォルトで有効になりました。多数の SA が同時に Proxy にアクセスしてきた場合の性能が向上します。 Proxy の設定ファイル proxy.cfg の nopwcache 設定変数 を更新してください。
# vi /var/service/smf/etc/proxy.cfg
nopwcache: off
Heartbeat サーバのアップデート¶
up/down 監視に用いるデータのフォーマットが変更されました。既存のデータを新しいフォーマットに変換するため、 データ更新用のスクリプト (mreport_update.py) を実行してください。 また、設定 ファイルの MonitorReportInterval の値を 1 に設定してください。
- cron の停止
以下の行をコメントアウトして cron のスケジュールを停止します。
# vi /etc/cron.d/hbserver #*/5 * * * * heartbeat /var/service/smf/bin/mreport.py
hbserver の停止
# /sbin/service hbserver stop
パッケージのアップデート
# rpm -Uvh heartbeat-server-*.i386.rpm
- 設定ファイルの更新
hbserver.conf の MonitorReportInterval を 1 に設定します。
# vi /var/service/smf/etc/hbserver.conf MonitorReportInterval = 1
データの更新
# su heartbeat % /var/service/smf/bin/mreport_update.py % ls /var/service/smf/var/hb以下の 2 つのファイルがあることを確認します。
/var/service/smf/var/hb/prev: 更新されたデータファイル
/var/service/smf/var/hb/prev.old.<unixtime>: 更新前のデータファイルのバックアップ
hbserver の開始
# /sbin/service hbserver start
- cron の開始
コメントアウトした cron のスケジュールを戻します。
# vi /etc/cron.d/hbserver */5 * * * * heartbeat /var/service/smf/bin/mreport.py
Ver2.3 → Ver2.4 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-2.4-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。 Proxy アップデート上の注意 も参照してください。
- /Heartbeat/heartbeat-server-2.4-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-2.4-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
ALTER TABLE config ADD COLUMN is_binary BIT NOT NULL AFTER content;
ALTER TABLE module_package ADD COLUMN is_binary BIT NOT NULL AFTER is_public;
ALTER TABLE service_adapter ADD COLUMN protocol_version_major INTEGER NOT NULL AFTER dist_id_sacode;
ALTER TABLE service_adapter ADD COLUMN protocol_version_minor INTEGER NOT NULL AFTER protocol_version_major;
Proxy アップデート上の注意¶
ログをローテートするプログラム proxy-logrotate.py は廃止されました。ログは自動的にローテートされます。 このため cron の設定ファイルから proxy-logrotate.py の設定行が削除されていることにご注意ください。
参考: Ver2.4 における cron 設定ファイル (/etc/cron.d/arms-proxy)
#*/5 * * * * root /var/service/smf/bin/proxy-runagent.py
#0 4 * * * root /var/service/smf/bin/proxy-gc.py
Ver2.4 → Ver2.5 へのアップデート¶
Ver2.5 に特有のアップデート手順はありません。 SMF SDK のアップデート のアップデート手順に従います。
Ver2.5 → Ver3.1 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-2.5-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。 Proxy アップデート上の注意 も参照してください。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
CREATE TABLE group_config (id integer not null auto_increment, version_number integer not null, name varchar(255), user_type integer, original_user_type integer, content longblob not null, atime datetime, mtime datetime not null, implementation varchar(255) not null, smf_user_id integer, PRIMARY KEY (id), unique (user_type, smf_user_id)) type=InnoDB;
CREATE TABLE group_config_config_container (group_config_id integer not null, config_container_id integer not null, PRIMARY KEY (config_container_id, group_config_id)) type=InnoDB;
CREATE TABLE group_config_service_adapter (group_config_id integer not null, service_adapter_id integer not null, PRIMARY KEY (service_adapter_id, group_config_id)) type=InnoDB;
CREATE TABLE request_data1 (id integer not null auto_increment, version_number integer not null, request1_id integer, type integer not null, mod_id integer, content longblob not null, is_binary bit not null, result integer not null, PRIMARY KEY (id)) type=InnoDB;
CREATE TABLE request_data2 (id integer not null auto_increment, version_number integer not null, request2_id integer, type integer not null, mod_id integer, content longblob not null, is_binary bit not null, result integer not null, PRIMARY KEY (id)) type=InnoDB;
CREATE TABLE request_data3 (id integer not null auto_increment, version_number integer not null, request3_id integer, type integer not null, mod_id integer, content longblob not null, is_binary bit not null, result integer not null, PRIMARY KEY (id)) type=InnoDB;
CREATE TABLE request_data4 (id integer not null auto_increment, version_number integer not null, request4_id integer, type integer not null, mod_id integer, content longblob not null, is_binary bit not null, result integer not null, PRIMARY KEY (id)) type=InnoDB;
CREATE TABLE request_data5 (id integer not null auto_increment, version_number integer not null, request5_id integer, type integer not null, mod_id integer, content longblob not null, is_binary bit not null, result integer not null, PRIMARY KEY (id)) type=InnoDB;
CREATE TABLE request_data6 (id integer not null auto_increment, version_number integer not null, request6_id integer, type integer not null, mod_id integer, content longblob not null, is_binary bit not null, result integer not null, PRIMARY KEY (id)) type=InnoDB;
ALTER TABLE service_adapter ADD COLUMN serial varchar(255) unique AFTER code;
ALTER TABLE service_adapter ADD COLUMN port integer AFTER ip_address;
ALTER TABLE request1 ADD COLUMN result_storage integer not null AFTER result_code;
ALTER TABLE request2 ADD COLUMN result_storage integer not null AFTER result_code;
ALTER TABLE request3 ADD COLUMN result_storage integer not null AFTER result_code;
ALTER TABLE request4 ADD COLUMN result_storage integer not null AFTER result_code;
ALTER TABLE request5 ADD COLUMN result_storage integer not null AFTER result_code;
ALTER TABLE request6 ADD COLUMN result_storage integer not null AFTER result_code;
ALTER TABLE group_config ADD INDEX fk_groupconfig_smfuser (smf_user_id), ADD CONSTRAINT fk_groupconfig_smfuser FOREIGN KEY (smf_user_id) REFERENCES smf_user (id);
ALTER TABLE group_config_config_container ADD INDEX fk_configcontainer_groupconfig (group_config_id), ADD CONSTRAINT fk_configcontainer_groupconfig FOREIGN KEY (group_config_id) REFERENCES group_config (id);
ALTER TABLE group_config_config_container ADD INDEX fk_groupconfig_configcontainer (config_container_id), ADD CONSTRAINT fk_groupconfig_configcontainer FOREIGN KEY (config_container_id) REFERENCES config_container (id);
ALTER TABLE group_config_service_adapter ADD INDEX fk_serviceadapter_groupconfig (group_config_id), ADD CONSTRAINT fk_serviceadapter_groupconfig FOREIGN KEY (group_config_id) REFERENCES group_config (id);
ALTER TABLE group_config_service_adapter ADD INDEX fk_groupconfig_serviceadapter (service_adapter_id), ADD CONSTRAINT fk_groupconfig_serviceadapter FOREIGN KEY (service_adapter_id) REFERENCES service_adapter (id);
ALTER TABLE request_data1 ADD INDEX fk_requestdata1_request1 (request1_id), ADD CONSTRAINT fk_requestdata1_request1 FOREIGN KEY (request1_id) REFERENCES request1 (id);
ALTER TABLE request_data2 ADD INDEX fk_requestdata2_request2 (request2_id), ADD CONSTRAINT fk_requestdata2_request2 FOREIGN KEY (request2_id) REFERENCES request2 (id);
ALTER TABLE request_data3 ADD INDEX fk_requestdata3_request3 (request3_id), ADD CONSTRAINT fk_requestdata3_request3 FOREIGN KEY (request3_id) REFERENCES request3 (id);
ALTER TABLE request_data4 ADD INDEX fk_requestdata4_request4 (request4_id), ADD CONSTRAINT fk_requestdata4_request4 FOREIGN KEY (request4_id) REFERENCES request4 (id);
ALTER TABLE request_data5 ADD INDEX fk_requestdata5_request5 (request5_id), ADD CONSTRAINT fk_requestdata5_request5 FOREIGN KEY (request5_id) REFERENCES request5 (id);
ALTER TABLE request_data6 ADD INDEX fk_requestdata6_request6 (request6_id), ADD CONSTRAINT fk_requestdata6_request6 FOREIGN KEY (request6_id) REFERENCES request6 (id);
Proxy アップデート上の注意¶
ARMS-Proxy パッケージアップデート後も cron 設定ファイルはコメントアウトしたままにしておくことに注意してください。
オペレーションリクエストを取得するプログラム proxy-runagent.py と有効期限が過ぎたオペレーションリクエスト結果を削除する プログラム proxy-gc.py は廃止し、これらの機能を ARMS-Proxy が自発的に行うようになりました。
オペレーションリクエスト結果を RS に保存できるようになりました。必要に応じて Proxy 設定ファイルを変更してください。 但し、設定反映以前のオペレーションリクエスト結果は RS に保存されないことに注意してください。 また、RS に保存するよう指定した場合でもリクエスト結果はローカルストレージにもキャッシュされます。
参考: Ver3.1 で追加された Proxy 設定項目 (/var/service/smf/etc/proxy.cfg)
# オペレーションリクエスト取得の間隔。デフォルト値は 300
runagent-interval: 300
# 有効期限が過ぎたオペレーションリクエスト結果を削除する時刻。デフォルト値は 04:00
garbage-collect-at: 04:00
# オペレーションリクエスト結果の保存先。
# local: ローカルストレージに保存する (従来の動作)
# RS: RSに保存する
# デフォルト値は local。 push-result-save-to: RS
Ver3.1 → Ver3.2a へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-3.2-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-3.2-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従いますが、パッケージ更新時に syck も更新する必要があります。
# rpm -Uvh syck-0.55-1.i386.rpm
- /RS/rs-api-3.2-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
アップデートの必要はありません。
Ver3.2a → Ver4.0 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-4.0-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従いますが、パッケージ更新時に Twisted も更新する必要があります。
# rpm -Uvh python-smf-Twisted-11.0.0p1-0.i386.rpm
Proxy アップデート上の注意 も参照してください。
- /Heartbeat/heartbeat-server-4.0-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
CREATE TABLE smf_user_group (id INTEGER NOT NULL AUTO_INCREMENT, version_number INTEGER NOT NULL, code VARCHAR(255) NOT NULL UNIQUE, name VARCHAR(255), PRIMARY KEY (id)) TYPE=InnoDB;
ALTER TABLE smf_user ADD COLUMN smf_user_group_id INTEGER AFTER server_group_id;
ALTER TABLE smf_user ADD INDEX fk_user_usergroup (smf_user_group_id), ADD CONSTRAINT fk_user_usergroup FOREIGN KEY (smf_user_group_id) REFERENCES smf_user_group (id);
ALTER TABLE service_adapter ADD COLUMN description LONGTEXT AFTER protocol_version_minor;
ALTER TABLE service_adapter ADD COLUMN first_pulled DATETIME AFTER last_initial_trigger;
ALTER TABLE service_adapter MODIFY COLUMN dist_id_version INTEGER;
ALTER TABLE service_adapter MODIFY COLUMN dist_id_vendor INTEGER;
ALTER TABLE service_adapter MODIFY COLUMN dist_id_satype INTEGER;
ALTER TABLE service_adapter MODIFY COLUMN dist_id_sacode VARCHAR(255);
Proxy アップデート上の注意¶
設定ファイルの仕様を更新しました。設定項目名を新旧対応表にしたがって変更してください。 読み込み時に設定項目名を変換するため、Ver3.2a 以前の設定ファイルもそのまま利用することができます。
設定項目名の新旧対応表は以下の通りです。
新 |
旧 |
---|---|
myname |
セクション名 |
my-rpc-url |
MyRpcUrl |
rs-rpc-url |
RsRpcUrl1 |
rs-rpc-url2 |
RsRpcUrl2 |
rs-rpc-url3 |
RsRpcUrl3 |
rs-rpc-url4 |
RsRpcUrl4 |
rs-rpc-url5 |
RsRpcUrl5 |
rs-rpc-timeout |
RsRpcTimeout |
api-listen-address |
ApiListenAddress |
api-listen-port |
ApiListenPort |
arms-listen-address |
ArmsListenAddress |
arms-listen-port |
ArmsListenPort |
push-result-save-to |
PushResultSaveTo |
arms-https-maxconnections |
ArmsHttpsMaxconnections |
arms-https-tunnel-maxconnections |
ArmsHttpsTunnelMaxconnections |
arms-https-timeout |
ArmsHttpsTimeout |
arms-https-tunnel-timeout |
ArmsHttpsTunnelTimeout |
http-forward |
HttpForward |
http-forward-port |
HttpForwardPort |
http-forward-server |
HttpForwardServer |
http-forward-timeout |
HttpForwardTimeout |
agent-concurrency |
AgentConcurrency |
logfile |
LogFile |
msglogfile |
MsgLogFile |
twistdlogfile |
TwistdLogFile |
opdir |
OpDir |
oplifetime |
OpLifeTime |
pwcacheexpire |
PwCacheExpire |
nopwcache |
NoPwCache |
my-certificate |
MyCertificate |
my-private-key |
MyPrivateKey |
ca-certificate |
CaCertificate |
runagent-interval |
RunagentInterval |
garbage-collect-at |
GarbageCollectAt |
debug-api |
DebugApi |
debug-http |
DebugHttp |
debug-log |
DebugLog |
debug-shell |
DebugShell |
shell-listen-port |
ShellListenPort |
以下の設定項目は使用しなくなりました。
pwcachefile
pidfile
Ver4.0 → Ver4.1 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-4.1-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-4.1-*.zip
RS のアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-4.1-*.i386.rpm
共通手順と異なり、不具合修正のためグラフデータベースを更新する必要があります。 Heartbeat サーバのアップデート も参照してください。
- データベース
アップデートの必要はありません。
Heartbeat サーバのアップデート¶
不具合修正のためグラフデータベースを更新を行います。
- cron の停止
以下の行をコメントアウトして cron のスケジュールを停止します。
# vi /etc/cron.d/hbserver #*/5 * * * * heartbeat /var/service/smf/bin/mreport.py
hbserver の停止
# /sbin/service hbserver stop
パッケージのアップデート
# rpm -Uvh heartbeat-server-*.i386.rpm
- データベースの更新
グラフデータベースの更新を行います。
# cd /var/service/smf/var/hb/info/ # find . -name cpu_detail_usage*.rrd -exec rrdtool tune {} --data-source-rename nice:other \; # find . -name counter_*_traffic*.rrd -exec rm -rf {} \;
hbserver の開始
# /sbin/service hbserver start
- cron の開始
コメントアウトした cron のスケジュールを戻します。
# vi /etc/cron.d/hbserver */5 * * * * heartbeat /var/service/smf/bin/mreport.py
Ver4.1 → Ver4.2 へのアップデート¶
Ver4.2 に特有のアップデート手順はありません。 SMF SDK のアップデート のアップデート手順に従います。
Ver4.2 → Ver4.3 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-4.3-*.i386.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-4.3-*.i386.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
ALTER TABLE server DROP COLUMN cookie;
ALTER TABLE service_adapter ADD COLUMN mode varchar(255) AFTER type;
Ver4.3 → Ver5.0 へのアップデート¶
Ver5.0 に特有のアップデート手順はありません。 SMF SDK のアップデート のアップデート手順に従います。
Ver5.0 → Ver 5.1 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-5.1-*.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-5.1-*.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-5.1-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
Heartbeat サーバのアップデート¶
- cron の停止
以下の行をコメントアウトして cron のスケジュールを停止します。
# vi /etc/cron.d/hbserver #*/5 * * * * heartbeat /var/service/smf/bin/mreport.py
hbserver の停止
# /sbin/service hbserver stop
パッケージのアップデート
# rpm -Uvh heartbeat-server-*.rpm
- コンフィグの変更
AcceptPreviousTime 推奨値が変更になったためコンフィグを変更します。 推奨値は InformationReportInterval * 60 * 2 になります。
# vi /var/service/smf/etc/hbserver.conf (InformationReportInterval の値が 30 の時) AcceptPreviousTime = 3600
hbserver の開始
# /sbin/service hbserver start
- cron の開始
コメントアウトした cron のスケジュールを戻します。
# vi /etc/cron.d/hbserver */5 * * * * heartbeat /var/service/smf/bin/mreport.py
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
CREATE INDEX request1_target_time_index ON request1 (target_time);
CREATE INDEX request2_target_time_index ON request2 (target_time);
CREATE INDEX request3_target_time_index ON request3 (target_time);
CREATE INDEX request4_target_time_index ON request4 (target_time);
CREATE INDEX request5_target_time_index ON request5 (target_time);
CREATE INDEX request6_target_time_index ON request6 (target_time);
CREATE INDEX event1_timestamp_index ON event1 (timestamp);
CREATE INDEX event2_timestamp_index ON event2 (timestamp);
CREATE INDEX event3_timestamp_index ON event3 (timestamp);
CREATE INDEX event4_timestamp_index ON event4 (timestamp);
Ver5.1 → Ver 5.2 へのアップデート¶
Ver5.2 に特有のアップデート手順はありません。 SMF SDK のアップデート のアップデート手順に従います。
Ver5.2 → Ver 5.3 へのアップデート¶
Ver5.3 に特有のアップデート手順はありません。 SMF SDK のアップデート のアップデート手順に従います。
Ver5.3 → Ver 5.4 へのアップデート¶
Ver5.4 に特有のアップデート手順はありません。 SMF SDK のアップデート のアップデート手順に従います。
Ver5.4 → Ver5.5 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-5.5-*.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。
- /Heartbeat/heartbeat-server-5.5-*.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-5.5-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
CREATE INDEX request1_sa_id_status_index ON request1 (service_adapter_id, status);
CREATE INDEX request2_sa_id_status_index ON request2 (service_adapter_id, status);
CREATE INDEX request3_sa_id_status_index ON request3 (service_adapter_id, status);
CREATE INDEX request4_sa_id_status_index ON request4 (service_adapter_id, status);
CREATE INDEX request5_sa_id_status_index ON request5 (service_adapter_id, status);
CREATE INDEX request6_sa_id_status_index ON request6 (service_adapter_id, status);
ALTER TABLE request1 MODIFY COLUMN target_time datetime NOT NULL;
ALTER TABLE request2 MODIFY COLUMN target_time datetime NOT NULL;
ALTER TABLE request3 MODIFY COLUMN target_time datetime NOT NULL;
ALTER TABLE request4 MODIFY COLUMN target_time datetime NOT NULL;
ALTER TABLE request5 MODIFY COLUMN target_time datetime NOT NULL;
ALTER TABLE request6 MODIFY COLUMN target_time datetime NOT NULL;
ALTER TABLE event1 MODIFY COLUMN timestamp datetime NOT NULL;
ALTER TABLE event2 MODIFY COLUMN timestamp datetime NOT NULL;
ALTER TABLE event3 MODIFY COLUMN timestamp datetime NOT NULL;
ALTER TABLE event4 MODIFY COLUMN timestamp datetime NOT NULL;
ALTER TABLE module_package MODIFY COLUMN dist_id_vendor integer NOT NULL;
ALTER TABLE module_package MODIFY COLUMN dist_id_satype integer NOT NULL;
ALTER TABLE module_package MODIFY COLUMN mod_id integer NOT NULL;
Ver5.5 → Ver5.6 へのアップデート¶
アップデート対象¶
- /Proxy/arms-proxy-5.6-*.rpm
ARMS-Proxy サーバのアップデート のアップデート手順に従います。 DH 鍵交換を有効にする場合は DH パラメータを指定してください。
# openssl dhparam -out /var/service/smf/etc/dhparam.pem 2048 2048は鍵長です。適切な長さを指定してください。 # openssl dhparam -check -in /var/service/smf/etc/dhparam.pem DH parameters appear to be ok. となることを確認 # vi /var/service/smf/etc/proxy.cfg SslDhParameter: /var/service/smf/etc/dhparam.pem (追加)
- /Heartbeat/heartbeat-server-5.6-*.rpm
Heartbeat サーバのアップデート のアップデート手順に従います。
- /RS/rs-api-5.6-*.zip
RS のアップデート のアップデート手順に従います。
- データベース
データベースのアップデート のアップデート手順に従います。
データベースのアップデート¶
MySQL
データベースサーバにログインし、使用しているデータベースに以下の SQL 文を発行してください。
ALTER TABLE service_adapter ADD server_group_id integer AFTER monitor_id;