14
NII で ででででで Hadoop でで ( でででででででで ) でででででででで でででででででででででで でででで ( ででででででででででで )

NIIでいろいろなHadoop環境(だけじゃないけど)を作ったり壊したり動かし続けたりしている話

Embed Size (px)

Citation preview

NII でいろいろなHadoop 環境 ( だけじゃないけど ) を作ったり壊したり動かし続けたりしている話

谷沢智史 ( 株式会社ボイスリサーチ )

誰? 谷沢智史

◦ 株式会社ボイスリサーチ エンジニア◦ GitHub/Twitter: @yacchin1205

昔 : オンラインゲームとか映像コンテンツとか 今 : クラウド運用とかロボットとか

国立情報学研究所 (NII)でプライベートクラウドの運用支援

国立情報学研究所には… 所内研究者向けベアメタルクラウドサービス

◦ 研究クラウド / アカデミックインタークラウド

授業や研究のため、ここで Hadoopを動かしてます

学術機関 … 要求が多様 教材用途 : VM ベースにして自由に壊せるようにしたい / それを 1 週間だけほしいー

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

Baremetal

VM VM VM VM VM

NN ZK NN ZK ZKDN DN DN

学術機関 … 要求が多様 分析用途 : ログ集約には Fluentd がいいなあ / 認証つけて /

OpenTSDB ってのを使いたいよね / しばらく維持し続けたい / etc…

Baremetal

DN RegionServer

Baremetal

DN RegionServer

Baremetal

DN RegionServer

Baremetal

DN RegionServer

Baremetal

DN RegionServer

Baremetal

DN RegionServer

Baremetal

DN RegionServer

Baremetal

DN RegionServer…

Baremetal

NN ZK

Baremetal

NN ZK

Baremetal

Master ZK

Baremetal

Fluentd

Baremetal

Fluentd OpenTSDB

KDCMaster

KDCSlave

KDCSlave

Hadoop エコシステムは広大・・・!

構築・運用をどうやろう? Hadoop の管理ツールを使う?

◦ ディストリビューションで完結できれば、とても便利なツールがあるが…◦ 管理ツールがサポートするソフトウェアに利用を絞れれば使えそう

構成管理ツールを使う?◦ 例えば Ansible とか… 多くの Role が公開されている◦ 構築 : うまくパラメータ化し、 Playbook にまとめれば構成管理ツールで完結できそう◦ 運用 : 知識「どういうときに、何をやるべきか? 」の表現・共有は構成管理ツールでは難しそう

Literate Computingfor Reproducible Infrastructure

Jupyter( 旧 IPython) + Ansible

実行コード実行結果説明を Notebook として、ひとまとめに

構築・運用作業をAnsible Playbook として抽象化

インストールとか … 現在は HDP 2.3 ベース / NTT データさんのご協力

構築・運用作業をAnsible Playbook として抽象化

フォーマットとか

手順・説明を Notebook に

作業を Ansible 経由で 特定のノードで何かコマンドをたたきたいとか

◦ 運用 … Decommission に必要なコマンド実行 / パッケージのアップデート…

手順だけでなく経緯の説明も 操作とともに説明を書いたりとか

Hadoop 以外のものも Hadoop 以外のものも同じ枠組みでまとめられる

◦ Xen のインストールとか、 Fluentd のインストールとか…

1 年試してみた感触… 過去やったことを簡単に再現できる

◦ 状態を持っているものはダメだったりする – 事前条件のチェックなどを書き足す 「どうやればいいの?」に対して、 Notebookを渡して「これ見て」で済む

◦ 済まない場合もある – 説明を書き足す 構築・運用作業のリファクタリングが大変

◦ 同じような操作をどうパラメータ化して、次以降に楽をするか?◦ 作業の実施そのものが楽になる分… 操作や説明の継続的改善に取り組む必要運用作業にも Jupyter使ってみましょ !!!!!!!!!