SC SvcをK8sに――OpenWRTと一緒に#7
皆さんこんにちは。Secure Command Serverチームです。(どのチームも同じ人とか言わないでください) さて、久しぶりのKubernetes案件です。実のところ、Secure Blueの開発が忙しくてサーバを作ってる暇がなかったんです。(むろんSecure Blueの開発は別のチームですよ・・・)
では、まず私たちが構築したのはルータです。「なんでルータ?」「K8s構築じゃないの?」そうです。ルータです。私たちは今回、Banana Pi R2-Proというのを導入しました。これはルータボードとして売られているものです。
まず開封します。Ali Expressで購入しました。それで、届いてびっくり。こんな小さな箱。

あと、少し日本語が少し変です。

「問題があったら、購入先店舗に連絡ください」・・・ここは、「何か問題がございましたら、ご購入先店舗にご連絡ください」とでもするべきでしょうが、中華系なので仕方ありません。目をつぶります。
それで開けてびっくり。ほんとにはこの大きさがおかしいです。緩衝材なしです。一応精密機器なんですが…。

いくらSDGsとはいえ、精密機器にこれはないでしょう。プチプチぐらい入れてほしいです。衝撃で部品が取れたり壊れたりしたらどうするんでしょうか。だから「問題があったら、購入先店舗に連絡ください」なんでしょうか?
はい、では中を見てみます。さすが中華系ですね。基板だけ。このシンプルさが選ばれる理由でしょうか。

開けてみました。普通の基盤です。少し大きめです。LANポートが5つもあるんですから、当然です。

これ、すごいんです。何がすごいのかというと、M.2とPCIeとSATAがあることです。Wi-fiカードなどを刺したり、SATAディスクを接続できるんですね。あと、RTC(Real Time Clock;リアルタイムクロック;内蔵時計)用の物と思われる電池を取り付けられるところがあります。本格的ですね。しかも、これはただのSocではないんです。SocとLANチップもあるんです。右側にRockchip RK3568B2が取り付けられています。これはSoCですね。その上になんと、Mediatek MT7531BEが取り付けられています。このようにSoCとLANチップが分かれているのは普通なのかもしれませんが、まともなチップ二枚を載せていたことに、少し驚きました。
では、起動させよう、と思ったんですが、これは12V2.0Aの電源しか受け付けないらしいんです。24W必要なはずなんですが、うちには5.3V1.0Aの5.3W電源しかなかったんです。動くわけないと、だめもとで刺してみたら、なんと起動しました。驚きです。

「やったー、新しいの買わなくていい!」と思ったんですが、しばらく放置すると落ちます。これでは運用できません。
話が前後してしまうんですが、SDカードも焼きました。本来ならOpenWRTというルータソフトウェアOSを入れたいところなんですが、ちょっといろいろあって、うまく動かないようです。最終的には動きますよ。動く方法を見つけるのに結構な時間がかかりました。そんなこんなで、Ubuntu 21.04をBPi公式Wikiからダウンロードしてきました。

「まさかのGoogleダウンロード」とか「まさかの百度かよ、中国のGoogleめ」とか思ったんですが、中国版Googleの信頼度はマイナスなので、信頼度120%の本家Googleからダウンロードします。
いろいろあったんですが、微妙に古いんですよね。Ubuntuも最新は22で、OpenWRTも22です。Debianも11出たんじゃないかな。たぶんLinux Kernel 4.19.xxか5.15.xxしか対応してないようですね。ちょっと、これを導入するんじゃなかったと思いました。
何でもいいので焼いてみました。焼くためにはRockchip社公式SDカードライターが必要なようです。「ウソー、中国からのWindows Executableのダウンロードかよー」とか思ったんですが、仕方ない。個人的に中国のWindows Executableの信頼度は0%以下です。少し怖かったです。でも今のところ何ともありません。よかった。ちなみに、こんなに中国の信頼度はマイナスだとか、0%以下だとか言っていますが、大丈夫です。中国共産党から招集命令が来ても絶対に行きません。中国は日本に対しての治外法権は持っていません。安心安全。しかも絶対に中国共産党支配下の中国にはいかないので大丈夫です。


ちなみにこれはSDカードを入れて、UbuntuをBPi Wikiから落としてきて、展開して出たものを指定しているものです。SDカードは、KIOXIAのEXCERIAを使いました。青いやつです。これでCreateを押すと書き込みが始まります。今回は、SDカードからブートさせたかったので(EMMCに書き込みたくなっかたので)SD Bootを選択しました。図中ではUpgrade Firmwareが選択されていますが、これは間違いです。時々失敗するので何回かやってください。それで、何とか起動しました。いつものUbuntuです。ユーザはpi、パスワードはbananapiでした。Wikiにはよく書いてありませんでしたが、直感で行きました。これって、某有名SBCをパックってませんか?

それで、はじめ言ったようにしばらく置いておくと落ちちゃうので、Amazonで1300円の12V2Aの電源アダプタを頼みました。https://www.amazon.co.jp/gp/product/B0B7683747 これ、すごいんです。スイッチがついているんです。そう、わざわざ抜き差ししなくていいんです。便利すぎる。
それで2,3日後に届きました。普通にポストに入っていました。少しびっくりしたんですが、Amazonって、袋もありなんですね。




そんなこんなで開けてみたら、小さな箱が。ちょっと重みがあるのに袋でした。たぶんこの袋はとても強いんだと思います。でも、これに入れて運ぶ勇気もまたすごいですね。それで開けてみると、普通のACアダプタでした。

これで起動できます。安定しました。それで、OpenWRTを入れようとしたんですが、どうすればわからず。一応SDカードは焼きました。それでYouTubeを見ました。きずきました。USBシリアルコンソールを使うということを。これには、Micro USBのCH340 Debug Portがあるのでそれをパソコンにつないで、MobaXTermを起動しました。

これは起動したときの状態です。それで、Sessionを押し、出たダイアログでSirealを押しました。それで次のように設定しました。


これで接続したら、電源を入れます。するとログが滝のように流れ、完全に止まったら、Enterを押してコンソールに入れます。

それで、調査したIPアドレスにWebブラウザでアクセスします。といいたいところなんですが、はじめのほうは、ログインできない可能性があります。なぜだかわかりませんが、はじめのほうはネットにつながらないんです。設定ファイルの内容を弄り回したら、なんとか動きました。

たぶんbananapiでログインできると思いますが、できないなら、ModaXTermでpasswdコマンドを実行し、パスワードを変えてください。
次回はここからの挌闘の歴史をつづりたいと思います。