fbpx

SoftLayer Bluemix Community Festa 2016 レポート

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

桜もだいぶ散って若葉の季節になってきた2016年4月16日に調布は電気通信大学の校舎をお借りして開催されたIBMのSoftLayerとBluemixのコミュニティイベント、「SoftLayer Bluemix Community Festa 2016」に参加しました。

http://softlayer.connpass.com/event/28141/

dc05d35e1e741c3b230f0b0b464a9c4f

今回は弊社の前佛と木内がそれぞれDockerとApache Sparkについてプレゼンテーションとデモを行いました。

今回のイベントはコミュニティフェスタというように開発元であるIBMさんだけではなく様々な企業の方の講演があり、それに運営を担当してくれたボランティアさんたち、電通大の先生などが協力して開催されました。主体となったのもSoftLayer-UGとBlumixUserGroup、つまりサービスを使う側の人たちが主催になって運営されています。

ということで最初は前佛のセッションから紹介します。このセッションでは最近やたらと流行りのコンテナーであるDockerについて解説しました。その後にDockerを使ってアプリをデプロイするデモ、ここではownCloudやWordPress、ZabbixをDockerを使って立ち上げるデモをお見せしました。

DSCN1430
タイトルの「SoftLayer上でもScrap&Buildしたい!」というところに某社に気を遣ってる感が^^。

このセッションの中ではDockerのイメージがどういう構造になっているのか、DockerコンテナーとDockerイメージの違い、Dockerのライフサイクル、特にDockerのコマンドについての詳しい説明、それからDockerHubやSwarmなどの関連するコンポーネントの話などをしました。デモの部分ではSoftLayerでのDockerの使い方、オプションの設定などをから始まって、既存のWebサイトをDockerを使ってミラーサイトに移行する、というデモを実行しました。docker runコマンドの-d(デタッチモード)、-p(ポートマッピング)などなかなか細かい内容をお見せしつつ、説明が進みます。「どうしてそもそもDockerが出てきたのか?それは開発だけじゃなくて運用の人に対して環境設定などの面倒な作業をなくしたい、そういう思いから出てきたんじゃないかなと思います」と、元データセンターで運用をやっていた前佛だけに実感がこもったデモが進みます。

デモの最後は実際のWebサイト、docs.docker.jpのコンテンツをダウンロードして、コンテナーに格納してSoftLayer上に移設するというデモです。これは本当に簡単で数回コマンドを叩くだけでできてしまうので、これまでサイトのメンテナンスなどでミラーサイトを作ってアクセスを迂回させる作業が必要な時には役に立つのでは?と思います。デモが速すぎてちょっとついていけない人がいるかも?という具合に色々なデモを繰り出しながら前佛のセッションは終わりました。

より詳しいDockerのドキュメントに関しては docs.docker.jp を参照してください。

続いて木内のセッションをご紹介します。ここでは「BlumixとApacheSparkでできるIoTデータの姑分析」と題した内容で、まずはBluemixの紹介から始まりました。BluemixはIBMが展開するPaaSで、PivotalのCloudFoundryをベースにしたアプリケーション開発のためにプラットフォームになります。まずBluemixを使った事例、サンフランシスコのBART、世界最大の自転車レース、ツール・ド・フランス、それとIBMのリサーチグループが行っているプロジェクトポセイドンという水の有効活用を行うための社会貢献のためのプロジェクトを紹介しました。

ここからIoT(Internet of Things)システムを作るための必要要素、センサーからのデータ収集した上でApache Sparkを使って分析をする内容に入っていきます。木内が最初のところで強調したのがこの写真のURL。そうです、BluemixにログインするためのURLで、このページにたどり着くまでに相当苦労したそうです。今見るとちゃんとBluemixのページにはRegistrationとLoginっていうリンクが有るんですけどねぇ。

DSCN1448
一番大事なURLはこれだ!

https://console.ng.bluemix.net/

このデモではBluemix上で利用できるセンサーのシミュレータから温度のデータをMQTT経由で受け取り、それをBluemix上で稼働するNode-Redで集約&加工した上で、JSONデータを扱えるデータベースCloudantに格納してから、Sparkで分析を行うというものです。実際にBluemix上での動作を検証した上で、インターネット越しに木内の自宅のサーバーで稼働しているSparkに送信して分析、というのが実際に動くとカッコいいんですが、処理が遅くてセッションの持ち時間内に終わらないということで事前に保存しておいたセンサーデータを使ってSparkで処理を行いました。ちょっとお料理番組的な感じですね。

MQTTはPublish/Subscribeを使ったメッセージ交換のプラットフォームでセンサーなどのデータをやり取りするのに使われます。プロトコルが軽いのでTCP/IPなどのプロトコルを使うよりもセンサーなどのデバイスにも実装がラクになります。今回はBluemixに用意されているブラウザーで動くセンサーシミュレータを使いました。Node-Redはデータを加工するためのオープンソースのツールでGUIでブロックを繋げたりするだけでデータの加工を行うことができるスグレモノです。そこで加工されたセンサーデータをJSONの形でCloudantに保存します。CloudantはNoSQLと呼ばれるスキーマレスのデータベースをクラウド上で使えるようにしたものです。JSONデータをそのまま保存したり、SQLに似た構文で検索したりすることができます。さらにCloudantからJSONをプラグイン経由でApache Sparkに読み込みます。ここで実際にローカルのファイルシステムにあるJSONのファイルを読み込む時もCloudantに接続して読み込む時もそれほど設定を変更することなく行えることを強調しました。変更するのは4行のスクリプトだけなんです。この辺もBluemix、よく出来ています。最後のSparkでの分析はK平均法を使って異常を発生させたセンサーを選り分けるという処理をやってみました。
DSCN1444
デモで使用したコンポーネントの概念図。

このデモは8個のセンサーシミュレータから数時間に渡ってデータを発生させて吐き出された14万個のデータの中からワザと異常なデータを設定したセンサーを判別するというIoTのシステムを想定しています。このデモではIBMのBluemix、Node-Red、Cloudant、それからApache Sparkを連携させて実際にIoTのシステムを簡単に構築できるというのが分かってもらえたかなと思います。

他にもWatsonの話やBlockchainの入門など幅広いトピックが紹介されたイベントでした。最後の懇親会も盛り上がりましたし、次回のイベントも乞うご期待です。

新規CTA