Synology DS1618+に10Gのネットワークカードを追加

NASをSynologyのDS1618+へ変更しましたが、宅内LANも同時に10Gへと変更したため、DS1618+にも10GのNIC(ネットワークインタフェース)を取り付けることにしました。
取付方法はSynology公式のドキュメントに詳しく載っていますので、そちらを参考に作業を行えば、初心者でも簡単に取り付けできるかと思います。
ハードウェア設置ガイド

10ギガビットのネットワークと言っても選択肢がいくつかありまして、一般的に1ギガ環境で使用されている1000BASE-T規格(RJ45形状のコネクタ)の延長線上の10GBASE-T、商業用のサーバーやデータセンターなどで主に使われている光ケーブル・DACを使用した10GBASE規格のものなどです。
使うケーブルの種類やケーブルの長さによって規格がかなりの種類ありますが、一般的な家庭で容易に導入可能なのは10GBASE-TSFP+ Direct Attachというものになります。

更に言えば10GBASE-Tであれば家電量販店などでもCAT6・CAT6A・CAT7など10G対応のケーブルが売られており最も導入が楽だと思います。

私も最初は宅内に引いてある既存のLAN配線がCAT6のケーブルだったため、導入が容易なことからDS1618+にIntelのX550-T2というNICを取り付けました。
(CAT6のケーブルでも37mまでは10Gでの通信が可能)

同時にネットワークスイッチ(ハブ)も10ギガビット対応のものに変えたのですが、メインで使用するスイッチをNETGEARのXSM4316S-100AJSに変更したところ、結構な消費電力になっていることにUPSのLOADの数値を見て改めて気付きました。
(スペック上の数値は見てましたが、実際の消費電力を見るとまた違った意味で再認識します)
スイッチ類も結構熱くなりますし、UPSの容量も必要最低限にしていたのもあり、出来るだけ消費電力を下げたいと思うようになりました。

そこで目を付けたのがSFP+ Direct Attachです。
10GBASE-Tの消費電力の1/3~1/5程度という低さです。
(10GBASE-Tもチップが更に進化すれば下がってくるとは思いますが、現在では結構な消費電力です)
宅内LANの部屋間は既に引いてあるCAT6のケーブルを使用するため10GBASE-Tを使用しますが、NASとスイッチ間はSFP+に変更することにしました。
NETGEARのXSM4316S-100AJS10GBASE-Tを8ポート、SFP+を8ポート持っているのでポート数も全く問題なしです。

NICを購入すべくSynologyのDS1618+の互換リストを調べてみました。
Synologyが保証しているのはINTELであればX520-DA2, X540-T2, X550-T2, X710-DA2, X710-DA4、Mellanox(メラノックス)であればConnectX-3 Pro EN MCX312B-XCCT, ConnectX-4 Lx EN MCX4121A-XCATの2つのみとなります。
最初はIntelのX710-DA2を検討しましたが、偽物が多いことや価格が高いことでMellanoxのConnectX-3 Pro EN MCX312B-XCCTを導入することにしました。

海外からの輸入で正規品の新品でも17,000円くらいで購入可能です。


(シリアルナンバーなど削除したり、画像を一部加工しています)

DS1618+への取り付けは最初に貼ったリンクを見て頂ければと思います。

X550-T2(恐らくコピー品)との比較です。
上がX550-T2です。

基板だけ見ても消費電力の違いは分かりませんが、実際に使用すると消費電力の違いが分かります。
DS1618+XSM4316S-100AJSをUPSに接続して消費電力を確認すると、X550-T2をLANケーブル1本で接続するのと、ConnectX-3 Pro EN MCX312B-XCCTをLANケーブル2本でLAG(リンクアグリゲーション)で使用するのでは、後者の方が消費電力が低いのです…
但しDAC(DirectAttachケーブル)の最大長は5m程度あり、距離が長い場合は光ケーブルを導入することになりますので、消費電力は若干増えてしまいます。
それでも現状では光ケーブル利用の方が10GBASE-T利用よりも消費電力が低いのです。

10GBASE-Tの方がケーブルに馴染みもあり導入しやすいですが、10ギガビット対応のハブはSFP+対応のものも結構ありますので、SFP+導入の敷居は決して高くありません。
(DACのベンダーロックなど知識がないとハマったりと決して低くもありませんが…)

これから10ギガ環境の導入を検討されている方は、SFP+の導入を検討されることをお勧めします。
(将来的に10GBASE-Tチップの消費電力が減れば10GBASE-Tがお勧めになるとは思います)

NETGEAR
¥411,259 (2024/01/29 17:17時点 | Yahooショッピング調べ)
\楽天ポイント4倍セール!/
楽天市場

Synology NASとLinux(Debian Buster)を1台のUPSに連動させる その2

Synology NASとLinux(Debian Buster)を1台のUPSに連動させる その1の続きとなります。

SynologyのDS1618+はUPSのネットワーク共有でNUTというアプリを裏で動かしています。
NUTはNetwork UPS Toolsのことで、Linuxで利用可能なパッケージとなっています。
DS1618+にSSHで接続して設定を確認してみました。

/usr/syno/etc/ups/upsmon.confの中身を覗くと
MONITOR ups@localhost 1 monuser secret masterという記述がありました。

ユーザー名:monuser
パスワード:secret
で接続すればいけそうです。

早速、連携したいDebianにNUTパッケージをインストールします。
# apt install nut
※この記事を書いている時点でのバージョンは2.7.4-8となります。

NUTの細かい内容まで説明は難しいので、詳しく知りたい方はNUTのオフィシャルドキュメントを読んでみてください。
細かいところまで読むと結構勉強になりす。

ということで、設定内容だけ抜粋です。

/etc/nut/upsmon.conf
このファイルが基本的な設定ファイルとなります。
※NASのIPを192.168.1.100と仮定して書いていますので、ご自身の環境に置き換えてください。
このファイルでNASを見に行くという設定を行います。
DS1618+にSSHでログインして確認したIDとPASSを使用します。
SynologyのNAS同士のUPS連携は可能になっていますので、DS1618+だけでなく別の機種でも同じ設定になっていると思われます。

MONITOR ups@192.168.1.100 1 monuser secret slave
MINSUPPLIES 1
SHUTDOWNCMD “/sbin/shutdown -h +0”
NOTIFYCMD /sbin/upssched
POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG /etc/killpower

NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC

RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 5

MONITOR行はNASではmasterになっていましたが、Debianでは見に行く側なのでslaveとなります。
NOTIFYFLAGの行はUPSのステータス変更時に何を行うかを設定する行となります。
他にも色々なステータスがありますが、今回はこの3つのみを設定します。

ONLINE:正常運転時のステータスです
ONBATT:バッテリー運転時のステータスです
LOWBATT:バッテリーが残り僅かになった時のステータスです

後ろのSYSLOG+WALL+EXECの意味は以下となっています。
SYSLOG:syslogにログとして書き込みます
WALL:全ユーザーのターミナルにメッセージを書き込みます
EXEC:後述するNOTIFYCMDが実行されます

NOTIFYCMDに関する設定ファイルは以下となります。
/etc/nut/upssched.conf

CMDSCRIPT /bin/upssched-cmd
PIPEFN /var/run/nut/upssched.pipe
LOCKFN /var/run/nut/upssched.lock

AT ONBATT * START-TIMER upsgone 120
AT ONLINE * CANCEL-TIMER upsgone
AT LOWBATT * START-TIMER upsgone 5

実際に実行するスクリプトをCMDSCRIPTで指定しています。
AT行はステータスを受け取った際にスクリプトに対する動きを設定しています。
AT_ステータス_ホストの設定_スクリプトに対する実行タイプの指定_スクリプトに渡す引数_タイマーの場合は秒数
となります。

AT ONBATT * START-TIMER upsgone 120を例にとると
バッテリーのステータスになったら、全てのホストの設定で、タイマーを開始、スクリプトにupsgoneを渡し、タイマーの時間は120秒
となります。
START-TIMERの部分は
CANCEL-TIMERがタイマーをキャンセル
EXECUTEだとスクリプトを実行となります。
今回の設定ではLOWBATTの場合でもタイマー5秒としていますが、即時実行したければEXECUTEでもいいかと思います。

最後に実際に実行されるスクリプトを編集します。
/bin/upssched-cmd

case $1 in
        upsgone)
                logger -t upssched-cmd "The UPS has been gone for awhile"
                upsmon -c fsd
                ;;
        lowbatt)
                logger -t upssched-cmd "The UPS became lowbattery"
                upsmon -c fsd
                ;;
        *)
                logger -t upssched-cmd "Unrecognized command: $1"
                ;;
esac

ONBATT、LOWBATT共にやっていることは同じで
upsmon -c fsd
というコマンドでシャットダウンを行っています。
その上の行はログ出力なので文字が違うだけで、その下のコマンドは同じになっています。

設定が終わったら最終的に
# systemctl restart nut-client
を実行してサービスを再起動します。

あとは実際にUPSの電源を抜いてみて時間通りに動くかをテストします。
ハブの電源もUPSに接続していないと、実際の停電時にNASと通信ができないので注意が必要です。
またDebianのシャットダウン迄の時間は、NASよりも短くしておかないと、今回のNAS側の設定では先にUPSの電源が切れてしまいます。
(NAS側で最終的にUPSの電源OFFを行っています)

実際に停電と同じ状態にして上手く動けば完了です!

Synology NASとLinux(Debian Buster)を1台のUPSに連動させる その1

自宅のネットワーク環境を10Gbに変更すべく、色々なものを10Gb対応製品に入れ替えました。
NASもASUSTORの2ベイのものからSynologyの6ベイモデルDS1618+へと変更しました。
DS1618+はそのままでは10GbEには対応していませんが、ネットワークカードを追加することで対応します。

以前はPC類を停電から守るためにUPSを使用していましたが、バッテリー交換に結構なお金がかかることや、停電など殆どしないことからUPSの運用をやめていました。
今回はHDDの台数も増えたことからUPS運用を再開することにしました。

以前はAPCのSmart-UPS 750を使用していましたが、NASとWebサーバーであるNUC(小型PC)とネットワークスイッチのみ保護できればいいので、小型のものを採用しました。
メーカーは同じくAPCでBR550S-JPというモデルです。

UPSと機器をネットワーク接続ではなくUSBやシリアルケーブルなどで接続する場合は、UPSと通信できる機器は1台のみです。
安いUPSではネットーワークインターフェースを持っていませんので、基本的にはUSBでの接続になるかと思います。

今回はまずAPCのUPSとSynologyのNASをUSBで接続し、SynologyのNASのネットワークUPSサーバー機能を使用し他の機器を更に接続します。

UPSとNASの接続は簡単でAPCのUPSに付属のUSBケーブルでUPSとNASを接続するだけです。
設定もすごく簡単でSynologyのコントロールパネルを開きハードウェアと電源の項目でチェックボックスをONにしていくだけです。

今回はNASがUPSサーバーにもなりますので、セーフモードになるまでの時間は他の機器をシャットダウンするまでの時間よりも長くしておいてください。
またネットワークUPSサーバーを有効にするにもチェックを入れます。
更に許可されたDiskStationデバイスをクリックして、UPS管理する機器のアクセス許可を行います。

アクセス許可はIPアドレスで行いますので、機器のIPはDHCPではなく固定IPで運用する必要があります。
UPSとNASの設定に関してはこれで終了です。

次回はSynologyのNASとDebia(Buster)のUPS連携の設定を行います。
Synology NASとLinux(Debian Buster)を1台のUPSに連動させる その2に続きます

Debian 10 (Buster)のanacronについて

Debian 9 (Stretch)のanacronについて
という記事を以前書きましたが、Debianを10 (Buster)へアップデートしたらanacronがまたおかしくなったので、再度設定を行いました。

/lib/systemd/system/anacron.timer
[Unit]
Description=Trigger anacron every hour

[Timer]
OnCalendar=*-*-* 07..23:30
RandomizedDelaySec=5m
Persistent=true

[Install]
WantedBy=timers.target

アップデートによって設定も初期化されたようです。
そして気付いたことが!
Debian9では上手く動かなかった時間指定が「..」を使ったレンジ方式で書かれています。
ということで、この部分を修正して
# systemctl daemon-reload
# systemctl restart anacron.timer
で完了と。

サーバーメンテナンス

このブログをやっているサーバーの冷却ファンが異音を出すようになってきたので、ファンの交換を行います。
ついでにSSDの入れ替え、OSもDebian 10「buster」にアップデートしようと思っていますので、数日間はしばしば繋がらなくなることがあると思います。

2019/09/14
サーバーのメンテナンスが終了しました。

データ保存用SSD Transcend TS1TMTE220S

マザーボードをX470からX570に変更するまでは、データドライブは2.5インチSATA接続のSSDを使用していました。
(使っていたX470はNVMeのSSDを2枚使えるものでしたが、PCIeにSoundBlasterを使用していると排他で1台はSATA接続のみになってしまう仕様でした)
X570に移行してそういった制限もなくなり、PCIeでのNVMe接続で使用可能なスロットが2つに増えたので、データドライブもNVMe(PCIe)接続のSSDへと変更しました。
データドライブなので流石にまだまだ高価なPCIe4.0対応のものではなく、PCIe3.0のものへと交換しました。
(システムドライブはPCIe4.0対応のCSSD-M2B1TPG3VNFを使用中です!)

個人的にQLCのSSDはまだ信用に値しないと思っているので、最安付近のものは全部避けて、TLCのTranscend TS1TMTE220Sを購入しました。
そんなに速度が必要ないのに2.5インチタイプからNVMeのSSDに変更した理由は「余計な配線がなくなってスッキリするから」だけです(笑)
2.5インチのSSDはドナドナしたので僅かな差額で買い替えることができました。

Transcend TS1TMTE220Sは安い割に速度も出てますし、信頼性のあるTranscend製品ですので、個人的にはお勧めです。

しかしSSDも本当に安くなりましたね。

Transcend
¥12,800 (2024/01/29 16:36時点 | Yahooショッピング調べ)
\楽天ポイント4倍セール!/
楽天市場

主にPC、車・バイク、トイガンなどについて書いてます