それでも僕はラズパイARMでAWXを動かしたい(続)


前回、ラズパイで作ったk3sクラスタ上にAWXをデプロイしてなんとか動く状態まですることはできましたが正直実用的ではありませんでした。

これに納得できなかった自分は、あれやこれやと色々試してみて一先ず動かせるところまで出来たのでやってみたことを書いてみようと思います。

ROC-RK3328-CCを買ってみた

ラズパイで動かないのはメモリー不足だと思っていた自分は、メモリーが積んであるARMボードを探していたところ ROC-RK3328-CC を見つけました。

メモリーが4GB乗っていたのでイケるんじゃね!?と思って早速注文!
海外からの輸入でしたが、1700円程度払ってお急ぎ便で注文してwktkしながら待っていたら数日で届きました。

ROC-RK3328-CCは Libre Computer が作っていて、専用のイメージでしか起動しないのでUbuntuをチョイスし起動することを確認!
さっそくk3sを入れようとしたところ、k3sを動かすためのモジュールが導入できなずに断念…。
aptでインストールしようとするとどうもバージョン依存かなんかで そんなパッケージ無い! って怒られました。
専用イメージおそるべし…という事で一旦諦め…。

諦めが悪い自分が次に試したもの

やっぱり、諦められず色々調べてみたら ROCK64 を見つけました。

これもメモリーが4GBで、日本のamazonで変えるため早速注文!
しかも、ROCK64のイメージ一覧を確認すると CentOS があるじゃないですか!

これは次の日にすぐ到着しました 🙂

ちなみにUSBは以下を購入しました。

早速、MicroSDにCentOSを入れて起動を確認!!
よっしゃ!と思ってOSの設定しようとしたら、ファイルシステムがRead Onlyに😇😇😇
どうも最新バージョンの基盤とイメージではカーネル起動時にエラーが出てファイルシステムがうまく認識できないようでCentOSは断念…。

しょうがいないので、駄目元でUbunt 18のイメージを使ったら問題なく起動しました。
で、k3s動くんかなぁと思いながらセットアップしたらめちゃんこ簡単に動くじゃ無いですか。
ktkr!!と言うことで今の構成は次のようになっています。

Rock64は秋月電子通商で買った方が安かったです。が、すぐ欲しかったので今回はAmazonでポチりました。

ラズパイ + Rock64のk3sでAWXを動かす

クラスタ構成

クラスタ構成はこんな感じになっています。
AWXのpodはRock64上で動かします。

Ubuntuのセットアップ手順

ネットワーク設定

rock64でログインしてsudoします。

ユーザー パスワード
rock64 rock64

以下のように環境に合わせてIPを設定します。

設定を反映します。

ホスト名/hosts設定

ホスト名とhostsを設定します。

k3s agent導入

以下の手順(Fedoraと同じ)で導入しました。

AWXデプロイ

k3sにAWXをデプロイします。
普通にデプロイしてしまうと /var/lib/awx/projectsawx-webawx-celery で共有できず手動でProjectを追加できなかったり、podを動かすノードを固定化したかったのでマニフェストを以下のように書き換えました。

あと、一時的にデプロイされるmanagement-podはmasterで動かすようにしました。
awx podと同じノードで動かすと処理が重くなるため分けたかったからです。

この状態でデプロイします。

Rock64でのAWX体感速度

以下は、Apacheをインストール(SSH経由)するPlaybookを実行した時の動画です。
Playbookは手動で作っています。

awx-0 pod on Rock64 from sky_joker on Vimeo.

gitでPlaybookをcloneする時は、もっさりします。
そのため、快適に使う場合はSSDを使った方がいいかもしれません。(Rock64はUSB3.0且つUSBブートが可能です)

一先ず、そこまでストレスを感じずにやりたかったことは出来るようになったので個人的には満足しました 🙂
これで遊べる٩( ‘ω’ )و

ヒートシンクについては以下がオススメです。

余談

Rock64に間違えて12VのUSBを挿してしまったためか初回購入したものは壊してしまいました。
電源は入るんですが、MicroSDから起動せず…
そのため、2台目を購入したりしています。

間違えて5V以上を挿すと壊れる可能性があます。。。

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください