Atlassian Summit  2015での
DevOps関連の取り組みに
ついて
Atlassian Community  Day  2015
グロースエクスパートナーズ(株)
⼤大中 浩⾏行行
2015/11/27
Copyright© 2015 Growth xPartners, Inc. All rights reserved..
Copyright©  2015  Growth  xPartners,  Inc.  All  rights  reserved.
弊社について
n グロースエクスパートナーズ株式会社
(Growth  xPartners Incorporated.)
n 所在地 東京都新宿区⻄西新宿
n 受託開発を中⼼心としたソフトウェア開
発企業(システムインテグレーター)
n http://www.gxp.co.jp/atlassian/
1Copyright© 2015 Growth xPartners, Inc. All rights reserved.
2Copyright© 2015 Growth xPartners, Inc. All rights reserved.
報告テーマ
n 「Atlassian Summit  2015でのDevOps関連の取り組
みについて」
n アトラシアン社内での取り組み
n ユーザーでの取り組み
3Copyright© 2015 Growth xPartners, Inc. All rights reserved.
アトラシアン社内での取り組み
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 4
2015/1/1
セッション
n JIRAʻ‘s  Journey  from  Product  to  Platform:  
Managing  a  Tectonic  Shift  in  your  Delivery  Model
n The  Inside  Story  of  how  Atlassian Makes  
Software
n Scaling  to  150,000  Builds  a  Month...  and  Beyond
n Docker,  Continuous  Integration,  and  You
5Copyright© 2015 Growth xPartners, Inc. All rights reserved.
アトラシアンの開発チームの規模
について
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 6
2015/1/1
JIRA開発チーム
n 拠点:サンフランシスコ、シドニー、アムステルダム
n メンバー250⼈人超
n うち開発者が175⼈人超
n ソースコードはおよそ500万⾏行行
7Copyright© 2015 Growth xPartners, Inc. All rights reserved.
n JIRAのコア部分には18606のユニットテストがあり
、27712の機能テスト(functional  test)がある
n JIRAには759のビルドプランがある
n アトラシアン全体で1ヶ⽉月で15万回のビルドが⾏行行われ
る
8Copyright© 2015 Growth xPartners, Inc. All rights reserved.
JIRAのプラットフォーム化
nこれまでのJIRAはモノリシックな汎⽤用アプリケーショ
ンだった
n顧客からのニーズに応えるには、再構築が必要だった
• ⼤大きな1つのアプリケーションという構成から、プラットフォ
ームとそこに積まれるプラグインという構成に
9Copyright© 2015 Growth xPartners, Inc. All rights reserved.
n One  Team
n 新機能のチームとバグフィックスのチームを分けない
n Test  early  and  often
10Copyright© 2015 Growth xPartners, Inc. All rights reserved.
n Enpower everyon to  be  responsible  &  Faster  a  
culture  of  support
p チーム間の調整をマネージャーだけでやっていたことによる、 「お前の
ところの修正が悪いんだ」紛争への策
p バックログの共有
p バグや障害の依存関係がわかるように
p 開発ブログによるコミュニケーションの加速
200⽇日間で97ポスト
11Copyright© 2015 Growth xPartners, Inc. All rights reserved.
アトラシアンはどのようにソフトウェアを開発しているのか
12Copyright© 2015 Growth xPartners, Inc. All rights reserved.
「想像⼒力力のない⼈人間は、
⼀一貫性を最後の拠り所に
する」
-‐‑‒ オスカー・ワイルド
振り返り(Retrospective)
n 3L(Liked  /  Lacked  /  Loathed)
n 4L(  3L  +  Longed  for  )
n Happy  ,  Sad  ,  Confused
n Actions(try)は多くしない
13Copyright© 2015 Growth xPartners, Inc. All rights reserved.
Empathy.  You  canʼ’t  outsource  it.
n 「共感重要、丸投げするな」
14Copyright© 2015 Growth xPartners, Inc. All rights reserved.
DevOps
n DevとOpsの協⼒力力
n Infrastracure as  code
n ビルドパイプライン
n テストが⾃自動化されていることを”done”の定義に加
える
15Copyright© 2015 Growth xPartners, Inc. All rights reserved.
継続的インテグレーション
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 16
2015/1/1
アトラシアン社内でのBamboo活⽤用
n Bamboo 12サーバー
n ビルドエージェントmax1200エージェント
n 3500ビルドプラン
n プランブランチ14000ブランチ
17Copyright© 2015 Growth xPartners, Inc. All rights reserved.
「サーバーは家畜であってペットではない」
n “Servers are  not  pets,  Servers  are  cattle”
n CERNのTim  Bell⽒氏のPuppetConf 2012  のキーノー
トでの発⾔言。
18Copyright© 2015 Growth xPartners, Inc. All rights reserved.
n The  pets:  
these  are  the  guys  you  give  nice  names,  you  
stroke  them,  you  look  after  them,  and  when  they  
get  ill,  you  nurse  them  back  to  health,  lovingly.  
n The  cattle:  
when  they  get  ill,  you  shoot  them.
19Copyright© 2015 Growth xPartners, Inc. All rights reserved.
これがスケールするBambooだ
n Puppetによる構成⾃自動化
n ステージング環境での動作確認
n CucumberによるCI
20Copyright© 2015 Growth xPartners, Inc. All rights reserved.
Plan  Templates  Pluginによるビルド設定
n DSLでのBambooビルド設定
21Copyright© 2015 Growth xPartners, Inc. All rights reserved.
Plan  Templates  Plugin
22Copyright© 2015 Growth xPartners, Inc. All rights reserved.
http://www.slideshare.net/GoAtlassian/scaling-to-150000-builds-a-month-and-beyond/66
Docker
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 23
2015/1/1
Dockerによる継続的インテグレーション
n Dockerコンテナによるユニットテスト
n 安定したビルドのために、ビルドの構成をコードで定義する  
n  ビルドのスケール化
n docker-‐‑‒composeによるコンテナ間連携  
n  テスト⽤用データベース  
n  各種ミドルウェア
24Copyright© 2015 Growth xPartners, Inc. All rights reserved.
デモ
ndocker-‐‑‒composeによるPostgreSQLとElasticsearch
のリアルタイム連携
n https://bitbucket.org/hiroyuki_̲ohnaka/devweek
15-‐‑‒code
(  Fork from  https://bitbucket.org/ssmith/devweek15-‐‑‒code )
25Copyright© 2015 Growth xPartners, Inc. All rights reserved.
ユーザー事例例でのDevOpsの取り
組み
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 26
2015/1/1
セッション
n Creative  Branching  Models  for  Multiple  Release  
Streams
n How  to  Build  in  Quality  from  Day  1  using  Lean  
QA  and  Agile  Testing
n Baking  Stash  in  the  AWS  Cloud  at  Netflix
27Copyright© 2015 Growth xPartners, Inc. All rights reserved.
DevOpsを⽀支える技術
n テスティング
n バージョン管理理
n “All  your  code  are  belong  to  us.”
n ⾃自動化
28Copyright© 2015 Growth xPartners, Inc. All rights reserved.
Git+Mavenによるブランチ管理理
ベストプラクティス
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 29
30Copyright© 2015 Growth xPartners, Inc. All rights reserved.
http://de.slideshare.net/GoAtlassian/creative-branching-models-for-multiple-release-streams/19
31Copyright© 2015 Growth xPartners, Inc. All rights reserved.
http://de.slideshare.net/GoAtlassian/creative-branching-models-for-multiple-release-streams/20
n developブランチとfeatureブランチではpom.xml内
のバージョンを分ける
n developブランチ ...  2.0.0-‐‑‒SNAPSHOT
n fature-‐‑‒xxxブランチ ...  2.0.0-‐‑‒xxx-‐‑‒SNAPSHOT
n デプロイ・リリース対象の環境が分かれている場合は
、mavenのリモートレポジトリの場所を分ける
32Copyright© 2015 Growth xPartners, Inc. All rights reserved.
33Copyright© 2015 Growth xPartners, Inc. All rights reserved.
http://www.slideshare.net/GoAtlassian/how-to-build-in-quality-from-day-1-using-lean-qa-and-agile-testing/49
Baking  Bitbucket in  the  AWS  Cloud  at  Netflix
n NetflixのBitbucket Server構築の事例例
n オンプレミスからAWSに移⾏行行
n アクティブユーザー950
n Jenkinsステーブ数 335
n 1⽇日あたりのビルド回数 7132
n ビルド対象の⾏行行数 1610528526
34Copyright© 2015 Growth xPartners, Inc. All rights reserved.
まとめ
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 35
2015/1/1
DevOpsは無から⽣生まれない
n フィードバックループ、改善サイクル
n ツールを⽣生かす⽂文化、⽂文化を⽣生かすツール
n 開発、ITサービス、ビジネスをつなぐ
36Copyright© 2015 Growth xPartners, Inc. All rights reserved.
バリューチェーンのための4つのD
n Discover
n Decide
n Design
n Delivery
37Copyright© 2015 Growth xPartners, Inc. All rights reserved.
おまけ
Copyright© 2015 Growth xPartners, Inc. All rights reserved. 38
2015/1/1
JavaOneにて
39Copyright© 2015 Growth xPartners, Inc. All rights reserved.
Thank you!
n ⼤大中 浩⾏行行
n グロースエクスパートナーズ(株)
テクニカルリード
n http://blog.fieldnotes.jp/
n @setoazusa
40Copyright© 2015 Growth xPartners, Inc. All rights reserved.

Atlassian Summit 2015でのDevOps関連の取り組みについて