とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

27
Created by Hiroshi Toda ( @thiro1123 )

Upload: hiroshi-toda

Post on 21-Apr-2017

379 views

Category:

Data & Analytics


0 download

TRANSCRIPT

Page 1: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

とある社内ビックデータ基盤にバッチ用コンテナ環境を構築してみた

Created by Hiroshi Toda ( @thiro1123 )

Page 2: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

ところで?

Page 3: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

普段からコンテナつかっていますか?

Page 4: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

現場でコンテナを使ってアプリのデプロイ

してたりしますか?

Page 5: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

自己紹介

戸田 浩史

独立して5年目のフリーランスです

現在のユーザは社内クラウドの利用を推進しているチームで

ビジネスのスピードを殺さずにセキュリティを担保する環境を展開

してます。

好きなAWS:ECS

Page 6: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

今回の話はコンテナ環境を他プロジェクトに

導入する時に、やった(ている)事です。

Page 7: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

話す内容としては

なんで導入する事になったの?

解決したかった問題は?

どのようにすすめた(ている)の?

Page 8: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

なんで導入することになったの?

Page 9: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

プロジェクトで発生していた問題

日々バッチがうまく動作しない!あれ修正するためにアップデートしてみたら、

さらに他のバッチも動かなくなった

\(^o^)/オワタ

事業側の担当者に怒られる orz

むしろ怒られてから障害に気づく。。。

Page 10: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

なんでこんなことになるんだ・・・

Page 11: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

どんな状況か・・・

動いているバッチの数が半端ない。

管理しているサーバ数も半端ない

ジョブ管理ソフトで管理しているが追いつかない。

アラートも見ようとしているしモニタリングもしようとしているが

数が半端ない

Page 12: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

どうやらとてつもなく複雑怪奇な状況らしい

Page 13: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

なんで導入することになったの?(再)

Page 14: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

まず手始めにどうにかしたい問題

バッチが普通に動いてほしい。

バージョンアップとか安全にしたい。

今動いているバッチの邪魔をしない。

手軽にバッチを増やしたい。

素早くバッチを展開したい。

できればローカルでもサーバ上でも同じように動いて欲しい。

Page 15: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

現在は、新しい事したらその倍の問題が発生しない環境

Page 16: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

うーん?

さてどうしたものか・・・

Page 17: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

少しだけコンテナのおさらい

コンテナって?

Source:https://www.docker.com/what‑container

Page 18: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

やりたいことは・・・

何でアプリは動かなくなるの?

ライブラリとか色々とごちゃごちゃしているから・・・

じゃあ、各アプリのライブラリが依存しないようにすれば

いいの?

Page 19: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

自分の隣のいる社員さんに

自分:ライブラリの競合とか気にしたくないなら

コンテナ使うのはどうですか?

社員さん:いいね!(了承3秒)

Page 20: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

なんで導入することになったの?(再)

Page 21: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

現場からは

現場からは以下のような要望も一緒にあがってました。

オンプレミスに在るとあるジョブ管理システム(JP1)からバッチを管理したい。

バッチの実行も結果の取得もオンプレ側でできる様になって欲しい。

Page 22: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

これらの要望を応えるためのコンテナ環境を構築してみました。

Page 23: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた
Page 24: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた
Page 25: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

デプロイや環境構築はJenkinsのジョブでほぼ用意

Page 26: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

現在は・・・

今はこの使ってバッチをオンプレからAWSに移行している最中

導入されたチームに対して、コンテナや今回の仕組みに参考となるソースを共有

自分が所属しているチームは他プロジェクトの進化を手助けするため日々活動中

Page 27: とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた

ご清聴ありがとうございました。

Copyright © 2017 @thiro1123