Vontar X3

2020年04月購入。お値段5,118円

ずっと用途が定まらずに宙に浮いていたのですが、この度ようやく本来の目的の1つであった自宅Webサーバーを導入することにしました。

実はこっそり、ここ数年はレンタルサーバーを借りていて、当サイト等のWebコンテンツはレンタルサーバーから発信していました。

契機となったのはHTTPS化対応(特に証明書の問題)とIPv6でして、これらの標準がごろごろと変わるときに自宅Webサーバーをどうやったら存続できるか良く分からなくて、そのときは勉強するのも面倒臭く、また当時自宅Webサーバーに使用していたPCがアイドルでも約8W〜10Wくらいのレベルで電力を消費していたのでハードウェアやソフトウェアのメンテナンスや故障やトラブルのリスク等も考えるとレンタルサーバーを借りた方が安上がりになる計算が成り立っていたのでレンタルサーバーに移行していたのです。

ただやはり、ここ最近の一連の流れ、いわゆるコロナ露の影響であらゆる物価が高騰する一方、広告収入はどんどんと値切られ切り捨てられてレンタルサーバーの代金すら回収できない中で、単純に金銭的なことだけを考えるなら何もかもすっぱり止めるのが正解ではあるのですが、コストの切り詰めを改めて考えるときに再度Webサーバーを自宅に戻す、という案もありました。

もちろん、電気代もどんどん高騰していく最中で自宅の消費電力を上げるような行動も愚かではあるのですが、それでもまだ、このVontar X3を使用することで電気代の上昇は最低限に抑えられる計算にはなります。今はまだレンタルサーバーの代金の方は極端な高騰は見せてはいないようですが、ドメインの維持費用もガンガン高騰してますしレンタルサーバーの値上げも恐らく時間の問題なのかなと予想しています。

また、レンタルサーバーも良いことばかりではありませんでした。

一つはコンテンツ内容に制限があること。
こちらのサイトからはあまり大っぴらにはリンクさせてはいないのですが、筆者はR-18なコンテンツも発信しています。
今レンタルしているサーバーは画像等はNGと明記されていまして、いわゆるAVとかそういうのを想定してNGとしているものとは思われるのですが、詳しく質問したら全NGにされそうで怖いので憶測でしかありません。
で、R-18コンテンツでも小説作品の紹介サイトでは文章と文章のスクリーンショット、そして画像はあっても局部露出の無いイラストだけですのでレンタルサーバー上に載せて運営しています。
それよりもうちょっとNG寄りの大人なグッズをレビューしたり修理したり自作したりというサイトも持っているわけですが、こちら人物は全く出てこないのですがグッズの画像は多々載せているため一応自重してレンタルサーバーには載せずに他から発信しているのが現状です。

まあ具体的に言いますとFC2Blogにて発信しているわけですが、こちらもここ数年の間に何回か大問題が発生していまして、R-18なコンテンツ関連は定期的に締め上げ食らってその度に大手のサイトが1つ消え2つ消えしているわけですが、FC2BlogもほとんどBANに近い状態で島流し(この辺は大人の事情によりあまり語らないことにします)でして、筆者はR-18といっても人物が一切絡まないコンテンツしか持っていなかったためそのときはたまたま大きな影響を受けずに済んだのですが、当然のことながらまた数年もしないうちにまた何かしら起こる危険性は否定できません。
(何しろそういう方向に叩こうとしている勢力が世界の首根っこ抑えているのでどうにもならない)
最悪、他の数多の会社と同様にBlogサービス廃止なんてことになる可能性が否定できないわけです。

そもそも、ネットメディアはもう完全にただの金持ちの金儲け(強者による一方的な吸い上げ)システムになってしまっているので、個人が発信するなんてことはSNSかもしくはもっとアングラなところに潜ってしまっているのでBlogという文化そのものが衰退していて復活する気配がありません。
なので、特にR-18が絡まなくてもBlogサービス廃止という危険は常に考慮しなければいけない事項となってしまいます。

で、実際にそうなってしまったときにBlogで展開しているコンテンツの行き先に困ることになります。
無くはないのですが、R-18OKなレンタルサーバーでは性能が悪く価格のバカ高い選択肢しかないため、いわゆるR-18といっても人物の絡まないコンテンツしか扱っていない筆者には過ぎたサービスでして(こういうのは大抵実写画像OKにする代わりに極端に高額な設定になっているので人物が一切出てこない筆者のコンテンツには無駄なサービス。とはいえ、普通のところではNGにされそうなので)、とてもじゃないですがそんな費用は捻出できません。

となると、今からまた自宅Webサーバーに戻るのは大変ではあるのですが、戻っておかないとそれはそれで困ることになりそうなのです。

また、今までのレンタルサーバーでも困ったことが何回か起きています。
一番記憶に残っているのが、1週間くらいレンタルサーバーの操作が一切出来なくなったことです。
これは筆者宅のネット環境がIPv6になっていて、IPv4でインターネットにアクセスする際のアドレスは他の方と共用になっているのですが、他の方のせいかこのアドレスがブラックリストに載ってしまってレンタルサーバーへのアクセスが出来なくなってしまったのです。
再接続等何度試してもこちらのアドレスが変わってくれることも無く、あちこちに問い合わせてブラック解除のお願いとかやってたのですが、結構な心労と体力と時間を奪われました。
ぶっちゃけ、こんな思いをするくらいなら自分でサーバー管理してても変わらないかマシなくらいなんじゃね? って思いました。

また、大きな問題では無いかもしれませんが、ログがちょいちょいぶっ壊れてたりおかしな集計してたり、ログ集計の画面が古いままで正常に機能していない部分が放置されていたりと、こちらでメンテできない領域でちょいちょい不具合があったりします。
.htaccessは使えるようにしてくれていますが、逆に言うとアクセス制御関連はそこだけで頑張るしかないので悪意のスパムアクセスへの対処なんかもの凄く苦労していまして、そういった点でも自宅Webサーバーだったらここまで苦労しなかったかもしれないのに、と思っていました。
もちろん、なんでも自分でどうにかしなくてはいけないので大変なのは間違い無いのですが、自分ではどうすることもできない領域で不具合発生したときの対処の大変さはもう本当に痒いところに手が届かない歯痒さと手間が半端ないので、どっちもどっちなんじゃ……って気がしました。

FC2Blogの方にも問題がありまして、一言で言って「遅い」のです。費用が掛かっていないので文句言えないのですが。
また、これはもう数年前の話になるのであんまりいつまでも根に持つことでもないのですが、数日レベルでサーバーが落ちていてコンテンツを閲覧できなかったことがあります。
あんまりにもダウンタイムが大きいようだと自宅Webサーバーの方が稼働率が高かった(というか過去の実績だけで言えばFC2Blogだけでなくレンタルサーバーよりも自宅Webサーバーの方が稼働率が高い)なんてことになるので、うん、不思議なことに、故障やトラブルの点でフォールバックシステムが十分に用意できない自宅Webサーバーは稼働率で不利と思いがちなんですが、一概にそうとも言い切れないんですね。

というわけで、自宅Webサーバー復帰に向けて作業をしているわけですが、ここで不安になるのが筆者自身の性能劣化問題です。
筆者の能力がどうしても落ちてきているのを日々実感しているのですが、特に記憶能力、短期記憶能力も長期記憶もダメで、しかもキャッシュ容量が物凄く減少しているので、多くの新たな知識を蓄えることが困難になっています。
さらに肉体の劣化で早々に目が疲れ、脳が疲れて多くの作業を熟せません。
そんな状態で自宅Webサーバーを今更抱え込むというのも結構な不安要素ではあるのです。

でもね、ただね、なんやかんや言ってある程度LAN内ではまともに動くところまでは漕ぎ着けてはいるんです。
しかも、いつもの筆者の癖で新たな要素を取り入れて。
というのは、この機種、元はAndroid TV BoxですのでArm系のSoCです。なので、OSはArmbianになります。
また、Webサーバーには慣れているApacheではなくOpenLiteSpeedを採用します。

筆者は近年の悪質なスパムアクセスに対処する中で、こんなアクセスには403Forbiddenなんて応答すら律儀に返したくない、その場で接続切って即Blockしたい、と強く思ってきました。
なのでWebサーバーにはいわゆる444(接続即断)の機能が是非とも欲しいと思ってきました。
444といえばnginxが有名なのですが、実はOpenLiteSpeedでも似たような機能が使えます。
そしてOpenLiteSpeedは.htaccessも使えます。(ただし、逆引きしたホスト名でrewrite判断とかはできませんので完全等価というわけにはいきません。)

比較的移行がし易く444のような機能が使えるということでOpenLiteSpeedの採用を決めました。
Armbianやx86なんかではパッケージが用意されていないのでコンパイルからする必要があるのですが、特にConfigとかを弄る必要が無ければbuild.shに実行権限付けて叩けばガンガン処理を進めて必要なものは勝手にダウンロードしてくれて一気に使える状態まで整えてくれるので、時間が掛かる以外にデメリットはほぼ感じずに済みます。
とはいえ、一発で完結できることはほぼ無く、大抵は不足しているモジュールがあったり実行権限不足でコケてたりしますので、ログを眺めてErrorが起こっている部分を対処して再実行を繰り返します。

問題はやはりSSL証明書とIPv6/IPv4両対応、そしてDNS制御に尽きるかと。
あーサブドメイン作ってテストするかあ、って今アイデア出たけど結局サブのテストするつもりで本番壊しかねないから一緒だな、とにかくいきなり本番運用になってしまうので、特にSSL証明書では更新をミスること、IPv6/IPv4/DNS設定が上手く出来ずにインターネット接続が切れることが懸念されます。
IPv6/IPv4/DNSだって固定に近いくらい動かない現在でも全くの固定という保証も無いですからね。
一方で自宅Webサーバーを運営する人ももう絶滅危惧種なのでDDNS周りのツール類なんかは自作しないといかんかもしれん。

なんかね、ハードウェアの故障とかソフトウェアの不具合とかよりもSSL/IPv6/IPv4/DNS周りで上手く繋がらなくなっていてそれに長時間気が付けない&復旧に手間取るという未来が見えててそれが一番の不安ですよの。
DDNSは前にも使っていたけれども、今度はIPv6込みで制御しなければならないですしね。

さてところで、肝心の消費電力ですが、ワットチェッカー見ながら作業していたところ、素のArmbianからTLPを導入してBATモードに強制し、CPUのクロックをArmbianで選択できる最低値である1000MHzに固定しGovenorをpowersaveにという極力低消費電力を心掛けたチューニングを施したうえで最低1Wを拝むことができます。
と言いますか、多分そんなチューニングをしなくても最低値だけなら1Wを拝めたかとは思います。
そもそもAndroidのときから1Wはちょいちょい見えていましたからね。

一方で作業中最大でも4W。しかも4Wの表示を見る機会はかなり稀で、コンパイルとかガンガンに動いていても大抵は3W表示に収まりますし、ダウンロード処理とかだと2W表示で収まります。
これもまぁ、Androidのときも1W〜4W表示だったので一緒ですね。
USBに消費電力の大きい機器を繋いだりとかしなければこの機種はだいたい最大消費電力4Wで通常なら2W程度と捉えて良いかと思います。
有線LAN繋いでいる状態でコレですので結構優秀ですよね。流石SBCの中では割と最新に近い12nmプロセスのSoCです。

Android TV BoxとかRaspberryPiなどのSBC(シングルボードコンピュータ)はコロナ禍以降進化がほとんど止まっていて値段は爆上がりしています。
筆者の手持ちはもう丸3年以上前の製品ですが、これまだ現行でも販売されていて、しかもまだまだ最先端に近い部類です。しかも、今の方が断然値段が高い。

同じ系列のSoCですとAmlogicではS905X4が出ていますが同じ12nmプロセスですし同じ4コアCortex-A55ですしほとんど同じです。
と言いますか、このAmlogicの12nmプロセスでもSBC界隈では未だに最先端に近い方でして、SBCに搭載されるようなArm系SoCでこれより最先端なのは筆者はRockchipのRK3588しか知りません。
RK3588は8nmプロセスでA76とA55を4コアずつ搭載していてスマホでいうとSnapDragon855辺りと近い性能を持つスグレモノではありますがこれを搭載するSBCは馬鹿高価なのでぶっちゃけそんなのに手を出すくらいなら近頃格安(ダンピング?)で放出されているIntel N100とかの方が断然高性能だしプロセスも8LPPよりはIntel7の方が良いでしょう。
というかですね、筆者的自宅Webサーバーには完全オーバースペックなので選択肢に入らないんだけどな。

自宅Webサーバーを安定的に運用するコツとして筆者は常に余裕の排熱状況というものを最優先にしてきました。
熱は全てを不安定にしたり壊したりする一番の厄介者です。
それでもパフォーマンスが必要な場合は踏み込まなければならないのでしょうが、筆者のサイトは超絶不人気なのでPVは少なく、ほとんどがクローラーやスクレイパー、スキャン、クラッキングという来ないで欲しいアクセスばっかりです。
そんな中で高負荷にさらされる状況というのは間違いなく悪質アクセスのせいですので、そこに対して潤沢な性能を割り振ってあげる必要なんて皆無なのです。

でも、性能下げたら普通のアクセスに対しても遅くなるのでは?とか思います?
無いね。無い。先に回線の帯域が枯渇するわ。
そもそも昔はPentiumM(Banias)1.6GHzのシングルコアでも楽々動いてたものですよ。これが1GHzに抑えているとはいえ4コアあるんです。しかも、当時のRAMはDDRの数字が付かないやつ。今はDDR4です。当時はRAM1GBでしたが今は4GBあります。ぶっちゃけ実質全部オンメモリになるのでストレージの速度とか考えなくて良くなります。
RAMからLANにデータ送るだけのお仕事なのでA55の4コアでも全然過剰です。
過剰な性能は万が一悪者に乗っ取られてしまった際に著しい被害を被ります。

というかですね。このVontar X3。これでも物凄い過剰性能でちょっと勿体無いんですよ。
というのも、RAMはDDR4を4GBも積んでいるし、eMMCも128GBも積んでいるんです。
筆者が使っている古いPCなんてRAMはDDR2の2GBだしSSDが30GBとかそんな世界ですよ。
近年ようやくDDR3の4GBとeMMC64GBというタブレットPCで物書きができるようになって……、ってそこから考えるとかなり贅沢な仕様です。

まあこれには理由がありまして、元々はこれ、HMDで動画や静止画を見るときのプレイヤーデバイスとして使うことも念頭に入れた選択でして、当時はまだRAMの増量やeMMCの増量をしても価格があまり高くならなかったためこういう贅沢な選択ができたのでした。
実際にはAndroid用の自作プレイヤーまで頑張って作成したのですが、HMDの解像度がAndroidでは出せずにそこで頓挫というアホみたいな勿体無い経緯を辿っています。
かなりいろいろやったんですけど、どうもROMそのものを作らないとダメっぽい、ってなって「そこまでする気無いわぁ〜」で終了です。Root取って設定イジったりする程度じゃ全然アカンかった。
というかですね、1280x800というPCではかなり一般的な解像度すら出力できないっていう融通の利かなさよ。
まあTV BOXなので縦横比16:9しか想定していないというのも分からなくはないんだけどさあ。

もう一つ、Androidは早々に止めてLinuxを入れるという案もあったのですが、当時は結構難しそうで、というかある程度ちょこっと手を出しては失敗していたので、しばらく諦めて遠ざかっていました。
しばらく振りに再チャレンジしてみたらびっくりするくらい簡単だった。時が解決してくれるパターン。
特にVontar X3は割とメジャーな部類だったせいもあって、この製品に合うArmbianのROMをUSBに焼いてUSBから起動させたら普通にインストールできましたわ。
調べていたときには事前に一部ファイルの書き換えが必要みたいに書かれていたけどそんなのも不要でした。
Androidとのデュアルブートとかするならもっと面倒臭いことになるのでしょうが、eMMC全書き換えが標準でされるので訊かれることもそう多くはなくスコスコでした。

とか言いながら慣れるまではいろいろと悩んだり回り道したりはしてたのですが、いやこんなに楽ならもう一台あっても……ってついつい考えてしまいました。
が、そこは既に筆者は14nmプロセスのAtomなタブレットPCを3台も所持してしまっていますので、流石に無駄に持ち過ぎになります。
なんでここでAtomが出てくんの?って話ですが、割とSpec的に近いんです。

RAMだけはVontar X3だけDDR4で優秀なんですが、プロセスはIntel14nmって下手すると他社の12nmより若干優秀だったりするレベルですし、実はCPU周りの性能はAtom X5-8300なんていうCherryTrailの最低ランク品でもS905X3より高性能だったりするので……動画再生支援周りはArmの方が優秀そうな気がするけどどうなんだろう?
いやまあとりあえずRAM2GBの使えないPCが溜まってて困っている最中にRAM4GBの用途が限られるPCももうたくさん所持してしまっているので、もう本当にこの辺りの製品は買わないように気をつけなければなりません。流石に使い切れん。

なおOpenLiteSpeedはArm向けのリポジトリを持っていないので自力でBuildしてInstallすることになります。LSPHPも古いので最新を自力でmakeしてmake installすることになります。
が、これもまあErrorがバリバリでるのですが、調べながらやれば放り投げるほどハマることもなく出来たので楽な部類です。
気を付けるべきは必要なパッケージが不足していて失敗するパターン。
これは使用するディストリビューションやCPUなどで全然違う結果になると思います。うちでもAntix32bit(64bit非対応のAtom)に不足していたパッケージとArmbianで不足していたパッケージは違っていました。
あと不足しているパッケージは概ねそれの「-dev」が付くパッケージの方です。無いといわれたがあるじゃん!ってなるかもしれませんがOpenLiteSpeedでは大抵-devと付くパッケージの方を要求しています。

話が前後してしまいますが、もう一回消費電力の話を蒸し返しますね。
Vontar X3付属のACアダプタはPSEマークが付いていないので流石に24時間運用には使いたくないと思いPSEマーク付きで使えるアダプタが無いか探しました。
結果同じ5V2AのACアダプタでCoviaのg07に付属していたUSB充電器がありましたので、こちらに切り替えます。
(RaspberryPi4みたいに3Aを要求してこないところからして12nmプロセスの恩恵をヒシヒシと感じます。)
USBになったので筆者が所持しているUSBチェッカーでも消費電力の測定が出来るようになりましたので計ってみます。

起動中最低で5.30V0.30Aとなりましたので単純計算で1.59Wが最低ラインです。筆者の計器では電流の測定値が0.03A刻みですので、ちょっと消費電力が上がると0.33A表示になります。
まあ、もろもろ処理していても軽負荷であれば概ね2Wと思っていて良いかと。
どっちかと言うとルーターなどの転送量が増えることによる消費電力増加の方が怖くてですね。古いレンタルルーターなので。
まあそれでもトータルで3W4W辺りで手打ちじゃないかな、多分。これならレンタルサーバーより確実に安くはなる。

あ、あとできれば力率のマシなACアダプタを使いたいなと思っていたのですが、ここまで消費電力そのものが小さいとどれ使っても50%を下回ってしまいますな。残念。
発熱はアイドルを続ければ室温+25℃程度。でも、ちょこまか作業してれば+30℃〜もうちょい見積もっておいた方が良いかもしれない。
夏場の高負荷時は70℃とか行くかもしれんね。
ちなみに、元の製品はすっからかんでヒートシンクも付いていませんでしたが、一応筆者手持ちの古いヒートシンクとかアルミフィンとかをもいで本体内に突っ込んでますので、結構重たくなってます。
放熱にはあまり寄与しないでしょうが(放熱穴が底面にしか空いてなくてヒートシンクは上面に仕込んでいるので)、熱容量が増えることによって安定化には寄与するはずですので。

というか写真ちょっとあったわ。

ちっこくって良いっすよねぇ。

手持ちの手頃なヒートシンクを載っけまして。あ、基板に思いっきり「HK1」ってシルク印刷されてますね。この製品HK1の派生です。

んで、同じく手持ちのアルミヒートシンクのフィンをもいで、重ねて載っけてみました。
あ、固定が出来ていないので危なそうなところにはテープを貼って軽く絶縁処理しています一応。セロテープじゃダメな気もするけど。(^^ゞ

あ、そうだ。支離滅裂で申し訳ないですが、この機種。素のAndroidですとSoCのクロックが1908MHzって出てたんですけど、Armbian入れたら最高で2100MHzなんて設定になってましたよ。ちゃんと動くならさらに性能上がって嬉しいですよね。自宅Webサーバー用途には不要だけど。

2023-05-12

この記事のタグ

PC

Linux/BSD

WebServer

レビュー

トライ