メインコンテンツ

マシンの起動時に自動開始する mjs サービスの構成 (UNIX)

systemd システムとサービス マネージャーを使用して、マシンの起動時に mjs サービスを起動できます。この手順は必須ではありませんが、システム クラッシュの際に役立ちます。構成した mjs サービスはマシンの再起動時に実行を開始し、MATLAB® ジョブ スケジューラまたはワーカーのセッションが実行されているかどうかに関係なく、明示的に停止されるまで稼働し続けます。

以下の手順において、matlabroot はインストールされている MATLAB Parallel Server™ ソフトウェアの場所を示します。以下の説明でこの文字列が使用されていたら、パスをご使用の場所に置き換えてください。

以下の手順を実行するには、ルート権限が必要です。

Debian、Fedora、SUSE および Red Hat (非 Fedora) のプラットフォーム

以下の手順に従って、クラスター ノードごとにユニット ファイルを作成し、システムの起動時に mjs サービスを自動開始するように構成します。

  1. /etc/systemd/system フォルダーに、mjs.service という systemd ユニット ファイルを作成して編集します。

    nano /etc/systemd/system/mjs.service
  2. mjs.service ファイルに以下の構成オプションを追加します。

    [Unit]
    Description=MATLAB Job Scheduler
    
    [Service]
    Type=forking
    ExecStart=matlabroot/toolbox/parallel/bin/mjs start 
    
    [Install]
    WantedBy=multi-user.target
    

    systemd による mjs サービスの停止または再起動が可能かどうかも指定できます。詳細については、ご使用の UNIX® プラットフォームの systemd のドキュメンテーションを参照してください。

    ユニット ファイルを保存します。

  3. Red Hat (非 Fedora) のプラットフォームでは、ユニット ファイルのアクセス許可を設定します。

    chmod 664 /etc/systemd/system/mjs.service
  4. systemd サービス ファイルを再度読み込み、変更内容を更新します。

    systemctl daemon-reload

  5. マシンの起動時における mjs systemd サービスの自動開始を有効にします。

    systemctl enable mjs.service

    また、mjs サービスを開始して、mjs systemd サービスが正常に構成されたかどうかを確認することもできます。

    systemctl start mjs.service

    mjs systemd サービスのステータスを確認するには、次のコマンドを入力します。

    sudo systemctl status mjs.service

systemd mjs サービスの停止

通常は、systemd システムおよびサービス マネージャーを使用して、起動時に mjs サービスを開始し、マシンがシャットダウンするまで実行し続けます。ただし、マシンから MATLAB Parallel Server 製品をアンインストールする予定であれば、mjs systemd サービスが不要になるため、これも無効にすることができます。

メモ

mjs systemd サービスを停止または無効にするには、root 権限がなければなりません。

  1. 次のコマンドを使用して mjs systemd サービスを停止します。

    systemctl stop mjs.service
    
  2. システムの再起動時に mjs systemd サービスが開始しないように、このサービスを無効にします。

    systemctl disable mjs.service
  3. mjs systemd ユニット ファイルと、残存しているターゲット ファイルおよびそれに関連するシンボリック リンクを手動で見つけて削除します。

    find /etc/systemd/system | grep "mjs.service"
    find /usr/lib/systemd/system | grep "mjs.service"

  4. systemd サービス ファイルを再度読み込んでリセットし、変更内容を更新します。

    systemctl daemon-reload
    systemctl reset-failed
    

参考

トピック