Let’s join in OpsWorks world!
NE開発本部 NE開発部 NE開発3課
中野 茂生
サーバーインフラ構築・運用
サーバー開発ディレクション
をやっています
サーバーインフラ構築・運用を担当
楽する
こんな感じで
OpsWorksと
いう道具を
使って。
キーワード
共通化
構成
Review
1.共通化
たくさん
あるよ~
共通化って?
余分な手間を
減らす
差を減らす
共通化によって…
操作が減る
情報が減る
教える量が減る
ドキュメントが減る
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OpsWorks
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OS
開発言語
フレームワーク
コード管理
その他
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OS
開発言語
フレームワーク
コード管理
全て共通化
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OS
開発言語
フレームワーク
コード管理
名前は?
プロジェクト
GAME X
プロジェクト
GAME X
インフラ共通基盤
HOGE S
プロジェクトが
消えても
存在は消えない
共通化は
時間が必要
名付けが
共通化の
第一歩かも
2.構成
レシピの
構成
たくさん
さばける
やつで!
適切な構成に
する必要がある
なぜ?
スケールに合わせて
サーバー構築が
短時間にできる
あわてない
精神的に
楽になる
OpsWorks
ハンズオン!
WordPress
動きません
でしたw
いろいろで
きそうだけ
ど…
よく
分からない
いまは
このように
思います
機能
機能=Layer
レシピ
機能を実現する
プログラム群
レシピ
グループ
グループ=Stack
機能毎にサーバー
を立ててもいいし
1台にしても
いい
「ドリスピ」では
Stack: Staging
Layer: Application
開発
環境ゲーム管理
タスク
キューイング
ゲームAPI
キャッシュ
DB
MasterData
DB
UserData
非同期処理
Stack: Production
Layer: ゲーム管理
Layer: タスクキューイング
Layer: 非同期処理
Layer: ゲームAPI
Layer: 監視 本番
環境
ゲーム管理
タスク
キューイング
ゲームAPI
キャッシュ
DB
MasterData
DB
UserData
非同期処理
監視
Stack: Production
Layer: ゲーム管理
Layer: タスクキューイング
Layer: 非同期処理
Layer: ゲームAPI
Layer: 監視 本番
環境
ゲーム管理
タスク
キューイング
ゲームAPI
キャッシュ
DB
MasterData
DB
UserData
非同期処理
監視
規模に依存しない
レシピは
1つの機能の中で
更に分ける
実行タイミング毎に
実行タイミング毎に
↑
ライフサイクル
イベント
Layer 監視する側
Setup
Configure
Deploy
監視機能の
導入
監視機能の
設定
Layer 監視される側
Setup
Configure
Deploy
リソース報告
機能の導入
機能単位
且つ
ライフサイクルイベント単位
3.Review
おかねは
もう不要
だよね?
OpsWorksのキモ
レシピ
必ず他の人が
コードを
確認する
=(CodeReview)
大きくズレない
方針、方向性
が
合ってくる
みんなが
協力して
楽にしてくれる
もう一つ重要な点
AMIは、全く同じも
の=動くのは当然
OpsWorksは毎回構築(※AMIのみの起動は除く)
毎回同じ結果に
しないと
いけない
冪等性(べきとうせい)
何度でも同じ結果が得
られること
エラーがなくとも
冪等性がない
レシピ開発フロー
レシピのコード
ダウンロード
作成・変更・削除
動作テスト
コードレビュー
レシピ開発フロー: GitHub
master branch
fork master
commit
push master
pull request
clone master
code review
checkout
test
merge
■最終版
■テスト用
■開発用
レシピ開発フロー: GitHub
master branch
fork master
commit
push master
pull request
clone master
code review
checkout
test
merge
■最終版
■テスト用
■開発用
レビューしない
レビューした
1.共通化 2.構成 3.Review
「楽する」
が
「楽する」
ができる!
TIPS
インスタンスが起動できない
ことを知る手段は
画面だけ
TIPS
運用開始前に
全削除
達成感!
TIPS
レシピの開発修正作業は開発
時間の負担よりも心理的な
プレッシャーが大きい
ご清聴ありがとうございました~

Let's join in OpsWorks world!