# 学習後、結果が全てN/A表示になる場合にはどう対処すればいいの? - アセットアップロード時のタグ付け、タグのラベル付与で間違いがないかを確認する >ユーザーズマニュアルの以下の項目を確認してください。 >- [ユーザーズマニュアル -> タグの設定](../usermanual/index_2.html#set-tags) >>**アセットのアップロード時に、タグのつけ忘れがないか?** >- [ユーザーズマニュアル -> ラベルを付与する](../usermanual/index_3.html#label-assets) >>**一つのラベルに全く異なるアセット(タグ)を定義していないか?** - 時系列、振動データをお使いの場合:CSVファイルのフォーマットが正しいか確認する >MANUFACIAが、お使いのCSVファイルフォーマットをサポートしていない(ヘッダー行がない、または、一部データが欠けている等)可能性が考えられます。同梱しておりますテストデータと比べていただくか、[CSVフォーマットチェッカー](../csv_format_checker/index_1.html#what-is-csv-format-checker)のご使用を推奨します。 - MANUFACIA起動時のメモリが枯渇していないか確認する >ターミナルで ```free``` を実行する。 - GPUカードが他のアプリケーションからも使用されていないか確認する >GPU_RAMの使用量を確認する。ターミナルで ```nvidia-smi``` を実行する。 - プロキシ経由でのアクセスになっていないか確認する >貴社のIT担当者にご確認下さい。MANUFACIAはプロキシ経由でのアクセスには仕様として対応しておりません。プロキシ設定を解除して試行をお願いします。 - Nvidia社製ドライバーのバージョンを確認する >インストール済みのNvidiaドライバーでは、お使いのMANUFACIAが動作しない可能性があります。[インストールマニュアル -> 推奨システム要件](../installation_manual_gpu/index_1.html#recommended-system-requirements)を参考にしてNvidiaドライバーのバージョン確認をお願いします。 >上記以外の場合には、```manufacia-ctrl logs --all```で出力されたログファイルを圧縮して、サポート窓口までご送付願います。 >ログファイルは、以下のフォルダに保存されます。 >>var/log/supervisor # manufacia-ctrl startで起動しないんだけど。。。 コンソールのエラーがどこで出ているかを確認してください。 a. "Starting containers..." の後
+ docker-compose_up.log b. "Initializing database..." の後
c. "This Host is Linux System, tuning start ... " の後 + docker-stop.log + docker-update.log + docker-start.log .manufacia/versions/x.x.x-gpu/bin/error_logs/ フォルダ内にある上記のファイルのERROR行を確認してください。 ## MANUFACIAの実行ファイルパスが設定されているか ``` $ export PATH=$HOME/.manufacia/bin:$PATH ``` ## ホストの設定が正しいかどうか ```hostname -I``` を実施し、戻値のIPアドレスが例えば以下のように設定されているか。 ``` $ export THIS_HOST=192.168.100.1 ``` ## ログファイルのエラーメッセージを調べてみる ``` $ manufacia-ctrl logs --all ``` ## ドライバー・ライブラリのバージョン確認 MANUFACIAがサポートしているドライバーやライブラリのバージョンは [インストールマニュアル -> 推奨システム要件](../installation_manual_gpu/index_1.html#recommended-system-requirements)で確認してください。 # アセットの一部または全てがアップロードできないけれど、どうしたらいいの? アセット登録画面のプレビューではサムネイルやアイコンが表示されるのに、【ファイルをアセットに追加】してもそのデータファイルの一部、もしくは全てがアップロードされない場合には、ハードディスクの読み取りエラーが発生している可能性があります。 以下のコマンドを実行して ``` $ docker logs manufacia_db_1 ``` 出力結果画面またはログに以下のような行 ``` : : 2021-07-28 03:22:30.426 UTC [5628] ERROR: could not read block 1 in file "base/16384/16506": read only 0 of 8192 bytes : : ``` が見つかった場合には、ハードディスクの一部が破損して読み取りが出来なくなっているということです。直ちに使用を止め、バックアップを取ってから、ハードディスクを交換後に復旧してください。 (disk-full-what-to-do)= # Diskが一杯になったみたいだけど、どのファイルを整理したらいいの? アプリケーションを使い続けるとローカルディスクが一杯になることがあります。 ``` $ df Filesystem 1K-blocks Used Available Use% Mounted on udev 8189636 0 8189636 0% /dev tmpfs 1642520 1188 1641332 1% /run /dev/sda1 522541784 514764840 7776944 99% / ... ``` rootのディレクトリ (/)  のUse%が100の場合にはDiskが一杯になっています。このとき、アプリケーションコンテナ内のtemporaryファイルを削除することである程度ディスク領域を空けることが可能です。 削除可能なのは以下の2種類です。 - 前処理用に作成されたキャッシュファイル - アプリケーションのログファイル ## キャッシュファイルの削除 アプリケーションで作成されるキャッシュファイルはappコンテナ内の /root/.cache/draupnir 以下に保存されています。 ``` $ docker exec -it manufacia_app_1 /bin/bash app$ cd /root/.cache/draupnir app$ ls 168ea5becaff058a130761e029e512dafdb733fba3bf3a4a477e426a5b892cb2 168ea5becaff058a130761e029e512dafdb733fba3bf3a4a477e426a5b892cb2-meta c9d1526a96cca5656842b43b3bead16fd4857f3fbc9d3b287d1a8c48092dbd69 c9d1526a96cca5656842b43b3bead16fd4857f3fbc9d3b287d1a8c48092dbd69-meta ... ``` ここのファイルは必要な場合に自動的に再作成されるため、削除しても問題ありません。 ## アプリケーションのログファイルの削除 アプリケーションのサーバのログファイルはappコンテナに保存されています。 ``` $ docker exec -it manufacia_app_1 /bin/bash ``` ここの下記のディレクトリ以下に保存されています。 - /root/rb/log - /var/log/supervisor - supervisord.log - web.log - worker.log ``` app$ cd /root/rb/log app$ rm * ``` ログは削除しても問題ありませんが、過去のログが確認することができなくなることに留意してください。 # appコンテナのアプリケーションが起動していないみたいだけど。。。 appコンテナが再起動された場合、sshプロセスが自動的に起動していない可能性があります。 appコンテナに入り、プロセスが起動しているかを確認します。期待するプロセスがすべて起動していれば下記のような状態となります。 ``` $ docker exec -it manufacia_app_1 supervisorctl status sshd RUNNING pid 804, uptime 0:03:02 web RUNNING pid 803, uptime 0:03:02 worker RUNNING pid 805, uptime 0:03:02 ``` 仮に**sshd**が動いていない場合には下記のような状態になります。 ``` $ docker exec -it manufacia_app_1 supervisorctl status sshd STOPPED Jul 17 03:23 PM web RUNNING pid 803, uptime 0:05:25 worker RUNNING pid 805, uptime 0:05:25 ``` **sshd**を起動するには次のコマンドを実行します。 ``` $ docker exec -it manufacia_app_1 supervisorctl restart sshd ``` プロセスを確認し、下記の状態になっていれば問題ありません。 ``` $ docker exec -it manufacia_app_1 supervisorctl status sshd RUNNING pid 803, uptime 0:22:46 web RUNNING pid 802, uptime 0:22:46 worker RUNNING pid 804, uptime 0:22:46 ``` # サーバリブート後にMANUFACIAをどうやって起動したらいいの? サーバリブート後はdockerコンテナが停止状態となっているため、起動を行う必要があります。 dockerコンテナを起動するには次のコマンドを実行します(コンテナの起動順序があるため、以下のコマンドをそのまま利用する) ``` $ docker start manufacia_db_1 manufacia_redis_1 manufacia_jarngreipr_1 manufacia_broker_1 manufacia_frontend_1 manufacia_app_1 ``` dockerコンテナを起動した後、アプリケーションの起動確認を行います。 もし、MANUFACIAにアクセスできない場合は、IPアドレスが変更されている場合があるため、問合せいただく必要があります。 # データのバックアップとリストアはどうやってやるの? バックアップを取得し、リストアする方法を記載します。 リストアの前提としては、MANUFACIAのメジャーVersionが同一のものとします。メジャーVersionが異なっている場合は、原則リストアはできません。 例: | リストアの可否 | バックアップ前のバージョン | リストア時のバージョン | | :------------- | :------------------------- | :--------------------- | | リストア可 | MANUFACIA_v2.0 | MANUFACIA_v2.1 | | リストア不可 | MANUFACIA_v2.0 | MANUFACIA_v3.0 | バックアップの取得とリストアの機能は、MANUFACIA_v2.0から追加されたものです。MANUFACIA_v1.x をご利用中の方で、バックアップ取得とリストアの機能を用いる場合は、一度MANUFACIA_v1.xをアンインストールしてから、MANUFACIA_v2.0以上のVersionをインストールする必要があります。 ```{hint} WSL2版MANUFACIA-CPUをお使いの場合は、バックアップの際には、ファイルをWSL2内OSからWindowsフォルダへ移動して保管。リストアの際には、バックアップしたファイルをWindowsの管理領域からWSL2内のOSフォルダへ移動する必要があります。 ``` ## バックアップを取得する ```sudo su -```でrootへ切り替えたのち、バックアップ対象を確認します。 ```console # cd /var/lib/docker/volumes/ # ls 32a1abc7f27d171f41cadebb6853628f057a9f7fb6ca5a8374588a88eb125b4f 4a932f10b366e924a3f5639dd772f6978ea3f181ad2468801e55ba067ce197aa cdb73458638f40c497397ea38eb404d34309cbbba9a17ecb95994d19e3d1e37e manufacia_app_storage 370dfb363cdb4d59a9340498575a7dbd355c4115f639ce07960740e662e77c99 cc48cb9062e364259d803487b1c2298fee62b22d0f8b08eb255546bfc50d3a00 ede73affe0e762d339273231ae0bb04d5097b019fe3514a9bd587cb2fd3de16b manufacia_ps_data ``` バックアップデータを保存するディレクトリを任意の場所に作成します。 例として、/root/backup ディレクトリを作成します。 ```console # mkdir /root/backup ``` バックアップを作成します。 ```console # cd /var/lib/docker/volumes/ # cp -rp manufacia_app_storage manufacia_ps_data /root/backup ``` バックアップが作成されていることを確認します。 ```console # ls /root/backup manufacia_app_storage manufacia_ps_data ``` ````{hint} WSL2版MANUFACIA-CPUをお使いの場合は、WSL2内のMANUFACIA-CPUにあるバックアップファイルをWindows側へ転送してください。WSL2内のMANUFACIA-CPUからは、WindowsのCドライブに `/mnt/c` でアクセスできます。 WSL2版MANUFACIA-CPU内のバックアップファイルをWindowsのC:\backupディレクトリへ転送する例 ```console # cd /root # tar cvfz backup.tar.gz backup # mv backup.tar.gz /mnt/c/backup/ ``` ```` ## リストアする リストアには、以下の条件が必要です。 - リストア対象のバックアップファイルがあること。(例として、/root/backup 配下に保存されていることとします。) - /var/lib/docker/volumes配下にある「manufacia_app_storage」「manufacia_ps_data」フォルダを削除もしくは移動しておくこと(バックアップとして保管しておきたい場合は移動する)。 ````{hint} WSL2版MANUFACIA-CPUをお使いの場合は、Windows上のバックアップファイルをWSL2内のMANUFACIA-CPUへファイルを転送してください。 WSL2内のMANUFACIA-CPUからは、WindowsのCドライブに`/mnt/c`でアクセスできます。 WSL2版MANUFACIA-CPUからWindowsのC:\backupディレクトリ内バックアップファイル(backup.tar.gz)を取り込む例 ```console # cd /root # cp /mnt/c/backup/backup.tar.gz backup.tar.gz # tar xvfz backup.tar.gz ``` ```` リストア対象のバックアップファイルを/var/lib/docker/volumesにコピーします。 ```console # cd /root/backup # ls manufacia_app_storage manufacia_ps_data # cp -rp manufacia_app_storage manufacia_ps_data /var/lib/docker/volumes/ ``` dockerを削除します。 ```console # docker ps -aq | xargs docker rm -f 9daa4c1b44a8 5aa2c20db00f f0c4c7424380 144b976334d6 888b72a7fd8f 7858f80a8926 ``` MANUFACIAを起動します。 ```console # manufacia-ctrl start Starting containers... Creating manufacia_redis_1 ... done Creating manufacia_frontend_1 ... done Creating manufacia_broker_1 ... done Creating manufacia_db_1 ... done Creating manufacia_app_1 ... done Creating manufacia_jarngreipr_1 ... done Initializing container infos... Initializing core... Initializing database... manufacia-0.10.0.1.3 ... ok manufacia-0.10.0.1.3 ... ok Cleaning up... Done. ``` ブラウザでMANUFACIAにアクセスし、バックアップ時点のデータに戻っていることを確認します。