Fcp
- 4. 今日お話すること
• 目次
– ICTの役割の変貌
– クラウドネイティブアプリケーションによる改革
• アプリケーションアーキテクチャの変貌
• DevOps
– クラウド時代のインフラストラクチャ
• システムアーキテクチャの変貌
• インフラをCIする
• Immutable Infrastructure
– Docker
– エンジニア生存方法
- 8. 今日お話すること
• 目次
– ICTの役割の変貌
– クラウドネイティブアプリケーションによる改革
• アプリケーションアーキテクチャの変貌
• DevOps
– クラウド時代のインフラストラクチャ
• システムアーキテクチャの変貌
• インフラをCIする
• Immutable Infrastructure
– Docker
– エンジニア生存方法
- 11. クラウドによる変化
• 大規模分散処理
– Hadoop, CEPなど
• オートスケールアウト/スケールイン
– 動的負荷分散
• SDN(software Defined Network)
– ネットワーク経路検索の動的プログラミング
• 開発手法の変革
– アジャイルの普及/DevOps
- 13. THE TWELVE-FACTOR APP
• http://twelve-factor-ja.herokuapp.com/
• I. コードベース (Codebase)
バージョン管理されている1つのコードベースと複数
のデプロイ
• II. 依存関係 (Dependencies)
依存関係を明示的に宣言し分離する
• III. 設定 (Config)
設定を環境変数に格納する
• IV. バックエンドサービス (Backing
Services)
バックエンドサービスをアタッチされたリソースとし
て扱う
• V. ビルド、リリース、実行 (Build,
release, run)
ビルド、リリース、実行の3つのステージを厳密に分
離する
• VI. プロセス (Processes)アプリケーション
を1つもしくは複数のステートレスなプロセスとして
実行する
• VII. ポートバインディング (Port
binding)
ポートバインディングを通してサービスを公開する
• VIII. 並行性 (Concurrency)
プロセスモデルによってスケールアウトする
• IX. 廃棄容易性 (Disposability)
高速な起動とグレースフルシャットダウンで堅牢性を
最大化する
• X. 開発/本番一致 (Dev/prod parity)
開発、ステージング、本番環境をできるだけ一致させ
た状態を保つ
• XI. ログ (Logs)
ログをイベントストリームとして扱う
• XII. 管理プロセス (Admin processes)
管理タスクを1回限りのプロセスとして実行する
- 14. THE TWELVE-FACTOR APP
• 日経コンピュータ 9/18 号
• 日経ITPro
http://itpro.nikkeibp.co.jp/atcl/column
/14/110900092/
• 12個のプラクティスを3つに分類
エンタープライズはどうするべきかを、
オリジナルの解釈と共に述べた
– アプリケーションの迅速な改修
– 環境への迅速な展開
– リソース増減や運用管理を容易にする
- 25. 今日お話すること
• 目次
– ICTの役割の変貌
– クラウドネイティブアプリケーションによる改革
• アプリケーションアーキテクチャの変貌
• DevOps
– クラウド時代のインフラストラクチャ
• システムアーキテクチャの変貌
• インフラをCIする
• Immutable Infrastructure
– Docker
– エンジニア生存方法
- 32. クラウド時代のインフラストラクチャ
• Infrastructure as code
– メンテが辛い/されないexcelから、動いて確認出来るコード
ベースの世界
• インフラのコード化
– サーバの構築
» Aws,Azure,GCE,OpenStack…etc
– アプリ/ミドルのインストール
» Chef,puppet,ansible…etc
• インフラのテストのコード化
– Serverspec
インフラ(サーバ)の構築とテストの自動化が可能
- 39. Immutable Infrastructure
• Immutable Infrastructure
& Disposable Component
不変インフラと廃棄可能コンポーネント
• 作ったサーバが、運用に入ったあとどうゆう状態になっ
ているか分からないことが多い
• サーバの状態管理がめんどくさいなら、
しなければいいじゃないというアプローチ
• サーバの状態管理
ex)パッチの適用状況や動作しているアプリケーション
の版数管理、ステートデータの扱い
http://chadfowler.com/blog/2013/06/23/immutable-deployments/
- 50. Docker
• デメリット
– アーキテクチャの変更が必須
– コンテナの中にOS素材は入っているが、バックグラ
ウンドプロセスはなし。フォワグランド1プロセス
と標準入出力のみ
– コンテナのIPアドレスは不定
ホストOSからの仮想NICと
ポートマッピング
– ホスト側からコンテナ内の
プロセスは丸見え
コンテナ
ブリッジ
- 53. Docker界隈の動き
• Dockerに対応したIaaS出現中
– AWS
– GCE
– Azure
– Disitalocian
• 業界動向
– Openstackがdockerサポート表明(nova driver)
– RHがRHEL7,Atomic HostでDockerをサポート
– AWS ECSの提供開始(2015/01 β)
– RedhatのPaaS(OpenShift v3)でdocker対応
– Docker社による商用サポートの開始(6月から)
– Cloud Foundry がDockerに対応
– Dockerに最適化されたCoreOSの登場
– Googleのサービスは独自コンテナで運用(20億/週)
- 55. 今日お話すること
• 目次
– ICTの役割の変貌
– クラウドネイティブアプリケーションによる改革
• アプリケーションアーキテクチャの変貌
• DevOps
– クラウド時代のインフラストラクチャ
• システムアーキテクチャの変貌
• インフラをCIする
• Immutable Infrastructure
– Docker
– エンジニア生存方法