Googleのイベントで ラズパイ30台くらい 仕掛けてきた 2017/12/16 九州インフラ交流勉強会(Kixs) Vol.006
自己紹介
熊野良 (@ryok607jp)
Groovenauts,Inc.
- MAGELLAN BLOCKS SRE
- BLOCKSサポートセンターマネージャー
- OPEN AI LAB 事務局
MAGELLAN BLOCKS: https://www.magellanic-clouds.com/
OPEN AI LAB: https://openai-lab.org/
GCPUG Fukuoka Organizer
GCPUG Fukuoka: https://gcpugfukuoka.connpass.com/
ざっくりですが、こうやってます
スマートフォンから発生する電波強度を会場に仕掛けたRasPiで取得した。
(Probe Response)
MAGELLAN BLOCKS経由でCloud MLに流し込み電波強度から位置を予測させデ
ータを正規化した。(事前に位置情報の学習データが必要)
閲覧用サイト・アプリでヒートマップを表示。
RasPi H/Wスペック
本体: RaspberryPi3 Model B RS版日本製
SDカード: 32GB SANDISK SDSDQUPN-032G-J35A
ACアダプター: スイッチングACアダプター5V/2.5A AD-B50P250
ケース: RaspberryPi 拡張ボードケース 3B/2B/B+用
2.4GHz用無線LAN子機: BUFFALO WLI-UC-GNM2
ブースエリアに配置
台数の見積
- 高い場所(ブースの上方など)にRasPiを仕掛けられる箇所は半径10m
- 低い場所(腰の高さ程度)は半径5m
として図面を元に会場を網羅できる配置を検討した。
電波強度は安定しないので2台以上網羅できる配置とした。
ブースエリアに13台必要ということがわかった。
各セッションルームにもRasPiを仕掛けたので全部で31台。
RasPiの大量生産
構築はAnsibleでいけるやん!
https://github.com/groovenauts/raspi-ops/tree/master/ansible
って思ってたけど、OS(Rasbian)やN/W、SSH初期設定は別で必要。
RasPiからUSBのSDカードリーダ/ライター経由で構成copyするツールがある。
https://github.com/billw2/rpi-clone
使い勝手の向上、shellcheckを通すためにforkしてカスタマイズした。
https://github.com/kumanoryo/rpi-clone
当たり前だけど
当日RasPiが動いていない、データがとれていないなどを監視する必要がある。
- Zabbixで監視した。
- Rasbianがzabbix-agent 2.2 までしか対応していなかったので2.2系ベース。
- zabbix-serverはGCP上にGCEで構築した。
- zabbix-agent -> zabbix-proxy -> zabbix-server(GCE) という経路。
- 検知したらslackに通知される仕組み。
当日大きなトラブルはなかった。
とはいえやっておくと安心感が段違いなのでやっておいて本当によかった。
イベント2日間を終えて
RasPi3じゃオーバースペックだった
CPU/メモリがリソースグラフ上ベタベタだったのでZeroでもよかったか
も。
無線LANのドングル、もっと感度いいものにしてもよかったのでは
今回弊社に知見がなかった、検証する時間がなかった。
現場は生物
配線オーダー違い、ブースレイアウトの変更、学習データの取り忘れな
ど。