Mule の起動と停止

Mule Runtime Engine を起動および停止して Mule アプリケーションをデプロイする方法を説明します。管理機能および監視機能を最大限に活用するために、Anypoint Runtime Manager を使用して同じ Mule インスタンスにデプロイできます。

Mule は Java サービスラッパーを使用してネイティブ OS から Java 仮想マシン (JVM) を制御します。ラッパーには Mule を Unix デーモンとして実行する機能や Mule を Windows サービスとしてインストールまたは削除する機能を含めて、多くのオプションと機能があります。ラッパーはシステムシグナルを処理してパラメーターを開始するため、全体的に JVM と基礎となる OS 間のインタラクションが大幅に向上します。

スクリプトの起動とシャットダウン

ラッパーは ​$MULE_HOME/bin​ のスクリプトによってコールされます。

次の表に、スクリプトが受け入れるすべてのパラメーターを示します。

パラメーター 説明

start

ターミナルのバックグラウンドで Mule を起動します。

stop

Mule を停止します。インバウンドエンドポイントは Mule がシャットダウンする前にインフライトメッセージを処理します。ただし、タイムアウト期間後に、完了していないインフライトメッセージが破棄され、Mule がシャットダウンします。

restart

Mule を再起動します。

status

(Linux/Unix のみ)​。Mule サーバー (​running​ または ​not running​) および実行している場合はプロセスの PID の状況を表示します。

dump

(Linux/Unix のみ)​。Mule ラッパーのコアを ​$MULE_HOME/log/mule_ee.log​ にダンプします。

console

ターミナルのフォアグラウンドで Mule を起動します (コンソールモード)。パラメーターを指定せずに ​mule​ を実行するのと同じです。

install

Mule を Windows サービスまたは Linux/Unix デーモンとしてインストールします。

remove

Mule を Windows サービスまたは Linux/Unix デーモンから削除します。

Mule の起動

Mule ソフトウェア配布物を展開した場所にディレクトリを変更してから bin ディレクトリに変更して、コマンドラインから Mule を起動します。次のコマンドを実行します。

  • Windows 環境:

    $ $MULE_HOME\bin\mule.bat
  • Linux/Unix 環境:

    $ $MULE_HOME/bin/mule

これらのコマンドは、Mule をフォアグラウンドで実行し、起動スクリプトによってターミナルの標準出力に情報が表示されます。Mule の動作中は、他のコマンドを実行することはできません。

Mule を停止するには、スクリプトが動作しているターミナルで ​CTRL-C​ を押します。

Windows サービスとしての Mule の起動

Windows サービスとして Mule を実行するには、まず次のように実行して Mule をインストールします。

$ $MULE_HOME\bin\mule.bat install

インストール後、Mule をサービスとして実行することができます。

$ $MULE_HOME\bin\mule.bat start

Windows が再起動すると、​mule stop​ コマンドを使用した場合と同じように Mule サービスが停止します。 唯一異なる状況は、Windows がタイムアウトによってプロセスをキルした場合です。

Linux/Unix デーモンとしての Mule の起動

Mule を Linux/Unix デーモンとして実行するには、まず次のように実行して Mule をインストールします。

$ $MULE_HOME/bin/mule install

インストール後、Mule をデーモンとして実行することができます。

$ $MULE_HOME/bin/mule start

現在のユーザーセッションのバックグラウンドで Mule を起動するこのインストールステップを実行せずに Mule を起動することもできます。

次の例では、Mule を Unix コンソールから起動しています。

$ $MULE_HOME/bin/mule start
MULE_HOME is set to ~/Downloads/mule-enterprise-standalone-4.3.0
MULE_BASE is set to ~/Downloads/mule-enterprise-standalone-4.3.0
Starting Mule Enterprise Edition...
Waiting for Mule Enterprise Edition.................
running: PID:87318

スクリプトからの Mule の起動

Java サービスラッパーを使用せずに Mule をスクリプトまたは IDE から起動するために、​org.mule.MuleServer​ クラスを使用できます。このクラスはいくつかのパラメーターを受け入れます。

org.mule.MuleServer -config mule-config.xml

または

org.mule.MuleServer -builder <fully qualified classname> -config appContext.xml
  • -config​ は使用する 1 つ以上の設定ファイルを指定します。この引数を省略した場合、​mule-config.xml​ が存在する場合はこれを探して使用します。

  • -builder​ は使用する設定ビルダーの完全修飾されたクラス名です。この引数を設定しなかった場合、デフォルトの ​org.mule.config.builders.AutoConfigurationBuilder​ が使用され、使用可能なビルダーに基づいて設定ファイルの自動検出を試みます。最も一般的なシナリオでは、これは ​org.mule.config.spring.SpringXmlConfigurationBuilder​ に解決されます。

クラスパスを設定する最も簡単な方法は、配布の ​./lib/mule​ ディレクトリと ​./lib/opt​ ディレクトリにすべての JAR を含めることです。サーバーと各モジュールの連動関係レポートを確認して、どの JAR が特定のモジュールに必要かを正確に把握できます。

Mule の停止

Mule を停止するには ​stop​ コマンドを実行します。

次の例では、Mule を Unix コンソールから停止しています。

$ $MULE_HOME/bin/mule stop
MULE_HOME is set to /Applications/mule-enterprise-standalone-4.3.0
MULE_BASE is set to /Applications/mule-enterprise-standalone-4.3.0
Stopping Mule Enterprise Edition...
Stopped Mule Enterprise Edition.