Asustor・QNAPの国内正規代理店である"Unistar(ユニスター)"様から、Asustor社の最新NAS"AS6804T"の評価機を貸与していただき、てんかく忍者NASとしての性能を評価しました。
https://unistar.jp/
評価機のご提供を頂いたユニスター様には、この場を借りて感謝します。
弊社で所有するAsustorのNAS"AS6510T"にてんかく忍者を入れたら凄いことになったよの記事を以前に書いていますので、そちらもご覧ください。
【オープンイノベーション】vol.34:てんかく忍者をNASに詰め込んでみた(てんかく忍者NASプロトタイプ)
https://www.nakasha.co.jp/future/open-innovation-meeting/vol34_tenkaku-nas-prototype.html
前回の検証で、現行のてんかく忍者クラウドと比較してGV-Syncによる登録時間が2倍以上に高速化され、4D-DBによる検索閲覧で10倍以上の高速化が可能になっていますが、GV-Syncによる静止画生成時のCPU負荷が100%になっており、ここが課題でした。
よって、今回はより高速なCPUを搭載したAsustor NASの3世代機"680*T"シリーズで検証してみたという経緯です。
留意事項:
本記事その他で記事にしている"てんかく忍者NAS"はR&Dセンターにて、将来のサービス化模索しながら検討しているプロトタイプであり、てんかく忍者のサービスラインナップとして提供されているモノではありません。(2025/03/05現在)
【評価機外観】
AS6804Tは、Ryzenの組み込み機器用CPUを搭載したAsustor最速のNASです。
スペックは下記のようになっています。
https://www.asustor.com/ja/product?p_id=86
CPU: | クアッドコアAMD Ryzen組み込みV3C14 CPU @ 2.3 GHz - 3.8 GHzターボ |
RAM: | ECC RAM:16 GB ECC DDR5-4800 (増設上限64GB) |
SSD: | NVMe SSD用のクアッドM.2スロット - PCIe 4.0でパフォーマンスが倍増 |
USB: | 2x USB4ポート(40 Gbps)、3x USB 3.2 Gen 2 Type-A(10Gbps) |
LAN: | 2 X 10 ギガビット イーサネット、2x 5ギガビットイーサネット、Wake on LANおよびWake on WANをサポート (5 GbE) |
HDDスロットは4台と10台がありますが、今回は4台のものを使っています。
HDD:WesternDigital Ultrastar 18TB
構成はRAID0でVolume1をシステムインストール用、Volume2をデータ、データベース用としました。
検証時はミニマムになっていますが、本番時はVolume1をRAID1、Volume2をRAID5or6で構成する想定をしています。
【開封の儀】
【使用したHDD】
評価機を開梱してから30分程度で利用可能になりました。
HDDを装着して、LANケーブル、ACケーブルを接続、電源ONで即稼働です。
(実際にはBIOS起動、システムディスク確認、ブートメディア確認などで数分待ちます。)
同じLAN内のDHCPサーバからIPアドレスを取得して、起動してきます。
LEDディスプレイに自機のIPアドレスが表示されていますので、このアドレスにWEBブラウザからアクセスします。
【DHCPで割り当てられたIPアドレス】
NASのIPアドレスにWEBブラウザでアクセスするとセットアップウィザードが開始されます。
詳細なセットアップ手順は割愛しますが、ここですることは、ADM(NASファームウェア)のアップデート、管理ユーザのアカウント設定、ネットワーク設定とボリューム(ディスク領域)の設定です。
ADMのバージョンチェックが走り、アップデートするかどうかの確認があります。この後の動作に影響する可能性があるので、初期に最新にしておいた方が良いでしょう。
アップデートの途中で最低でも1回、多い時は数回再起動が掛かる場合がありますが、立ち上がってくるのを待ちます。
【初期起動画面】
【ADM更新喚起】
【ADM更新】
【初期化開始】
NAS名称やadminアカウントのパスワードを設定します。
※adminとは別に管理ユーザアカウントを作成して、そちらで運用するのがGOODです。
【基本設定】
どのLANインタフェースをどのIPアドレスにするかや、リンクアグリゲーション(複数LANを組み合わせて冗長構成、速度アップとする≒チーミング)の構成などを設定します。
今回はLAN1をそのまま固定IPで使います。
※ASはLANを4つ(10GB*2、5GB*2)持っているので、それぞれに別のIPを振って異なるサブネットからのアクセスを個別に受け付けるようなこともできますし、上記のように2系統の冗長化・爆速イーサネットを構成することも可能です。
【ネットワーク設定】
今回の評価では、HDD2基の構成なので、シングルドライブ(RAID0)を二つ定義します。
今回は、ファイルシステムにEXT4を選択しましたが、データの安全性や効率的な世代バックアップが可能なBtrfsを選択してください。
※BTRFS(B-Tree File System)はLinuxのファイルシステムで、耐障害性、データの修復、スナップショット機能を有するフォーマットです。
【ボリューム設定】
てんかく忍者で使用するグループ、ユーザを追加し、権限の設定をします。
tenkaku | GID:1000 |
docker | GID:**** |
tenkaku | UID:****(Tenkakuグループ) |
maintener | UID:**** |
【アクセスコントロール - ローカルユーザ】
【アクセスコントール-ローカルグループ】
てんかく忍者で使用するdataフォルダを作成します。
data (volume2上に作成)
すべてのユーザはReadOnly、管理ユーザはフルアクセス可能、SMB、AFP、FTPなどからのアクセスは拒否。
【アクセスコントロール - 共有フォルダ】
8000がデフォルトになっていますが、ここを任意のポートに変更して、ファイアウォールなどでポート制限するのをお勧めします。
※今回はデフォルトの8000のまま運用しています。
【設定 - 一般】
AFPとSSHを設定しました。
【AFT】
DockerEngine、Git、Perlを追加インストールします。
【App Central】
ADMディフェンダーで、アクセス元のIPアドレスを制限します。
・LAN内のアドレスはすべてのポートを許可。
・信頼リストにNAS(てんかく忍者)を利用するネットワークのIPアドレス、ネットワーク、サブネットを登録します。
・自動ブラックリストを"有効"にすることでログイン失敗が連続した場合のクライアントIPをブロックします。
【LANからのアクセスを許可】
【利用者ネットワークのアドレスを許可】
【自動ブラックリストの有効化】
セットアップが完了したので、管理画面にアクセスします。
【デスクトップ】
【アクティビティモニタ】
【アクセスコントロール - ローカルユーザ】
【アクセスコントロール - ローカルグループ】
【ストレージマネージャ - ボリューム】
【ファイルエクスプローラ】
GV-Syncで動画から静止画に切り出し、DB登録する際のシステムリソースの状況です。
CPUは50-60%利用、メモリは約16GB、ディスクアクセスはRead/Write合計で160MB/sで推移しました。
LANは動画アップロード時点しか使われていないので、静止画切り出し時はゼロ負荷です。
【CPU利用率】
【メモリ利用量】
【ネットワーク利用量】
【ディスク転送量】
いよいよ今回の記事のクライマックスです。
登録時間はどのようになったのでしょうか?
使用したデータ:1時間尺の4K30FPS動画(40GB)
↓
静止画ボリューム:586フォルダ、96,691ファイル、504GB
※jpeg品質最高(圧縮なし)で書き出しているのでサイズは最大です。実際には90%、70%の圧縮を掛けることでサイズが半減以下になります。
参考:南阿蘇鉄道4画面マルチ 1480フォルダ(370*4フォルダ)、243,624ファイル、1.11TB
[2025/01/31 11:13:15] <START> 同期設定ファイル作成処理
[2025/01/31 11:13:16] <START> python 同期設定ファイル作成
[2025/01/31 11:13:16] <COMMAND> $ export LANG=ja_JP.UTF-8; python3 /var/www/html/py/createSyncSettings.py -json /home/gvsync/data/Movie2Raster/input/other/settings/settings.json --log_dir /home/gvsync/data/Movie2Raster/logs/settings
[2025/01/31 11:14:35] <END> 同期設定ファイル作成処理
[2025/01/31 11:18:51] <START> 動画静止画書き出し処理
[2025/01/31 11:18:51] <SUCCESS> DB(4d_db)接続
[2025/01/31 11:18:51] <SUCCESS> jobs テーブル登録 [id: 28]
[2025/01/31 11:18:51] <SUCCESS> 静止画書き出し用設定ファイル書き出し
[2025/01/31 11:18:51] <START> python 動画静止画書き出し
[2025/01/31 12:22:25] <TIME> movie2raster: 3813.191118 [sec]
[2025/01/31 12:22:25] <END> python 動画静止画書き出し
[2025/01/31 12:22:25] <SUCCESS> 静止画書き出し結果 csvファイル読み込み
[2025/01/31 12:22:25] <SUCCESS> DB(4d_db)接続
[2025/01/31 12:22:26] <SUCCESS> images テーブル作成 [images_20210319]
[2025/01/31 12:22:26] <SUCCESS> labels テーブル作成 [labels_20210319]
[2025/01/31 12:22:26] <START> images テーブルへのデータ登録 [jobs_id: 28, table: images_20210319]
[2025/01/31 12:32:35] <SUCCESS> images テーブルへのデータ登録 [jobs_id: 28, table: images_20210319]
[2025/01/31 12:32:35] <SUCCESS> images テーブル更新用CSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000028/4d_db-images_20210319.csv]
[2025/01/31 12:32:35] <SUCCESS> labels テーブル新規登録用TSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000028/4d_db-labels_20210319.tsv]
[2025/01/31 12:32:35] <TIME> regist images: 3813.191118 [sec]
[2025/01/31 12:32:35] <SUCCESS> jobs テーブル更新
[2025/01/31 12:32:35] <SUCCESS> BOX転送またはNASへのコピー処理をスキップしました。
[2025/01/31 12:32:35] <END> 動画静止画書き出し処理
[2025/02/27 15:03:37] <START> 同期設定ファイル作成処理
[2025/02/27 15:03:37] <START> python 同期設定ファイル作成
[2025/02/27 15:03:37] <COMMAND> $ export LANG=ja_JP.UTF-8; python3 /var/www/html/py/createSyncSettings.py -json /home/gvsync/data/Movie2Raster/input/other/settings/settings.json --log_dir /home/gvsync/data/Movie2Raster/logs/settings
[2025/02/27 15:08:28] <END> 同期設定ファイル作成処理
[2025/02/27 15:12:14] <START> 動画静止画書き出し処理
[2025/02/27 15:12:15] <SUCCESS> DB(4d_db)接続
[2025/02/27 15:12:15] <SUCCESS> jobs テーブル登録 [id: 2]
[2025/02/27 15:12:15] <SUCCESS> jobs テーブル登録 [id: 3]
[2025/02/27 15:12:15] <SUCCESS> jobs テーブル登録 [id: 4]
[2025/02/27 15:12:15] <SUCCESS> jobs テーブル登録 [id: 5]
[2025/02/27 15:12:15] <SUCCESS> 静止画書き出し用設定ファイル書き出し
[2025/02/27 15:12:15] <START> python 動画静止画書き出し
[2025/02/27 17:42:44] <TIME> movie2raster: 9029.304461 [sec]
[2025/02/27 17:42:44] <END> python 動画静止画書き出し
[2025/02/27 17:42:44] <SUCCESS> 静止画書き出し結果 csvファイル読み込み
[2025/02/27 17:42:44] <SUCCESS> DB(4d_db)接続
[2025/02/27 17:42:45] <SUCCESS> images テーブル作成 [images_20230624]
[2025/02/27 17:42:45] <SUCCESS> labels テーブル作成 [labels_20230624]
[2025/02/27 17:42:45] <START> images テーブルへのデータ登録 [jobs_id: 2, table: images_20230624]
[2025/02/27 17:48:51] <SUCCESS> images テーブルへのデータ登録 [jobs_id: 2, table: images_20230624]
[2025/02/27 17:48:51] <SUCCESS> images テーブル更新用CSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000002/4d_db-images_20230624.csv]
[2025/02/27 17:48:51] <SUCCESS> labels テーブル新規登録用TSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000002/4d_db-labels_20230624.tsv]
[2025/02/27 17:48:51] <START> images テーブルへのデータ登録 [jobs_id: 3, table: images_20230624]
[2025/02/27 17:55:03] <SUCCESS> images テーブルへのデータ登録 [jobs_id: 3, table: images_20230624]
[2025/02/27 17:55:03] <SUCCESS> images テーブル更新用CSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000003/4d_db-images_20230624.csv]
[2025/02/27 17:55:03] <SUCCESS> labels テーブル新規登録用TSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000003/4d_db-labels_20230624.tsv]
[2025/02/27 17:55:03] <START> images テーブルへのデータ登録 [jobs_id: 4, table: images_20230624]
[2025/02/27 18:01:34] <SUCCESS> images テーブルへのデータ登録 [jobs_id: 4, table: images_20230624]
[2025/02/27 18:01:34] <SUCCESS> images テーブル更新用CSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000004/4d_db-images_20230624.csv]
[2025/02/27 18:01:34] <SUCCESS> labels テーブル新規登録用TSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000004/4d_db-labels_20230624.tsv]
[2025/02/27 18:01:34] <START> images テーブルへのデータ登録 [jobs_id: 5, table: images_20230624]
[2025/02/27 18:08:03] <SUCCESS> images テーブルへのデータ登録 [jobs_id: 5, table: images_20230624]
[2025/02/27 18:08:03] <SUCCESS> images テーブル更新用CSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000005/4d_db-images_20230624.csv]
[2025/02/27 18:08:03] <SUCCESS> labels テーブル新規登録用TSVファイル作成 [path: /home/gvsync/data/Movie2Raster/output/4d_db/000005/4d_db-labels_20230624.tsv]
[2025/02/27 18:08:03] <TIME> regist images: 9029.304461 [sec]
[2025/02/27 18:08:03] <SUCCESS> jobs テーブル更新
[2025/02/27 18:08:03] <SUCCESS> BOX転送またはNASへのコピー処理をスキップしました。
[2025/02/27 18:08:03] <END> 動画静止画書き出し処理
【GV-Sync登録時間の比較】最下段が今回の結果
快適の一言です。最も重い11K360静止画(一枚20MB)の閲覧でも数秒、4K4画面マルチ画面表示で1秒-2秒で表示されます。
クリックした瞬間に画像が表示されるのは、WindowsローカルPCのエクスプローラで画像閲覧している感覚です。
ログイン・地図初期表示 | 1000ms |
地図スクロール | 20ms |
マルチ画面表示(4面)初回 | 1000ms |
画像送り(リモート) | 5ms |
画像送り(キャッシュ) | 5ms |
地図-ビューア2画面表示 | 500ms |
地図-ビューア2画面表示・前後移動 | 50ms |
ビューア2画面表示 | 1000ms |
ビューア2画面表示・前後移動 | 500ms |
【4D-db 地図:4マルチ画面表示】
▼この記事を書いたひと
R&Dセンター 松井 良行
R&Dセンター 室長。コンピュータと共に35年。そしてこれからも!
●富士見事務所 TEL : 052-228-8744(交通部営業課) FAX : 052-323-3337(交通部共通)
〒460-0014 愛知県名古屋市中区富士見町13−22 ファミール富士見711 地図
PoCのお問い合わせ:交通部営業課
技術的なお問い合わせ:R&Dセンター