Top Banner
DevOps at ChatWork - Developers Summit 2013 Summer - 山本正喜 Summit Developers #natsumiS1
21

DevOps at ChatWork

Nov 30, 2014

Download

Technology

Masaki Yamamoto

Developers Summit 2013 Summer キーノートセッション用プレゼン
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DevOps at ChatWork

DevOps at ChatWork- Developers Summit 2013 Summer -

山本正喜

Summit Developers

#natsumiS1

Page 2: DevOps at ChatWork

-自己紹介 -

ChatWork株式会社専務取締役CTO 山本 正喜

ビジネスチャットツール「チャットワーク」を展開中

東京:13人

大阪:13人 USA:6人

Page 3: DevOps at ChatWork

チャットワークのコンセプト

クラウド型ビジネスチャットツールチャットの効率性・シンプルさをビジネスへ

+

ビデオ通話

in the cloud

チャット タスク管理

Page 4: DevOps at ChatWork

2013年7月で22万ユーザー突破導入企業例:

Page 5: DevOps at ChatWork

ChatWorkの規模感 (2013/07現在)

ユーザー数 約22万

利用ユーザー国数 約130ヵ国

メッセージ数 約1億2千万

チャットルーム数 約1千200万

タスク数 約530万

ファイル数 約420万 (約8.5TB)

Page 6: DevOps at ChatWork

わりとミッションクリティカル

ビジネス向けチャット = 落とすと業務に支障

落ちた瞬間、twitter / facebook が阿鼻叫喚・・

Page 7: DevOps at ChatWork

わりとミッションクリティカル

ビジネスユース = 落とすと業務に支障

すいません、すいません、、、※Yahoo! Japanリアルタイム検索より

Page 8: DevOps at ChatWork

DevOps?

Dev:どんどん機能追加したい

VS

Ops:安定運用したい

Page 9: DevOps at ChatWork

ChatWorkにおけるDevOpsの考え方

極力”運用”しない

Page 10: DevOps at ChatWork

ChatWorkの運用体制

1人は入社したてで研修中(7月入社)もう1人も開発兼務 (Androidアプリ)

実質、1人弱で運用しています

Dev:

Ops:

11人

2人

昨年度実績 (稼働率99.99% ※メンテナンスを除く)

Page 11: DevOps at ChatWork

大規模チャットシステムにおける運用の勘所

データベース(write-heavyな負荷)

リアルタイム通信(C10K問題)

ファイルサーバ(要Scale Out)

Webサーバーは並べればいいだけなので簡単。

Page 12: DevOps at ChatWork

大規模チャットシステムにおける運用の勘所

データベース(write-heavyな負荷)

リアルタイム通信(C10K問題)

ファイルサーバ(要Scale Out)

Webサーバーは並べればいいだけなので簡単。

マネージドサービス(PaaS/SaaS)をフル活用する

Amazon RDSDynamoDB

Amazon S3 Channel API

Amazon EC2(IaaS)で自分たちで管理

→→ →

Page 13: DevOps at ChatWork

ソースコード管理

仕様/企画書

課題管理

コミュニケーション

利用しているSaaS

パフォーマンス監視

ログ解析

ネットワーク監視

モバイル開発支援

Page 14: DevOps at ChatWork

自分たちで運用しているもの

障害監視

サーバモニタ

IM通知(bot)

ビルド/デプロイ

検索サーバ

タスクキュー

KPIトラッキング

ソーシャル監視自作

Google SpreadSheet

→自作

自作

自作

Page 15: DevOps at ChatWork

Leanなサーバアーキテクチャ移行

プロダクトの成長

PaaS PaaS + IaaS

PaaS比率

IaaS比率

成長にともない IaaS 比率をあげていく

Page 16: DevOps at ChatWork

障害発生時のフロー

障害発生

基本的に自動復旧•フェイルオーバ•ロードバランサから切り離し•代替機能へフォールバック

復旧

通知

気付いた人がOpsチームに連絡

自動復旧できたか確認•不調なサーバの切り替え•各種プログラムの改修•スケールアップ/アウトの実施

Page 17: DevOps at ChatWork

ChatWorkにおけるDevOpsの考え方 2

DevOps + Biz

Page 18: DevOps at ChatWork

Biz = ビジネス部門 との協力が不可欠

開発部門(Dev)と運用部門(Ops)が協力するだけでは、柔軟でスピーディーなプロダクト開発はできない。

Page 19: DevOps at ChatWork

全社的に見た Dev / Ops / Biz

Dev = デベロッパ&デザイナ Mission: プロダクトの品質向上

Ops = インフラ&サポート Mission: 安定したサービス利用

Biz = マネジメント&マーケティング Mission: リソース確保

全員のMission: 顧客価値の最大化

Page 20: DevOps at ChatWork

ChatWork社で取り組んでいること

ほとんどのコミュニケーションはチャットで。

メールはしない。口頭確認やMTGは最低限に。

プロジェクトごとにグループチャットを作成し、

関係者を全員入れる。(Dev/Ops/Biz問わず)

タスクの生まれる「背景」を共有する。言われた

ことだけをする”作業者”をつくらない。

Page 21: DevOps at ChatWork

ありがとうございました

山本正喜

♡DevOpsBiz

#natsumiS1Summit Developers