IoTデバイスや連続動画の録画などを構築する場合、低消費電力で高容量の記憶システムが必要であり、できれば安価なハードウェアを使用することが望ましいです。特定のケースでは、デバイスがリモートであったり、産業機器、ロボット、または車両に取り付けられるなど、高い振動強度に対処する必要があるかもしれません。このような状況では、固体記憶装置が不可欠です。
私は、Raspberry Piを使用してネットワーク接続ストレージサーバーを構築することから始めました。結局のところ、それらは素晴らしいシングルボードコンピューターです。しかし、この種の用途にはあまり理想的ではないいくつかの点があります。まず、最新の3B+ではネットワークポートが300Mbit/s、古い世代では100Mbit/sしかありません。次に、USBポートはUSB 2.0(480Mbit/s)のみで、USB 3.0(5Gbit/s)よりもかなり遅いです。USBコネクタは、高振動環境では常に最適とは限らず、このために断続的な接続エラーを起こしたり、ケーブルがしっかりと固定されていない場合には疲労で故障することがあります。特にUSB 2.0のケーブルは、VFD駆動モーターなどの高EMI環境では特に性能が良くありません。
市場には魅力的な選択肢が数多くありましたが、私はイギリスのディストリビューター(https://odroid.co.uk)からODroid HC1(Home Cloud 1)を選びました。これは非常にコンパクトで手頃な価格のシングルボードコンピュータです。HC1の広告されているベンチマークは、同じ価格帯の他のシングルボードコンピュータと比較してもかなり驚異的です。
Hard Kernelから直接購入した場合、ユニットのコストはUS$49で、送料、電源、ハードドライブは含まれていません。Hard Kernelは、支払いに応じて処理能力の高いRasPiフォームファクターの印象的なボードも提供しています。HC1は、ネットワーク接続ストレージを制御することに特化しており、余計な機能を一切省いた点で私にとって魅力的でした。また、巨大なヒートシンクに取り付けられているにもかかわらず、かなりコンパクトで、オープンエンクロージャーとしても機能しますが、上部カバーを付けたい人のためのオプションもあります。
WiFi機能が組み込まれていること、そしてディスク障害が発生した場合のRAIDとデータセキュリティのために複数のドライブを動かす能力があることを望んでいました。Odroid HC1はそのような機能に欠けていますが、USB WiFiドングルを接続するために使用できる単一のUSBポートを保持しています。私は、大量のデータの書き込みや読み取りではなく、モバイルデバイスからドライブの内容を確認できるように、便利のためにWiFiに興味がありました。一方、RAIDは、x86ベースのマシンを見始めたり、グラフィックプロセッサを追加したり、追加の電力を消費する機能を検討したりしない限り、シングルボードコンピュータでは少し難しいです。コンパクトで低電力のオプションを見つけるのは難しく、RAIDを諦めなければなりませんでした。
ストレージデバイスには、1テラバイトのSamsung 860 Evo SATA SSDを選び、ブートデバイスにはSandiskの16ギガバイトmicroSDHCカードを使用しました。古い2ギガバイトのmicroSDカードを使ってみましたが、オペレーティングシステムには遅すぎました。16GBのSandisk microSDHCは、市場に出ている名前のあるカードの中で最も安価でした。非常に頑丈なセットアップを求めている場合、Samsung 860 Evo PROドライブは価格が2倍になりますが、Evoのフラッシュ耐久性のほぼ4倍を提供するため、重要なデータを収集するリモートインストールにはそれだけの価値があるかもしれません。PROバージョンは、かなり少ない電力を消費します。Samsungからもう少し予算に優しいオプションはQvoラインで、Evoのフラッシュ耐久性の約半分です。私のハードウェアはRAIDのオプションを提供していないため、他のブランドよりもSamsungを選びました。過去に問題がなく、連続運用中のものが9台あるため、以前にうまく機能したものを引き続き使用することにしました。
機械式ディスクは、低電力、振動が激しい、または厳しい環境には適していません。ストレージ容量に対して非常に安価ですが、振動、ほこり、湿気が原因で非常に早く故障します。SSDは機械式ディスクよりもはるかに少ない電力を消費し、スリープ状態からの起動時のスピンアップ時間に悩まされることもありません。
購入後のSamsung 860 EVO SSDとODroid HC1。
シングルボードコンピュータ用のいくつかのネットワーク接続ストレージオペレーティングシステムがあります。私は、ARMベースのシングルボードコンピュータの多くで動作し、異なるルート(例えばRaspberry Piのような)を選んだ場合でもフォローできるように、OpenMediaVaultを使用することにしました。また、設定や共有/ユーザーの管理を行うためのウェブインターフェースが非常に使いやすく、コマンドラインやSSHを必要としません!
ODroid HC1を設定して実行するのは、ハードディスクを接続し、SDカードをフラッシュして接続し、最後にイーサネットと電源を接続するだけの簡単な作業です。これらのステップを順に見ていきましょう。
まず、ファームウェアイメージをSDカードに転送しましょう。
Sourceforgeから「OMV_4_Odroid_XU4_HC1_HC2.img.xz」イメージをダウンロードします。
お好みのイメージフラッシャーをダウンロードしてください。この記事では、使いやすさからEtcher(https://etcher.io/)を使用します。
microSDカードをコンピューターに挿入します。
Etcherを開き、ダウンロードしたイメージとドライブを選択します。
Flash!をクリックします。
EtcherがSDカードにイメージをフラッシングして検証している間に、ODroid HC1とハードドライブをHC1のSATAコネクタに単純に接続することで組み立てることができます。
ODroid HC1とSamsungディスクを接続すると、非常にコンパクトなネットワークアタッチドストレージができます。
その後、付属のネジを使用してドライブを固定します。
次に、イーサネットケーブルを接続します。
イーサネットケーブルを接続すると、すべてのハードウェアの接続が完了します。
EtcherがSDカードのフラッシュを完了したら、HC1に差し込んで電源を接続できます。OpenMediaVaultは、最初の起動時に安定したインターネット接続を必要とします。私は最初にHC1を起動したとき、特に高品質ではなく、無線リンクを含むネットワークに接続していましたが、デバイスを動作させるのにかなりの困難がありました。しかし、HC1をネットワークの有線部分に直接接続すると、すぐに成功しました。
最初の起動には時間がかかることがあるので、お茶やコーヒーを入れたり、このブログの他の記事をチェックしたりして待ちましょう。HC1を少なくとも15分間起動してインストールさせてください。完了したかの視覚的な表示がないので、早すぎる何かをするよりも、デバイスをもう少し長く放置した方が良いです。
ネットワーク上でDHCPアドレスを提供しているもの(通常は自宅や小規模オフィスではインターネットルーター)を確認し、接続されているクライアントを見てODroidのIPアドレスを見つけたいと思うでしょう。または、IPスキャンツールを使用して見つけることもできます。人気の選択肢はAngry IP Scannerです(Javaが必要ないため、私はレガシーバージョンを好みます)。これがネットワーク上の唯一のODroidである場合、IPアドレスを見つける手間を省いて、ウェブブラウザでhttp://odroidxu4/にアクセスすることができます。それ以外の場合は、ブラウザでIPアドレスにアクセスしてください。
OpenMediaVaultの設定は、ログインから始まります。
デフォルトのユーザー名とパスワードはadmin / openmediavaultです。
最初に行いたいことは、System⇒General Settingsに移動し、Web Administrator Passwordでパスワードを変更することです。
次に、System⇒Update Managementに移動して、最新のパッケージをすべて持っていることを確認します。[Check]ボタンを押し、Package Informationの横にあるチェックボックスをクリックしてすべてを選択し、[Update]ボタンを押します。
OpenMediaVaultがアップデートをインストールする間、しばらくお待ちください。
アップデートが完了したら、再起動したくなるでしょう。ダッシュボードの右上にある⋮メニューアイコンをクリックして、再起動を選択できます。
既存のハードドライブを使用している場合、またはハードドライブが事前にフォーマットされている場合は、進む前にパーティションを削除する必要があります。ストレージ⇒ファイルシステムメニューに移動し、/dev/sda*のエントリを選択して削除します。ただし、起動中のSDカードである/dev/mmc
項目には触れないようにしてください!
ハードディスクの設定には、ファイルシステムを作成する必要があります。
空のディスクがある場合、[作成]ボタンをクリックできます。ドライブにボリュームラベルを付け、ファイルシステムにEXT4が選択されていることを確認し、OKをクリックします。
これには数分かかることがあります。
それが完了したら、[閉じる]をクリックし、/dev/SDA1を選択してから[マウント]ボタンをクリックします。その後、ドライブをマウントするために[適用]をクリックする必要があります。
適用ボタンはデバイステーブルの右上隅にあります。
次に、ファイル共有にアクセスするためのユーザーが必要になります。メニューからアクセス権管理⇒ユーザーに移動し、追加をクリックします。
ストレージの設定が完了したので、次はアクセス権管理の設定に移ります。
ユーザー名とパスワードを設定して追加をクリックします。その後、新しいファイルシステムをマウントしたときと同様に、変更を適用する必要があります。これで、ファイル共有にアクセスするユーザーができました。
新しいユーザーを作成する際には、基本的なオプションの設定が必要になります。
アクセス権管理⇒共有フォルダーに移動し、追加をクリックします。
「logdata」のような名前を共有に付けて追加をクリックします。理想的には、「他のユーザー」のアクセスを拒否して、フォルダーにアクセスできるのはユーザーのみにするべきです。
共有フォルダーを作成することで、先ほど作成したユーザーがネットワーク接続ストレージへのデータの転送を行うことができます。
共有が作成されたら、それを選択してから権限ボタンをクリックし、ユーザーを追加します。
読み書きのチェックボックスを選択してから保存をクリックします。再び、これらの変更を適用する必要があります。
最後に、先ほどクリックしたPrivilegesボタンの隣にあるACLボタンをクリックし、同じ操作をしてから適用して閉じます。
Services - SMB/CIFSメニューオプションに移動します。これはデバイス上のファイルサーバーです。
有効にするをクリックしてから保存し、適用します。
変更を保存するために適用ボタンをクリックするのを忘れないでください。
SMBサーバーを有効にしたら、Sharesタブをクリックし、次に追加ボタンをクリックします。以前に作成した共有を選択し、保存ボタンをクリックしてから変更を適用します。
Windowsでは、Windowsエクスプローラーで\\odroidxu4\(または\\ipaddress\)にアクセスして、共有が正しく設定されているか確認できます。求められたら、先ほど作成した資格情報を入力します。
ネットワーク上の他のコンピューターからOCDroid上の共有フォルダーを見てアクセスするために、私たちの資格情報を使用できます。
ドライブへのコピーまたはドライブからのコピーでは、有線ネットワーク上で約95-115Mbytes/秒の転送速度が出るはずで、これはギガビットネットワークが転送できる速度とほぼ同じです。HC1のスループットはかなり印象的です。
OpenMediaVaultは、他のファイル転送手段もサポートしています。データを生成するデバイスがSMBファイルシステム(Windows共有)をサポートしていない場合、FTPを有効にすることも検討するかもしれません。一般的に、FTPはSMBほど速くはありませんが、マイクロコントローラーを使用している場合、SMB共有よりも実装が簡単です。
FTPサーバーは、遠隔地からサーバーを閲覧するのにも便利です。基本的なマイクロコントローラーからFTPサーバーにアクセスしたい場合、SSLが必須ではなく、オプションであることが望ましいでしょう。FTPサーバーをSSLなしで実行する必要がある場合は、NASが接続されているネットワークへのVPNトンネルを介してのみ、インターネット経由でサーバーにアクセスすべきです。
サービス⇒FTPに移動し、有効化ボックスをチェックして保存をクリックします。
次に、共有タブに移動し、上記のSMB共有と同じように共有を追加します。保存をクリックし、設定変更を適用するのを忘れないでください。
リモートデータストレージサーバーを構築したいが、消費電力が少なく、スペースもあまり取らないものをお探しの場合、Odroid HC1は優れた選択肢です。非常に湿度が高いか湿った環境にいる場合は、コンフォーマルコーティングを使用して、基板の両面にたっぷりと塗布し、使用しているハードドライブの内部にも塗布することをお勧めします(ソリッドステートディスクを使用している場合のみ)。コンフォーマルコートは、基板が腐食するのを防ぎます。
Odroidに搭載された大型ヒートシンクは、セットアップに大きな剛性を加えるため、SATAコネクタが振動や衝撃によって疲労することはほとんど心配ありません。ソリッドステートドライブと組み合わせることで、頑丈なネットワーク接続型ストレージデバイスを手に入れることができます。
前述の通り、究極の堅牢性を実現するためには、データを自動的に2つのドライブにミラーリングすることが理想的です。さらに良い方法として、複数のドライブをRAID 6で運用することも考えられますが、そうなると「コンパクト」、「低消費電力」、「コスト効率」という範囲を大きく超えてしまいます。Odroid HC1のヒートシンク/エンクロージャは積み重ね可能なので、単純に2つのNASを一緒に使用し、2番目のシステムでOpenMediaVaultが設定できるRSyncのようなソフトウェア同期を使用して、最初のシステムからファイルをコピーすることが可能です。2つのシステムを同期することで、ドライブが故障した場合にある程度のフェイルオーバーとデータ保持機能を持つことができます。
次のPCB設計でAltium Designer®がどのように役立つか、もっと知りたいですか?Altiumの専門家に相談してください。