http://www.monotaro.com/ 尼尼尼尼尼尼尼 尼尼尼尼尼尼尼尼尼尼尼尼尼尼 ! DevOps 尼尼 - Developers Summit 2016 KANSAI - 尼尼 尼尼 尼尼尼尼 MonotaRO IT 尼尼 尼尼尼尼尼尼尼 尼尼尼尼尼尼尼
http://www.monotaro.com/
尼崎から世界へ!モノタロウの海外展開を支える DevOps 基盤- Developers Summit 2016 KANSAI -
古畑 耕輔株式会社MonotaRO IT部門海外案件チーム チームリーダー
http://www.monotaro.com/
自己紹介
• 古畑 耕輔• 株式会社 MonotaRO IT 部門• EC アプリケーショングループ 海外案件
チーム• チームリーダー• 2002 年 5 月入社だったと思う
http://www.monotaro.com/
モノタロウの紹介• 設立 2000 年 10 月( 2009 年東証一部上場)• 事業内容 インターネット等を利用した工場・工事用間接資材、 自動車アフターマーケット商品の通信販売• 商品点数 900 万点• 売上 ( 単体 ) 556億円• 従業員数 正社員 294 名
アルバイト・派遣 872 名• 登録口座数 177 万口座
http://www.monotaro.com/
間接資材の EC サイト
http://www.monotaro.com/
取扱商品(間接資材)例工具・消耗品事務用品 科学用品
カー用品
http://www.monotaro.com/
MonotaRO の成長
6
http://www.monotaro.com/
間接資材購買 – モノタロウ以前商品がほしい 営業に連絡 価格交渉
見積発注納期確定納品
人的コスト時間がかかる
http://www.monotaro.com/
間接資材購買 – モノタロウ以後
商品がほしい 当日出荷
すぐ届く価格交渉なし
http://www.monotaro.com/
それまでの「常識」を覆しお客様に利便性を提供
http://www.monotaro.com/
モノタロウの IT 部門
http://www.monotaro.com/
組織概要
http://www.monotaro.com/
IT 部門が開発・運用しているシステム
http://www.monotaro.com/
IT 部門の組織・構成IT 部門
システムインフラ
基幹CRM
基幹SCM
物流システム
Web API
EC AP
コンテンツ開発
大企業連携
IT 基盤
データ分析
http://www.monotaro.com/
システムは基本的に内製
http://www.monotaro.com/
•時代の変化に素早く対応•スピード感•競争優位
http://www.monotaro.com/
モノタロウで使われている技術の一部
http://www.monotaro.com/
他にもまだまだ沢山!
http://www.monotaro.com/
あるのですが憶えきれない汗
http://www.monotaro.com/
今日の EC サイト運営はやること沢山
http://www.monotaro.com/
• 商品検索エンジン• レコメンドエンジ
ン• モバイルサイト• モバイルアプリ• ユーザー行動の計
測
• データ分析• 機械学習• CVR 改善• SEO• SEM
http://www.monotaro.com/
使う技術も自然と増えてくる
http://www.monotaro.com/
コマーシャル
あなたの「やりがい」きっとみつかる
モノタロウ
http://www.monotaro.com/
閑話休題
http://www.monotaro.com/
本日伝えたいこと
http://www.monotaro.com/
目標を達成する為の全体最適化
そのための DevOps
http://www.monotaro.com/
国内で順調に成長を続け海外進出が視野に
http://www.monotaro.com/
• 2011 年、韓国に現地子会社設立–間接資材の EC サイト「 NAVIMRO 」オープ
ン• 2013 年 10 月、シンガポールに間接資材
の EC サイトオープン• 2015 年 1 月、マレーシアに(以下略)
http://www.monotaro.com/
http://www.monotaro.com/
• 「シンガポールだと、~」• 「マレーシア風にいうと、~」• 「東南アジアでは、~」• 調子に乗った発言が増える• ( シンガポールもマレーシアも行ったことない )
http://www.monotaro.com/
〇〇夜明けて、
http://www.monotaro.com/
http://www.monotaro.com/
• 海外案件も同時並行で担当• 国内案件だけでもやること目白押し
http://www.monotaro.com/
• 国内案件–既存ビジネスの成長
• 海外案件–新規ビジネスの成長
http://www.monotaro.com/
両方、大事、ジレンマ
http://www.monotaro.com/
なんとかならないか
http://www.monotaro.com/
海外案件チーム発足
http://www.monotaro.com/
海外案件チームグループマネージャ
チームリーダー
若手エンジニア (1
年目 )
若手エンジニア (4
年目 )
http://www.monotaro.com/
海外案件チームのミッション
http://www.monotaro.com/
海外 EC サイトの• 流入を X倍に増やす• 売上を X倍に増やす
http://www.monotaro.com/
海外 EC サイト経由の売上はまだまだこれから
http://www.monotaro.com/
早くこれらの目標を達成したい!
http://www.monotaro.com/
早くこれらの目標を達成するには?
http://www.monotaro.com/
• 期待効果の高い施策を立案・実施• 保守・運用にかける時間を減らす• 案件着手からリリースまでの期
間を短縮したい
http://www.monotaro.com/
保守・運用にかける時間を減らす
http://www.monotaro.com/
海外 EC サイトの構成www.monotaro.s
gwww.monotaro.
my
Route 53
ElasticLoad Brancer
Cloud Front
S3
WebApp
商品画像メディア等
EC2 Instances
WebApp
DB
http://www.monotaro.com/
2016 年 5 月某日シンガポール、マレーシア
に加え更に 5 か国に EC サイトオー
プン
http://www.monotaro.com/
あいつがやってきた
http://www.monotaro.com/
http://www.monotaro.com/
• Googlebot くん• ライフワーク–クロール
• 行動原理–「そこにページがあるから」
http://www.monotaro.com/
欠点
http://www.monotaro.com/
たまにやりすぎる
http://www.monotaro.com/
www.monotaro.sg
www.monotaro.my
Route 53
ElasticLoad Brancer
Cloud Front
S3
WebApp
商品画像メディア等
EC2 Instances
WebApp
DB
××
http://www.monotaro.com/
瞬殺
http://www.monotaro.com/
海外 EC サイトの掲載商品数約 40 万
http://www.monotaro.com/
40 万 × 7 サイト= 280 万ページ
http://www.monotaro.com/
豊富なエサ
http://www.monotaro.com/
Googlebot くんのためにチューニング
http://www.monotaro.com/
Googlebot が暴れる度にこれを繰り返す?
http://www.monotaro.com/
積もれば結構な時間になるその時間をもっと有効に使い
たい
http://www.monotaro.com/
インフラチームと対応を協議
http://www.monotaro.com/
Auto Scale を導入
最大 8台まで Auto Scale
www.monotaro.sg
www.monotaro.my
Route 53
ElasticLoad Brancer
Auto Scaling
Cloud Front
S3
WebApp
商品画像メディア等
EC2 Instances
WebApp WebApp
DB
http://www.monotaro.com/
http://www.monotaro.com/
開発スピードを上げる
http://www.monotaro.com/
開発環境で色々困ってます
http://www.monotaro.com/
秘伝のタレ化したセットアップ手順
http://www.monotaro.com/
それじゃ、まずはこのマニュアルをみてサイトのセットアップやろうか
マニュアルみてセットアップしましたが、エラーが出ます
あれ、なんでだろな。あー、これは Bさんが持ってる設定ファイルを使ってうんぬ
んかんぬん
解決しました!
まだエラーが、、、×5
(良い笑顔 or ドヤ顔)
新人 ベテラン
http://www.monotaro.com/
普段の開発はローカルマシン但し、 Windows + XAMP
http://www.monotaro.com/
結合試験用のサーバが一台VirtualHost職人
http://www.monotaro.com/
•環境理解に時間がかかる•「〇〇さんに聞けば分かる」–ボトルネック–長老のような人の誕生
http://www.monotaro.com/
開発環境をもっとシンプルに!
こんなところで脳みそ使いたくない
http://www.monotaro.com/
やったこと
http://www.monotaro.com/
Docker導入
http://www.monotaro.com/
MW 、 AP のセットアッププロセスを
Docker の中に閉じ込める
http://www.monotaro.com/
docker file はもちろん Gitで管理
http://www.monotaro.com/
ローカルマシンにDocker Machine導入
http://www.monotaro.com/
結合試験環境にAmazon ECS
http://www.monotaro.com/
Docker Repository にはAmazon ECR
http://www.monotaro.com/
出来上がった環境
http://www.monotaro.com/
Developers BitBucketJenkins
Amazon ECR
ECS Cluster 01
Amazon ECS
Local PC docker build & push
commit
webhook
ECS Cluster 02
ECS Cluster 03
ecs-cli compose
VirtualBox
Docker Machine
http://xxx.yyy.zzz/
http://xxx.yyy.zzz/
http://www.monotaro.com/
苦労したこと
http://www.monotaro.com/
• Docker回り知識–Docker Swarm, ECS, ECR
• コミュニケーション–インフラチームの人が一番詳しい–知識不足で的確な質問ができない
http://www.monotaro.com/
コミュニケーション大事
http://www.monotaro.com/
直接コミュニケーション歩み寄り笑顔
http://www.monotaro.com/
共に歩む仲間話せば分かる
http://www.monotaro.com/
そろそろ自動テストもやってみたい
http://www.monotaro.com/
が、現状、特に困ってないので優先度:低
http://www.monotaro.com/
でも、国内案件チームでは自動テストやってますよ!
http://www.monotaro.com/
その他の取り組み
http://www.monotaro.com/
定例リリース日
• 国内 EC サイトの場合、基本的に週 1 リリース
• その日の定時後にリリースを行っている
http://www.monotaro.com/
定例リリース日のメリット
• リリースタイミングを集中させ、何か不具合があった場合のお客様への影響を局所化する
• リリース日を作ることにより、開発にリズムを持たせる
http://www.monotaro.com/
定例リリース日のデメリット
• リリース可能状態な機能があるのに、リリース日までリリースを待つ必要がある
• その機能が生み出す利益の機会損失が発生している
日 月 火 水 木 金 土
開発終了リリース可能状態に
リリース日
3日間の機会損失
http://www.monotaro.com/
定例リリース日を設けない
• リリース可能状態になったらその日の内にリリース
• リリース時間も特に設けない• 利益を受け取れるまでの期間を圧縮
日 月 火 水 木 金 土
開発終了リリース可能状態に-> リリース
リリース日
機会損失なし!
http://www.monotaro.com/
本日伝えたいこと
http://www.monotaro.com/
目標を達成する為の全体最適化
そのための DevOps
http://www.monotaro.com/
最後に
http://www.monotaro.com/
チームメンバー増やしたいなぁ
• 中規模案件で向こう半年の予定が埋まっている• 細かな案件もやっていきたいけど、メンバー2
人だと中々手が回らない• どっかに将来の仲間がいないかなー
http://www.monotaro.com/ 97
http://recruit.monotaro.com/
エンジニア超絶募集中
http://www.monotaro.com/
ご清聴ありがとうございました!
http://www.monotaro.com/