Let’s join in OpsWorks world!
NE開発本部 NE開発部 NE開発3課
中野 茂生
サーバーインフラ構築・運用 サーバー開発ディレクション をやっています
操作が減る 情報が減る
教える量が減る ドキュメントが減る
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OpsWorks
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OS
開発言語
フレームワーク
コード管理
その他
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OS
開発言語
フレームワーク
コード管理
全て共通化
サーバー構築の自動化
機能のデプロイ
サーバー台数の調整
OS
開発言語
フレームワーク
コード管理
名前は?
プロジェクト GAME X
インフラ共通基盤
HOGE S
プロジェクトが 消えても
存在は消えない
スケールに合わせてサーバー構築が 短時間にできる
WordPress 動きません でしたw
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
リソース報告機能の導入
機能単位 且つ
ライフサイクルイベント単位
必ず他の人が コードを 確認する
=(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
レシピの開発修正作業は開発時間の負担よりも心理的なプレッシャーが大きい