5 SenseIDの展開に関する FAQ

SenseIDのインストール中によく発生する問題について記載しています。

Q1.展開先マシンのバージョンが古く、命令セットが低レベル(または対応する命令セットに AVX 命令セットが含まれていない)な状態です。ログを取得し確認するために、”tail -f tmp/worker.log.0” コマンドを実行したところ、ログ内に "SIGILL: illegal instruction” と出てきてしまいました。この問題の解決方法を教えてください。

A1. まず、マシンで対応している命令セットを確認します。

  1. cat /proc/cpuinfo コマンドを実行します。

  2. フラグを確認します。

AVXとAVX2の組み合わせが含まれていない場合、CPU命令セットがAVX命令セットをサポートしていないことを示します。

この場合、解決方法は2通りあります。

1) AVX 命令セットが含まれるマシンに変更します。

2) 現在のマシンで、強制的にSSE 命令セットが使用されるようにします。ただしサービスの性能は低下するため、処理スピードは半減します。

強制的にSSE命令セットを使用できるようにするには、go-workersのenvファイルを開き、FORCE_SET_SSE=falseFORCE_SET_SSE=trueに変更します。変更後、保存してから、go-workers サービスを再起動します。

サービスを再起動する方法は以下のとおりです。 ./stop/sh を実行してから、./start.sh を実行します。

Q2. go-workersで./start.shを複数回実行するなど、展開中に開始コマンド (./start.sh) が繰り返し呼び出される場合、またはポートが使用されている場合、ログを確認すると次のエラーが発生していました。

listen: listen tcp :50050: bind: address already in use

go-workers または go-cloud-api を開始する際は、対応する ./start.sh を一度だけ開始してください。

A2. 1) 下記のコマンドを実行します。

$ ps aux | grep supervisord

2) ./tool/supervisord -c config/supervisor.conf -dに対応するプロセス番号を強制終了します。

$ kill -9 PID

Q3. ライセンスの使用に関するエラータイプのまとめ

A3. 弊社が提供する「プライベートクラウドパッケージ」には、デフォルトでライセンスが含まれていません。ライセンスの詳細な利用方法については、プライベートクラウドファイルのライセンスの使い方を参照してください。

1)panic: bad license: -1

ライセンスが壊れている(空のライセンスなど)ので、再度ライセンスファイルを差し替えてください。

2) panic: open fixture/license/senseid_ocr/senseid_ocr.lic: no such file or directory

ライセンスがインポートされていないので、指定したフォルダにライセンスファイルをインポートしてください。

3)panic: bad license: -16

udid mismatch と表示され、ライセンスにバインドされているハードウェアの指紋と現在のデバイスのハードウェアの指紋が一致していません。

デバイスのハードウェア情報が変更されていないことを確認してください。

デバイスのUUIDが変更されていることを確認したら、新しいライセンスを申請できる事業者に新しいUUIDを提供して、新しいライセンスを忘れずに交換してください。

Q4 error:-8 ?

4. 主にモデルファイルに関連したファイル形式が間違っていることを意味します。

例えばWindows用の解凍ソフトを使用して、「プライベートクラウドパッケージ」を解凍してサーバーにアップロードすると、モデルファイルの一部が破損する可能性があります。そのため、インストールパッケージをサーバに再アップロードし、コマンドラインで解凍することをお勧めします。

Last updated