夏休みの自由工作(1)

Raspberry Pi3でCephを動かす

  • 会社の仕事でCephをバックエンドストレージとして検証する必要が出た
    • Cephについてはさわり程度しか扱ったことは無い
    • 夏季休業中の間に最低限の知見は獲たい
  • ただVMで立ち上げるだけでは味気ない
    • いっそ変な環境でやろうぜと出来るかどうか調べる前にラズパイに手を出した

1. 準備編

  • Cephのデータノードを置くサーバを準備する

1-1. 購入

  • 当初は価格差と電源要求の緩さからRaspberry Pi2 Bを予定していた

    • 10日に秋葉原でさまよったが秋月は当日丁度休業日
    • 他の空いている店は軒並み2は扱っていないか品切れ
  • 諦めかけたが色々落ち込む事があった13日に半ば自棄、半ばストレス解消でamazonで一式購入

    f:id:uyT4vEne:20160815210709p:plain

  • Raspberry Pi3 B 4個

    • システム領域用のMicroSDHD 32GB 4枚
    • ストレージ領域用の128GB USBメモリ6本(3ノードに2本ずつ装着)
    • 画面には映ってないけれど整列用のアクリルケース
  • 給電用のUSB電源アダプタ1個

  • ポートが足りないのでノンインテリなスイッチ

    • 接続用LANケーブル4本
  • 自宅Linux環境はSDHD読めないのでそのUSBリーダライタ

  • 作業時用のUSB有線キーボードが無かったので有線キーボード

  • 仮に出来上がってもその値段で買えるものから大きく劣るスペック。無駄遣いにも程がある

    • でももっと給料がよければネットワークの勉強用にスイッチをインテリにしてたと思います

1-2. OSの準備

  • 結果から言えば問題なく、懸念していたSDカードの相性問題も出なかった

    • が、結果以外の経緯についてはそれなりに苦労したためメモする
  • 前述のとおり、当初はラズパイ2の予定だった

    • そのため事前に参考にしていたubuntu ラズパイ2の検索で出てくるこの記事を参考に行った

    gihyo.jp

  • 記事内の手順を随時自分の環境+Pi3に置き換えてインストールを試した

    • ブートローダの書き込みで上手くいってないのか電源は入るもののブートシークエンスが開始されず
    • 記事内のchroot周りではqemu-arm-staticパッケージがCentOS7では見つからずchroot出来ず
    • qemu-arm-staticを自前makeするか、作業用のubuntuVMでも用意するかとか考えてたら…
  • 公式のドキュメントでも探そうかと思ったら普通にパッケージが置いてあった

    • この手順通りに作業し、冒頭でも書いた通り無事インストールが出来た
    • 16.04を選択。またGUIは今回必要ないのでOptional系の手順は実施せず

    ARM/RaspberryPi - Ubuntu Wiki

  • ネットワークも深く考慮せずにDHCPでIP付与、自宅のネットワークと特に切り分けはしない

  • SDHDの書き込み速度が遅く、焼きながら並行してOS起動したPi3の初期設定などを行っていた

    f:id:uyT4vEne:20160815214909p:plain

1-3. 配線と組み立て

  • 全台仮接続を行い起動と疎通が確認が取れたので一旦全台起動のまま放置

  • この時点ではケースのみ到着していなかったため14日はここまで

  • 日が明けて15日、早い時間にケースが届いたので装着しつつケーブリング

    • 幸いケースが起動したままでの作業が可能な形式だったため起動したまま作業
    • ケーブリングはいうに及ばず
  • 最終的にはこんな外見で落ち着きました。初日に比べるとだいぶすっきり

    f:id:uyT4vEne:20160815215024p:plain

  • 準備編はここまで、次回はCephインストール編を予定しています

e6zout.hatenablog.jp