intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

Copyright © 2013 NTT DATA INTRAMART CORPORATION↑Top
1

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

目次
改訂情報
はじめに
本書の目的
対象読者
本書の構成
分散環境の構築
分散環境の設定
サーバ間通信に TCP を利用した分散環境の設定
サーバ間通信に UDP を利用した分散環境の設定
サーバ間通信で利用するスレッド数の設定
サーバ間の通信
intra-mart 各種サービスの概要
intra-martのサービス
サービスのライフサイクル
サービスの選出と起動・停止
サービスの選出
１つのサーバで起動するサービスの選出
複数のサーバで起動するサービスの選出
サービスの起動サービスの起動順序
サービスの停止2

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

改訂情報
変更年月日

変更内容

2013-10-01

初版

2015-04-01

第2版 下記を追加・変更しました「intra-mart 各種サービスの概要 」から「QueueService」の説明を削除しました。
「サービスの選出と起動・停止 」から「QueueService」の説明を削除しました。
「１つのサーバで起動するサービスの選出 」から「QueueService」の説明を削除しました。
「 分散環境の構築 」の「 分散環境の設定 」を変更しました。

2016-08-01

第3版 下記を追加・変更しました「分散環境の設定 」に「サーバ間通信に UDP を利用した分散環境の設定 」を追加しました。
「分散環境の設定 」に「サーバ間通信で利用するスレッド数の設定 」
を追加しました。
2020-04-01

第4版 下記を追加・変更しました「サービスの選出と起動・停止 」の「サービスの開始」、「サービスの停止」を変更しました。

3

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

はじめに
本書の目的
本書では、intra-mart サービス仕様の詳細について説明します。
説明範囲は以下のとおりです。
intra-mart 各種サービスの概要
サービスの選出と起動・停止
ネットワーク分断時の動作

対象読者
本書は次の利用者を対象としています。
intra-mart Accel Platform の運用管理者
intra-mart Accel Platform 上でアプリケーションを開発する開発者

本書の構成
本書は以下のような構成となっています。

分散環境の構築
この章では intra-mart Accel Platform で分散環境が構築される際の各サーバの動作について説明します。
分散環境の設定
サーバ間の通信
intra-mart 各種サービスの概要
この章ではintra-mart 各種サービスの概要について説明します。
intra-mart 各種サービスの概要
サービスのライフサイクル

サービスの選出と起動・停止
この章では各種サービスの選出と起動・停止処理について説明します。
各種サービスの選出
各種サービスの起動
各種サービスの停止

4

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

分散環境の構築
ここでは、 intra-mart Accel Platform で分散環境が構築される際の各サーバ間の動作について説明します。

分散環境の設定
分散環境を構成するサーバの設定はサーバ間の通信に TCP を利用する方法と UDP を利用する方法の２つの設定が利用できます。
標準では TCP が指定されています。 UDP を指定した場合、通信の信頼性は低下しますがサーバ間通信を高速に行うことができます。
分散環境を構成するサーバの設定は以下の設定ファイルに指定します。
conf/network-agent-config.xml

サーバ間通信に TCP を利用した分散環境の設定
TCP を利用した場合、「tcp/initial-hosts」に分散環境を構成するサーバを指定します。
<TCP><initial-hosts><host address="192.168.0.1" /><host address="192.168.0.2" /><host address="192.168.0.3" /></initial-hosts></TCP>

intra-mart Accel Platform 起動時に、上記の設定ファイルに設定されているサーバと通信を行い、分散環境が構築されます。
「initial-hosts」に指定されていないサーバで intra-mart Accel Platform が起動した場合も、「initial-hosts」に指定されているサーバへ通信を行い分散環境に参加することが可能です。
そのため、後からサーバを追加する場合に、設定ファイルの内容を変更する必要はありません。

コラム
サーバの追加とはサーバの追加は、 intra-mart Accel Platform を起動する Web Application Serverのクラスタメンバーを追加することを想定しています。
サーバを追加した場合、 Web Application Server の機能によって、既に起動済みのintra-mart Accel Platform が配置されるため設定ファイルの変更やWARの作成等の作業を行う必要はありません。
詳しくは、各 Web Application Server 製品の仕様をご確認ください。

5intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

コラム
分散環境を構成するサーバのグループは＜network-agent-config.xml＞の「id」毎に管理されます。
１つのサーバ上で複数の intra-mart Accel Platform を起動させる場合は、＜networkagent-config.xml＞の「id」にそれぞれ異なるIDを設定することで別の環境として運用することができます。

サーバ間通信に UDP を利用した分散環境の設定
UDP を利用した場合、「UDP」にマルチキャストアドレス、ポートを指定します。
<UDP><mcast-address>228.10.10.10</mcast-address><mcast-port>45588</mcast-port><initial-members>2</initial-members></UDP>

intra-mart Accel Platform 起動時に、上記の設定ファイルに設定されているアドレスでマルチキャス
トを使用し、分散環境が構築されます。
「initial-members」は起動時に既にクラスタグループが存在するか確認する際に利用されます。起動時にはPING要求をマルチキャストし、「initial-members」に指定した台数のサーバから応答があれば、応答があったサーバのクラスタグループに参加します。誰も応答しない場合は、グループの最初のメンバーとみなされます。
UDP では通常 TCPとくらべて通信の信頼性は高くありませんが、 UDP を利用してクラスタグループを構築した場合でもシステム内で確認応答

順序制御、再送制御を行い通信内容の到達を保証しています。（ただし、ネットワーク障害等で再送を行っても到達を保証できない場合もあります。）

サーバ間通信で利用するスレッド数の設定
クラスタグループを構成するサーバ台数が多い場合には、サーバ間通信で利用されるスレッドの最大数を指定します。
<network-agent-config><max-threads>10</max-threads><max-oob-threads>10</max-oob-threads></network-agent-config>

max-threads
サーバ間通信を行うスレッドの最大スレッド数
max-oob-threads
通信内容の到達確認や再送を行うスレッドの最大スレッド数6

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
max-threads および max-oob-threads にはそれぞれ、クラスタグループを構成するサーバ台数の２倍を目安に設定を行ってください。 ただし、最大スレッド数を増やした場合、起動時に必要となるメモリも増えるので注意してください。
サーバ間通信はバックエンドでスレッドを生成して行われます。クラスタグループを構成するサーバ台
数が多くなるとスレッド数が不足しサーバ間の通信が行えない場合があります。
サーバ間の通信が正常に行えない場合、以下のような事象が発生する可能性があります。
クラスタグループに参加するサーバが他のサーバから認識されない。
サービスが正常に起動しない。
単一のサーバで起動するはずのサービスが複数のサーバで起動してしまう。

サーバ間の通信
分散環境を構成する各サーバはバックエンドで以下のような通信を行います。
1. intra-mart Accel Platform を起動すると＜network-agent-config.xml＞の「initial-hosts」に指定されたサーバへ通信を行います。

2. 新しいサーバからの通信を受けたサーバは分散環境を構成する各サーバへ新しいサーバが追加されることを通知します。

7

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

3. 通知を受けた各サーバは相互にそれぞれのサーバ情報の交換を行い分散環境を構築します。

分散環境が再構築されると、各サーバ上で新しいサーバの追加を検知した時の処理（ サービスの選出と起動・停止 ）が実行されます。

4. intra-mart Accel Platform 起動中は、分散環境を構築した各サーバ間で３秒毎に生存確認を行います。

8intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

5. 生存確認の応答がない場合（サーバが停止した場合等）は、分散環境を構成する全てのサーバへ通知します。

6. 通知を受けた各サーバは応答がなくなったサーバへ再度、生存確認を行います。

9

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
7. 応答がなければ、残ったサーバで分散環境を再構築します。

分散環境が再構築されると、各サーバ上でサーバの停止を検知した時の処理（ サービスの選出と起動・停止 ）が実行されます。

10

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

intra-mart 各種サービスの概要
ここでは、intra-mart Accel Platform で提供している各種サービスの概要を説明します。

intra-martのサービス
intra-mart Accel Platform では、以下のサービスを提供しています。
複数

開始条

停止時
の動作

サービス名

概要

サービスID

起動

件

ServerManager

各種

server.service.controller

×

スト

サービ

レージ

スの選

へ接続

出を行

できる

うサー

こと

ビスで

データ

す。

ベース
へ接続
できる
こと

TaskService

非同期

server.service.task.management ○

データ

実行中

タスク

ベース

のタス

を実行

へ接続

クが終

する

できる

了して

サービ

こと

から停

スで

止しま

す。

す。

JobSchedulerService ジョブ

server.service.job_scheduler

○

データ

実行中

を管理

ベース

のジョ

する

へ接続

ブが終

サービ

できる

了して

スで

こと

から停

す。

止しま
す。

1. Server Manager
intra-mart 各種サービスの動作状況を管理します。サーバの追加・停止時に自動的にサービスの開始や停止を各サーバに依頼します。
このサービスは分散環境を構築しているサーバの内、どれか１つのサーバで起動します。

11intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

注意Server Managerが起動していない場合、その他のサービスの起動が正しく行われなくなります。
2. Task Service
非同期タスクを実行するサービスです。タスクキューに登録されたタスクを実行を行います。
このサービスは分散環境を構築しているサーバの内、複数のサーバで起動します。
TaskServiceの詳細は「非同期仕様書」を参照してください。
3. Job Scheduler Service
ジョブを管理するサービスです。スケジューラに登録されたジョブの実行・監視を行います。
このサービスは分散環境を構築しているサーバの内、複数のサーバで起動します。
JobSchedulerServiceの詳細は「ジョブスケジューラ仕様書」を参照してください。

サービスのライフサイクル
各種サービスは以下のようなライフサイクルで実行されます。
サービスの初期化
サービスの開始準備を行います。
intra-mart Accel Platform の起動時に実行されます。
サービスの開始
サービスを開始します。
ServerManagerより開始要求を受け付けた場合に実行されます。
ServerManagerは以下を検知した場合に各サービスの起動するサーバの選出および開始要求を行います。
分散環境を構成する Web Application Server が追加された場合
分散環境を構成している Web Application Server が停止した場合
サービスの停止
サービスを停止します。
ServerManagerより停止要求を受け付けた場合および、intra-mart Accel Platform の停止処
理時に実行されます。
ServerManagerは以下を検知した場合に各サービスの起動するサーバの選出および停止要求を行います。
分散環境を構成する Web Application Server が追加された場合
分散環境を構成している Web Application Server が停止した場合
サービスの破棄
リソースの破棄等、サービス終了処理を行います。
intra-mart Accel Platform の停止処理時に実行されます。

12

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
Web Application Server の追加・削除時の詳細については、 サーバ間の通信 を参照してください。

13

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

サービスの選出と起動・停止
ここでは、intra-mart Accel Platform で提供している各種サービスを起動するサーバの選出方法や、各種サービスの起動・停止について説明します。

サービスの選出
各サービスを開始するサーバを選出します。
サービスの選出は以下の状況を検知した際に、ServerManagerによって自動的に行われます。
intra-mart Accel Platform の起動時分散環境を構築する Web Application Server の追加時
分散環境を構築する Web Application Server の停止時
Web Application Server の追加・削除時の詳細については、 サーバ間の通信 を参照してください。
サービスの選出方法は、サービスの挙動によって以下の２つにわかれます。

１つのサーバで起動するサービスの選出
ここでは１つのサーバで起動するサービスの選出方法について説明します。
１つのサーバで起動するサービスには、以下のサービスが該当します。
ServerManager
これらのサービスは基本的には複数のサーバ上で同時に起動することはありません。
（ただし、何らかの障害が発生した場合等、 intra-mart Accel Platform が正常に動作していない場合
はこの限りではありません。）

標準設定での選出方法
サービスの選出方法を特に指定せずに、 標準のまま intra-mart Accel Platform を起動した場合、サービスを起動するサーバは動的に選出されます。
標準設定での選出は以下のルールで行われます。
1. サーバ上で別のサービスが起動していないサーバ（負荷の軽いサーバ）を優先して選出します。
2. サーバ（ intra-mart Accel Platform ）の起動時刻が早いサーバを優先して選出します。
標準設定の状態で分散環境を構築するサーバが追加された場合、以下のようにサービスが選出されます。

14intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

1. APServer1で intra-mart Accel Platform を起動します。
2. この時点ではスタンドアロンで起動した状態なので、APServer1 上で全てのサービスが起動します。
3. APServer2、APServer3で intra-mart Accel Platform を起動します。
4. サーバ間で通信が行われ、分散環境を構築します。
APServer1 が APServer2、APServer3 を検知します。
APServer2 が APServer1、APServer3 を検知します。
APServer3 が APServer1、APServer2 を検知します。
5. ServerManagerの選出が行われます。
先に起動した APServer1 が選出されます。
APServer2、APServer3 は選出されなかったので処理は終了します。
6. APServer1 でServerManagerの開始処理が実行され、他のサービス（TaskService等）の選出が行われます。

サービスが起動するサーバを指定する方法
特定のサーバでサービスを起動させたい場合は ＜service-selecter-config.xml＞の「assign-hosts」にサービスを起動するサーバを指定します。
「assign-hosts」に指定されたサーバで intra-mart Accel Platform が起動している場合、そのサー

15

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
バにサービスが割り当てられます。
<service service-id="server.service.controller"><assign-hosts><host>192.168.0.2</host></assign-hosts></service>

コラム
指定したサーバが起動していない場合、動的にサービスを割り当てるサーバが選出されます。
上記のように＜assign-hosts＞を設定した場合、以下のようにサービスが選出されます。

1. APServer1で intra-mart Accel Platform を起動します。
2. 「assign-hosts」に指定されたサーバが起動していないので、APServer1 上で全てのサービスが起動します。
3. APServer2、APServer3で intra-mart Accel Platform を起動します。
4. サーバ間で通信が行われ、分散環境を構築します。
APServer1 が APServer2、APServer3 を検知します。

16

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
APServer2 が APServer1、APServer3 を検知します。
APServer3 が APServer1、APServer2 を検知します。
5. ServerManagerの選出が行われます。
「assign-hosts」に指定されている APServer2 が選出されます。
APServer1 は選出されなかったので、既に起動しているServerManagerを停止します。
APServer3 は選出されなかったので処理は終了します。
6. APServer2 でServerManagerの開始処理が実行され、他のサービス（TaskService等）の選出が行われます。

サービスを起動させないサーバを指定する方法
特定のサーバでサービスを起動させたくない場合は ＜service-selecter-config.xml＞の「invalidhosts」にサービスを起動させないサーバを指定します。
「invalid-hosts」に指定されたサーバのみで intra-mart Accel Platform が起動している場合、そのサービスは開始されません。
<service service-id="server.service.controller"><invalid-hosts><host>192.168.0.1</host></invalid-hosts></service>

注意ServerManagerが開始されない場合、その他のサービスの選出・開始が行われなくなりますので注意してください。
上記のように＜invalid-hosts＞を設定した場合、以下のようにサービスが選出されます。

17

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

1. APServer1で intra-mart Accel Platform を起動します。
2. APServer1がServerManagerの「invalid-hosts」に指定されているため、サービスは起動しません。
3. APServer2、APServer3で intra-mart Accel Platform を起動します。
4. サーバ間で通信が行われ、分散環境を構築します。
APServer1 が APServer2、APServer3 を検知します。
APServer2 が APServer1、APServer3 を検知します。
APServer3 が APServer1、APServer2 を検知します。
5. ServerManagerの選出が行われます。
「invalid-hosts」に指定されていない APServer2 が選出されます。
（APServer3 が先に起動していた場合は、APServer3 が選出されます。）
APServer1、APServer3 は選出されなかったので処理は終了します。
6. APServer2 でServerManagerの開始処理が実行され、他のサービス（TaskService等）の選出が行われます。

割り当てを行うサーバの範囲指定「assign-hosts」や「invalid-hosts」に複数のサーバを一括で指定する場合には、以下のように指定できます。
セグメント単位の指定

18intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
指定したセグメント内の全てのアドレスを指定する場合に利用します。
192.168.0.*

レンジ指定
対象とするサーバアドレスの範囲を指定する場合に利用します。
192.168.0.[1-100]

コラム
範囲指定を行った場合、指定した範囲に含まれるサーバの内、先に起動したサーバから順に選出されます。
「assign-hosts」に指定したサーバ以外のサーバでサービスを起動させたくない場合は、以下のように設定します。
<service service-id="server.service.task.management"><assign-hosts><host>192.168.0.1</host></assign-hosts><invalid-hosts><host>*</host></invalid-hosts></service>

上記の設定を行うと、「assign-hosts」に指定された”192.168.0.1”のサーバ以外の全てのサーバが「invalid-hosts」に該当します。
そのため、”192.168.0.1”のサーバ上でのみ、サービスが起動します。

複数のサーバで起動するサービスの選出
ここでは複数のサーバで起動するサービスの選出方法について説明します。
複数のサーバで起動するサービスには、以下のサービスが該当します。
TaskService
JobSchedulerService

標準設定での選出方法
サービスの選出方法を特に指定せずに、 標準のまま intra-mart Accel Platform を起動した場合、全てのサーバ上でサービスが起動されます。
標準設定の状態で分散環境を構築するサーバが追加された場合、以下のようにサービスが起動します。

19

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

1. APServer1で intra-mart Accel Platform を起動します。
2. APServer1 上で全てのサービスが起動します。
3. APServer2、APServer3で intra-mart Accel Platform を起動します。
4. サーバ間で通信が行われ、分散環境を構築します。
APServer1 が APServer2、APServer3 を検知します。
APServer2 が APServer1、APServer3 を検知します。
APServer3 が APServer1、APServer2 を検知します。
5. ServerManagerが起動します。
（ServerManagerの選出・起動については、 １つのサーバで起動するサービスの選出 を参照してください。）
6. ServerManager で TaskServiceを起動するサーバの選出が行われます。
全てのサーバ（APServer1、APServer2、APServer3）が選出されます。
7. ServerManager が TaskServiceの開始依頼を送信します。
TaskServiceが起動していない APServer2、APServer3 へ TaskServiceの開始依頼を送20

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
信します。
（APServer1 では既にTaskServiceが起動しているので開始依頼は送信されません。）
8. ServerManager で JobSchedulerServiceを起動するサーバの選出が行われます。
全てのサーバ（APServer1、APServer2、APServer3）が選出されます。
9. ServerManager が JobSchedulerServiceの開始依頼を送信します。
JobSchedulerServiceが起動していない APServer2、APServer3 へ
JobSchedulerServiceの開始依頼を送信します。
（APServer1 は既にJobSchedulerServiceが起動しているので開始依頼は送信されません。）

サービスが起動するサーバを指定する方法
特定のサーバでサービスを起動させたい場合は ＜service-selecter-config.xml＞の「assign-hosts」にサービスを起動するサーバを指定します。
「assign-hosts」に指定されたサーバで intra-mart Accel Platform が起動している場合、そのサーバにサービスが割り当てられます。
<service service-id="server.service.task.management"><assign-hosts><host>192.168.0.2</host><host>192.168.0.3</host></assign-hosts></service><service service-id="server.service.job_scheduler"><assign-hosts><host>192.168.0.3</host></assign-hosts></service>

上記のように＜assign-hosts＞を設定した場合、以下のようにサービスが選出されます。

21

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

1. APServer1で intra-mart Accel Platform を起動します。
2. 「assign-hosts」に指定されたサーバが起動していないので、APServer1 上で全てのサービスが起動します。
3. APServer2、APServer3で intra-mart Accel Platform を起動します。
4. サーバ間で通信が行われ、分散環境を構築します。
APServer1 が APServer2、APServer3 を検知します。
APServer2 が APServer1、APServer3 を検知します。
APServer3 が APServer1、APServer2 を検知します。
5. ServerManagerが起動します。
（ServerManagerの選出・起動については、 １つのサーバで起動するサービスの選出 を参照し22

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01てください。）
6. ServerManager で TaskServiceを起動するサーバの選出が行われます。
「assign-hosts」に指定されている APServer2、APServer3 が選出されます。
7. ServerManager が TaskServiceの開始依頼を送信します。
既に、TaskServiceが起動している APServer1 へ TaskServiceの停止依頼を送信します。
選出された APServer2、APServer3 へ TaskServiceの開始依頼を送信します。
8. ServerManager で JobSchedulerServiceを起動するサーバの選出が行われます。
「assign-hosts」に指定されている APServer3 が選出されます。
9. ServerManager が JobSchedulerServiceの開始依頼を送信します。
既に、JobSchedulerServiceが起動している APServer1 へ JobSchedulerServiceの停止
依頼を送信します。
選出された APServer3 へ JobSchedulerServiceの開始依頼を送信します。

コラム「assign-hosts」指定したサーバが起動していない場合、動的にサービスを割り当てるサーバが選出されます。
その際に選出されるサーバは1台になります。

サービスを起動させないサーバを指定する方法
特定のサーバでサービスを起動させたくない場合は ＜service-selecter-config.xml＞の「invalidhosts」にサービスを起動させないサーバを指定します。
「invalid-hosts」に指定されたサーバのみで intra-mart Accel Platform が起動している場合、そのサービスは開始されません。
<service service-id="server.service.task.management"><invalid-hosts><host>192.168.0.2</host></invalid-hosts></service><service service-id="server.service.job_scheduler"><invalid-hosts><host>192.168.0.1</host></invalid-hosts></service>

上記のように＜invalid-hosts＞を設定した場合、以下のようにサービスが選出されます。

23

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

1. APServer1で intra-mart Accel Platform を起動します。
2. APServer1 が「invalid-hosts」に指定されていない、TaskManagerが起動します。
（JobSchedulerServiceは「invalid-hosts」に APServer1 が指定されているので起動しません。）
3. APServer2、APServer3で intra-mart Accel Platform を起動します。
4. サーバ間で通信が行われ、分散環境を構築します。
APServer1 が APServer2、APServer3 を検知します。
APServer2 が APServer1、APServer3 を検知します。
APServer3 が APServer1、APServer2 を検知します。
5. ServerManagerが起動します。
（ServerManagerの選出・起動については、 １つのサーバで起動するサービスの選出 を参照してください。）
6. ServerManager で TaskServiceを起動するサーバの選出が行われます。
「invalid-hosts」に指定されていない APServer1、APServer3 が選出されます。
7. ServerManager が TaskServiceの開始依頼を送信します。

24intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
TaskServiceが起動していない APServer3 へ TaskServiceの開始依頼を送信します。
（APServer1 では既にTaskServiceが起動しているので開始依頼は送信されません。）
8. ServerManager で JobSchedulerServiceを起動するサーバの選出が行われます。
「invalid-hosts」に指定されていない APServer2、APServer3 が選出されます。
9. ServerManager が JobSchedulerServiceの開始依頼を送信します。
選出された APServer2、APServer3 へ JobSchedulerServiceの開始依頼を送信します。

割り当てを行うサーバの範囲指定「assign-hosts」や「invalid-hosts」に複数のサーバを一括で指定する場合には、以下のように指定することができます。
セグメント単位の指定
指定したセグメント内の全てのアドレスを指定する場合に利用します。
192.168.0.*

レンジ指定
対象とするサーバアドレスの範囲を指定する場合に利用します。
192.168.0.[1-100]

コラム
範囲指定を行った場合、指定した範囲に含まれるサーバの内、先に起動したサーバから順に選出されます。
「assign-hosts」に指定したサーバ以外のサーバでサービスを起動させたくない場合は、以下のように設定します。
<service service-id="server.service.task.management"><assign-hosts><host>192.168.0.1</host></assign-hosts><invalid-hosts><host>*</host></invalid-hosts></service>

上記の設定を行うと、「assign-hosts」に指定された”192.168.0.1”のサーバ以外の全てのサーバが「invalid-hosts」に該当するようになります。
そのため、”192.168.0.1”のサーバ上でのみ、サービスが起動するようになります。

サービスを起動するサーバ数の設定
25

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01
複数のサーバで起動するサービスでは、「select-num」属性を指定することでサービスの起動するサーバ数を指定することができます。
TaskServiceを起動するサーバを２台にする場合は、以下のように設定します。
<service service-id="server.service.task.management" select-num="2"><assign-hosts><host>192.168.0.*</host></assign-hosts></service>

上記の設定では、「assign-hosts」に指定された”192.168.0”のセグメントに属するサーバの内、先に起動したサーバ２台でサービスが起動します。

サービスの起動
サービスを開始します。
ServerManagerより開始要求を受け付けた場合に実行されます。
各サービスが起動するための前提条件は以下のとおりです。
ServerManager
Storageへの接続が正常に行えること。
データベースへの接続が正常に行えること。
TaskService
データベースへの接続が正常に行えること。
Job Scheduler Service
データベースへの接続が正常に行えること。

注意
システム管理者が画面から停止したサービスはサーバの起動・停止しても開始されません。サービスを再開するにはシステム管理者画面からサービスの再開を行う必要があります。

サービスの起動順序
各サービスは以下の順番で起動処理が実行されます。
1. ServerManager
2. TaskService
3. JobSchedulerService

サービスの停止

26

サービスの停止

intra-mart Accel Platform — サービス仕様書 第4版 2020-04-01

サービスを停止します。
サービスが起動している Web Application Server の停止処理を行った場合や、システム管理者が画面より停止を行った場合、ServerManagerより停止要求を受け付けた場合に実行されます。
各サービスが停止処理時の動作は以下の通りです。
TaskService
タスクサービスを停止します。サービスの停止時に実行中のタスクが存在する場合は、タスクの実行が終了するまで停止処理は待機します。
Job Scheduler Service
スケジューラサービスを停止します。サービスの停止時に実行中のジョブが存在する場合は、ジョブの実行が終了するまで停止処理は待機します。

注意
システム管理者がサービスの停止・再開を行う機能は、intra-mart Accel Platform
2020 Spring(Yorkshire) 以降で利用できます。

27