プロダクションの開始と停止
デフォルトで、InterSystems IRIS® データ・プラットフォームは自動的にプロダクションを開始しません。ここでは、プロダクションの開始方法と停止方法について説明します。プロダクションを開始または停止するには、%Ens_ProductionRun に対する USE 特権が必要です。
タスク | 必要な権限 |
---|---|
管理ポータルで [相互運用性] メニューにアクセス |
|
プロダクションの開始または停止 |
|
相対的開始優先度の管理 |
|
配置の管理および配置パッケージの作成 |
|
プロダクションの開始
管理ポータルからプロダクションを開始するには、以下の手順を実行します。
-
[Interoperability]→[リスト]→[プロダクション] の順に選択します。
[プロダクション・リスト] ページが表示されます。
-
開始するプロダクションを選択します。
-
[開く] を選択します。
InterSystems IRIS にプロダクションが表示されます。
-
[開始] を選択します。
-
[OK] を選択します。InterSystems IRIS に進捗を示すダイアログ・ボックスが表示されます。
Note:プロダクションを開始した結果、ターミナル・ウィンドウが表示された場合、それらは閉じないでください。
-
ダイアログ・ボックスに [完了] と表示されたら、[OK] を選択します。
このページでは、実行中のプロダクションを停止して、別のプロダクションを開始できます。指定されたネームスペースで一度に実行できるのは、これらのプロダクションの 1 つのみです。既に 1 つのプロダクションが開始されているときに別のプロダクションを開始しようとしても、警告メッセージが表示されて開始できません。以下に例を示します。
12:05:06.292:Ens.Director: ERROR <Ens>ErrProductionAlreadyRunning: Production 'Demo.Loan.FindRateProduction' is already running 12:05:06.352:Ens.Director: ERROR <Ens>ErrProductionAlreadyRunning: Production 'Demo.Loan.FindRateProduction' is already running Production 'Demo.Loan.BankUSProduction' not started: ERROR <Ens>ErrProductionAlreadyRunning: Production 'Demo.Loan.FindRateProduction' is already running
プロダクションの終了
管理ポータルからプロダクションを停止するには、以下の手順を実行します。
-
[Interoperability]→[リスト]→[プロダクション] の順に選択します。
[プロダクション・リスト] ページが表示されます。
-
停止するプロダクションを選択します。これは実行中のプロダクションにする必要があります。
-
[開く] を選択します。
InterSystems IRIS にプロダクションが表示されます。
-
[停止] を選択します。
-
[OK] を選択します。InterSystems IRIS に進捗を示すダイアログ・ボックスが表示されます。
Note:プロダクションを開始した結果、ターミナル・ウィンドウが表示された場合、それらは閉じないでください。
-
ダイアログ・ボックスに [完了] と表示されたら、[OK] を選択します。
-
プロダクション停止要求が最初に失敗すると、ポータルに次のメッセージが表示されます。
“プロダクションを停止できません。強制的にシャットダウンしますか?”
さらに次のコマンドが表示されます。
[はい - 強制的にシャットダウン]
このコマンドをクリックすると、プロダクションが強制終了します。
プロダクションが一時停止またはトラブルの場合は、"プロダクション問題状態の修正" を参照してください。
プロダクション自動開始の管理
プロダクションは、システムの起動時にネームスペースで自動的に開始し、システムのシャットダウン時に自動的に停止するように指定できます。このオプションは、プロダクションを開始または停止する方法として推奨されています。
すべてのネームスペースへのアクセス権がある場合、相対的な開始優先度をプロダクション自動開始に割り当てることができます。システムが起動すると、そのネームスペースに関係なく、最も優先度の高いプロダクションが最初に開始されます。2 つのプロダクションが 1 つの優先度番号を共有している場合は、プロダクションのネームスペースのアルファベット順で、最初に開始するプロダクションを決定します。すべてのネームスペースへのアクセス権がない場合、相対的な開始優先度を設定することはできません。
管理ポータルでこのページにアクセスするには、[Interoperability]→[管理]→[プロダクション自動開始] を選択します。
現在のネームスペースで単一のプロダクションの自動開始を有効にするには、以下の手順に従います。
-
ドロップダウン・リストからプロダクションを選択します。
-
すべてのネームスペースへのアクセス権がある場合、[相対開始優先度] を設定します。最も高い優先度のプロダクションが最初に開始されます。
-
[適用] をクリックします。
このプロダクションを自動開始してもよいかを確認するダイアログが表示されます。
現在のネームスペースで自動開始を無効にするには、以下の手順に従います。
-
ドロップダウン・リストでどのプロダクションも選択しません。
-
[適用] をクリックします。
このネームスペースではどのプロダクションも自動開始しなくてよいかを確認するダイアログ・ボックスが表示されます。
別のページで、すべてのプロダクションの自動開始を上書きすることができます。
ミラー構成で自動開始するようにプロダクションを構成した場合は、そのプロダクションはフェイルオーバー状況では現在の 1 次ノード上で自動的に開始します。追加のアクションは不要です。ミラー・フェイルオーバー・プロセスの詳細は、"ミラーリング" を参照してください。
すべてのネームスペースにおけるプロダクション自動開始オプションの上書き
デバッグを目的とする場合または災害復旧時は、すべてのプロダクションの自動開始オプションを上書きできます。そのためには、以下のように操作します。
-
管理ポータルで、[システム管理]→[構成]→[追加の設定]→[開始] を選択します。
[開始設定] ページが表示されます。
-
[EnsembleAutoStart] 設定の横にある [編集] を選択します。
-
チェック・ボックスからチェックを外します。
-
[保存] をクリックします。
その後、InterSystems IRIS では、[プロダクション自動開始] ページのネームスペース固有の設定が無視されます。これについては、前のセクションで説明しています。つまり、指定されたネームスペースの [自動開始に設定されたプロダクションの開始シーケンスの優先順位] リストに含まれるプロダクションであっても、システムはそのプロダクションを自動的に再起動しません。
大量のキューを持つプロダクションを再開する動作の改善
既定では、プロダクションが停止すると、^Ens.Queue グローバル・キューにある非同期メッセージが ^Ens.Suspended キューに移動します。プロダクションを再開すると、このメッセージは元のキューに戻ります。この方法では、キューに多数のメッセージがあるプロダクションの場合、プロダクションの停止と再開の動作が遅くなります。メッセージの移動を回避するには、以下のように ^Ens.Configuration グローバル・ノードを設定します。
set ^Ens.Configuration("Queues","KeepInQueues")=1
既定では、このノードは 0 に設定され、ネームスペースごとに変更する必要があります。この設定により、メッセージが Ens.Queue グローバルから移動しなくなり、恒常的に大量のキューを持つプロダクションの再開速度が速くなります。
プロダクション・シャットダウン・グループの使用
プロダクション・シャットダウン・グループでは、インスタンスをシャットダウンする際に、プロダクションを停止する順序を制御できます。デフォルトでは、インスタンスを停止すると、すべてのプロダクションが並行してシャットダウンされます。プロダクションがいくつかのプロダクション・シャットダウン・グループに編成されている場合、最初のグループのプロダクションがシャットダウンされてから、次のグループのプロダクションのシャットダウンが開始されます。各グループの名前は整数である必要があり、小さいグループ番号からシャットダウンが開始されます。デフォルトでは、すべてのプロダクションがグループ 2 に属します。
プロダクションをプロダクション・シャットダウン・グループに追加するには、以下のようにします。
-
プロダクションのネームスペースを選択し、[Interoperability]→[管理]→[構成] →[プロダクションのシャットダウングループ] に移動します。
-
ドロップダウン・リストからプロダクションを選択します。
-
[プロダクション・シャットダウン・グループ] でグループの番号を入力します。
-
[適用] を選択します。
ページの下部にあるテーブルには、各ネームスペースで現在アクティブなプロダクションがそのグループ番号と共に表示されます。プロダクションのグループへの割り当てはいつでもできますが、アクティブなプロダクション (実行中であるか、ネームスペース内で最近停止されたプロダクション) でない限り、下部のテーブルには表示されません。
プロダクション・シャットダウン・グループを使用すると、インスタンスの停止に時間がかかり、時間に依存するフェイルオーバーに影響を及ぼします。