Solaris 11.4 on SuperMicro X10SDV-4C-TLN4F
背景
SuperMicroの X10SDV-4C-TLN4F で Solaris 11.4 が動作したのでメモしておきます。
私の家の自宅サーバはかれこれ14年ほどSolarisです。主な用途はNASなので、NAS専用機にしてもいいのですが、ZFSのpoolを脈々とスケールアップしてきたので(ZFSなら簡単)、わざわざ移行するのが面倒なのと、そもそもSolarisを使うこと自体が目的化しているので、敢えて他のOSに乗り換える理由が見当たりません。
最初に自宅サーバをSolarisにしたのは2005年なので、Solaris 10 が出てすぐくらいのときですね。 shakemid.hatenablog.com
2008年にAtomプロセッサが出たときにSolarisを動かしてました。 shakemid.hatenablog.com
2009年からOpenSolarisを使ってました。なつかしす。 shakemid.hatenablog.com
2012年に自宅サーバをXeonにしていました。このときは VMware ESXi 上で Solaris 11 を動かしてましたが、その後、ベアメタルにしていました。 shakemid.hatenablog.com
Solarisは2018年に出た11.4が現時点の最新バージョンで、今も進化しています。しかも、少なくとも2034年までサポートが継続されることが決まっており、安心して使えるOSだといえます。 https://blogs.oracle.com/solaris/oracle-solaris-114-released-for-general-availabilityblogs.oracle.com
SolarisはOracle DBなどと同じOTNライセンスの元、個人用途や開発用途では無償で使用できます。現実的に、自宅で使える商用UNIXはSolarisだけじゃないでしょうか。 www.oracle.com
マザーボード選定の経緯
要件は↓のような感じです。
この条件だと選択肢はほぼ SuperMicro しか残りません。昔から、Solarisが動くハードウェアを探すのはLinuxより難しいですが、SuperMicro の X10SDV シリーズはSolarisで動作確認が行われているというアドバンテージがあります。今回の目当ての X10SDV-4C-TLN4F は厳密にはテストされていないようですが、ほとんど同じ構成のものがテストOKなので大丈夫だろうと思いました。 www.supermicro.com
ちなみに、1世代後の X11SDV シリーズはなぜかSolarisでテストされていませんでした。 www.supermicro.com
SuperMicroに問い合わせてみたところ、「俺たちSolarisでテストするのやめたんだ」という回答が返ってきました。悲しいorz
From: Technical Support <Support@supermicro.com> Subject: RE: Does X11SDV series support Solaris 11? Hi, We stop validating Solaris OS on our new boards. Thanks, -----Original Message----- To: Technical Support <Support@supermicro.com> Subject: Does X11SDV series support Solaris 11? Hi, I am interested in running Solaris 11 on X11SDV series, such as X11SDV-8C-TLN2F. But it does not seem to be tested yet, according to following page. https://www.supermicro.com/support/resources/OS/skylake-d.cfm Are there any plan testing X11SDV series with Solaris 11? Regards,
X11SDVシリーズでもたぶんSolarisは動作すると思うのですが、このシリーズに搭載されている Xeon D-2100 シリーズは、Xeon D-1500 シリーズよりかなり消費電力が上がっていて、低消費電力のモデルがないので、1世代前のX10SDVシリーズを選ぶことにしました。
Xeonにこだわらなければ、DenvertonコアのAtomプロセッサが搭載されている、A2SDiシリーズもいいんじゃないかと思います。 www.supermicro.com
NICの選定もなかなか難しくて、安価な10G NICによく搭載されているAquantiaのチップはSolaris用のドライバがないので、安心なのはIntel X550系のチップになります。Xeon DシリーズやDenvertonコアのAtomは10G NICが統合されているので、Solarisでも動く可能性が高いと思いました。
現時点で、自宅サーバでSolarisを使うなら、SuperMicroのマザーボードは鉄板だと思います。
購入情報
2019/2の時点で、日本での価格は\79,100でした。それに対して、米Amazon.comでは$485で、送料を含めても日本円で約62,000円と、それなりに内外価格差があったので、Amazon.comで買うことにしました。近年、個人輸入の敷居は劇的に下がっている感じがします。
価格.com - SUPERMICRO X10SDV-4C-TLN4F 価格比較
Amazon.com: Supermicro X10SDV-4C-TLN4F Mini-ITX Motherboard : Electronics
マザーボードとしてはかなり高価ですが、XeonとIntelの10G NICが乗ってると思えば、むしろ安く思えてきます。若干感覚が麻痺しているような気もしますが、気のせいということにしましょう。
10G NIC の認識
Solaris 11.4を入れてみて、起動までは問題なくできましたが、10G NICを認識していませんでした。 10G NICを認識させるには、一手間必要でした。
dladmで、1GのNICしか見えていません。
$ dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net0 Ethernet up 1000 full igb0 net1 Ethernet unknown 0 unknown igb1
prtdiagでは Intel X557-AT2 Ethernet という名前で見えています。
$ prtdiag -v System Configuration: Supermicro Super Server BIOS Configuration: American Megatrends Inc. 2.0a 10/12/2018 BMC Configuration: IPMI 2.0 (KCS: Keyboard Controller Style) ==== Processor Sockets ==================================== Version Location Tag -------------------------------- -------------------------- Intel(R) Xeon(R) CPU D-1518 @ 2.20GHz CPU1 ==== Memory Device Sockets ================================ Type Status Set Device Locator Bank Locator ----------- ------ --- ------------------- ---------------- DDR4 in use 0 DIMMA1 P0_Node0_Channel0_Dimm0 DDR4 empty 0 DIMMA2 P0_Node0_Channel0_Dimm1 DDR4 empty 0 DIMMB1 P0_Node0_Channel1_Dimm0 DDR4 empty 0 DIMMB2 P0_Node0_Channel1_Dimm1 ==== On-Board Devices ===================================== ASPEED Video AST2400 Intel i350 Ethernet #1 Intel i350 Ethernet #2 Intel X557-AT2 Ethernet #1 Intel X557-AT2 Ethernet #2 ==== Upgradeable Slots ==================================== ID Status Type Description --- --------- ---------------- ---------------------------- 1 available Unknown M.2 PCI-E 3.0 X4 1 available PCI Express Gen3 x16 SLOT7 PCI-E 3.0 X16
scanpciで見ると、Vendor ID は 0x8086、Device ID は 0x15ad のようです。Intelの Vendor ID は製品名にちなんで 8086 なのですね。
# scanpci ... pci bus 0x0003 cardnum 0x00 function 0x00: vendor 0x8086 device 0x15ad Intel Corporation Ethernet Connection X552/X557-AT 10GBASE-T pci bus 0x0003 cardnum 0x00 function 0x01: vendor 0x8086 device 0x15ad Intel Corporation Ethernet Connection X552/X557-AT 10GBASE-T
こちらのサイトでも確認できます。 pci-ids.ucw.cz
似たようなことを聞いている人がいて、ixgbeドライバで動くんじゃないかとのことなので、ドライバをattachできればよさそうな感じがします。 https://community.oracle.com/thread/4163075community.oracle.com
PCI ID が 8086,15ad のデバイスに、ixgbeドライバをattachする手順は以下のようになります。
/etc/driver_aliases に以下の行を追加します。
ixgbe "pciex8086,15ad"
デバイスを再構成します。
# touch /reconfigure # init 6
もしくは
# reboot -- -r
再起動後、無事に 10G NIC が認識されるようになりました。
$ dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net0 Ethernet up 1000 full igb0 net1 Ethernet unknown 0 unknown igb1 net3 Ethernet unknown 0 unknown ixgbe1 net4 Ethernet up 10000 full ixgbe0
ドライバがattachされているのがわかります。
$ grep ixgbe /etc/path_to_inst "/pci@0,0/pci8086,6f06@2,2/pci15d9,15ad@0" 0 "ixgbe" "/pci@0,0/pci8086,6f06@2,2/pci15d9,15ad@0,1" 1 "ixgbe"
$ prtconf -D System Configuration: Oracle Corporation i86pc Memory size: 16282 Megabytes System Peripherals (Software Nodes): ... pci8086,6f06, instance #3 (driver name: pcieb) pci15d9,15ad, instance #0 (driver name: ixgbe) pci15d9,15ad, instance #1 (driver name: ixgbe) ...
余談ですが、Solaris 11.4 から path_to_inst は sysobj という仕組みで管理されるようになったようです。いろいろ変わってますね。
というわけで、無事に 10G NIC を使えるようになりました。めでたしめでたし。
現状の構成
現状の自宅サーバの構成は以下のような感じです。この構成で消費電力はだいたい50W前後です。電気代は月800円くらいになるようです。
種別 | 品名 |
---|---|
Case | Fractal Design Core 500 |
Power | Corsair SF450 CP-9020104-JP (SFX 450W) |
MB | SuperMicro X10SDV-4C-TLN4F |
CPU | Intel Xeon D-1518 (On Board) |
Memory | SanMax SMD4-U16G48M-24R (DDR4-2400 16GB Micron) |
Storage | SanDisk 120GB SSD, Western Digital 6TB HDD x2 |
OS | Solaris 11.4 x86 |
NASとしては若干パワフルすぎますが、Solarisサーバを手元に置いておきたいという手段と目的が入れ替わった状態なのでそれでよいのです。
冷却の注意
このマザーボードはファンレスですが、ファンレスで運用するのはほぼ不可能と思った方がよいです。ケースファンだけで冷却できるかなと思いましたがぜんぜん無理で、アイドル状態でも80℃を超えて温度が上昇してしまう状態でした。
さすがにこれではダメなので、CPUのヒートシンクにファンを取り付けることにしました。6cm角がちょうどよいサイズのようです。 このマザーボードはファンの回転数をPWMだけで制御しており、PWM非対応のファン(3pinのもの)だと全力で回転してしまいます。 6cm角で、PWM対応となるとほとんど選択肢がなく、安心の山洋電機製のものを選びました。
↓のような、PWM非対応のファンをPWM対応にするアダプタを使うのもありだと思います。
工作能力が足りないので、↓のような感じで、ビスと輪ゴムで固定しました。見た目はいまいちですが、冷却は充分にできているようです。
ファン付きの、X10SDV-4C+-TLN4F(型番に+が付いてる)というモデルもありますが、このファンはかなりうるさいらしいので、好みに合わせてという感じで。 www.maple-rice.com