Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi

4,769 views

Published on

Developers Summit 2016 Yahoo! JAPAN Tech Conference
http://event.shoeisha.jp/devsumi/20160218/tokusetsu

【18-A-5】15:15~16:00【第2部】
Yahoo! JAPANの実践から学ぶ、超大規模Webシステムのフロントエンドとインフラ
『Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用』
システム統括本部 サイトオペレーション本部 インフラ技術1部 部長
伊藤 拓矢

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,769
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
27
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi

  1. 1. 2016/2/18 Yahoo! JAPANが実践するOpenStackと 大規模環境でのコンテナ利用 伊藤 拓矢 システム統括本部サイトオペレーション本部 OpenStack 黒帯
  2. 2. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 自己紹介 名前: 伊藤 拓矢 所属: システム統括本部サイトオペレーション本部 インフラ技術1部 担当領域 ・ OpenStackをベースとしたプライベートクラウドの 設計、開発、検証、構築、運用 ・ アプライアンスベンダーとの調整、協力 ・ サーバ、OSの検証、導入など
  3. 3. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Agenda • データセンタを支えるOpenStack事例紹介 • ハードウェアライフサイクルについて • アプリケーションレイヤでのライフサイクル • ソフトウェアライフサイクルについて • ライフサイクルを実現する上でのコンテナ • まとめ
  4. 4. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 データセンタを支える OpenStack事例紹介
  5. 5. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 OpenStackとは? • クラウド基盤を構築するソフトウェアのひとつ • NASAとRackSpaceからコードがOpenStackプロ ジェクトに寄贈され、初回のリリースは2010年でし た。現在も活発に開発が進んでいます。
  6. 6. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 OpenStackとは? 様々なプロジェクトがある • インフラ基盤として動作するプロジェクト - Cinder, Ironic, Manila, Neutron, Nova - Barbican, Designate, Glance, Heat, Horizon, Keystone, Telemetry • プラットホーム、ミドルウェア系プロジェクト - Murano, Sahara, Swift, Trove • コンテナ技術にフォーカスしたプロジェクト - Kolla(OpenStackコントローラ側をコンテナ化) - Magnum(COEのライフサイクル管理) - Kuryr(Calico, Midonetなどコンテナネットワーク接続)
  7. 7. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Yahoo! JAPANにおけるOpenStack 昨年10月27日にYahoo! JAPANは国内企業で初めて OpenStack SummitのKeynoteで発表しました
  8. 8. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Yahoo! JAPANにおけるOpenStack 話したこと • APIのフォーマットが変わらないことが重要 KVM Nova API VM ware Cinder API Neutron API Contai ner Bare metal Apps Platforms Infrastructures APIAPI API API API API
  9. 9. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Yahoo! JAPANにおけるOpenStack 話したこと • 異なる環境であっても同じAPIで動作することが重要 KVM Nova API VM ware Cinder API Neutron API Contai ner Bare metal Apps Platforms Infrastructures APIAPI API API API API
  10. 10. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Yahoo! JAPANにおけるOpenStack 話したこと • インフラのAPIはアプリに近づくことが前提 KVM Nova API VM ware Cinder API Neutron API Contai ner Bare metal Apps Platforms Infrastructures APIAPI API API API API
  11. 11. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Yahoo! JAPANにおけるOpenStack 話したこと • Yahoo! JAPANではデータセンタ抽象化のコア技術 としてOpenStackを採用した KVM VM ware Bare metal KVM VM ware Bare metal
  12. 12. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 Yahoo! JAPANにおけるOpenStack 話したこと • インフラ部門側からハードウェアライフサイクルを 実施することが可能になった KVM VM ware Bare metal KVM VM ware Bare metal
  13. 13. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 データセンタ抽象化の一例 オープンハードウェアの採用 • 最初にOpenStack基盤へOCPの採用  後に大規模Hadoop基盤へ繋げる • 利用者は意識しない部分での改革  従来型のサーバとOpenStack上の 操作性は変らない
  14. 14. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 データセンタ抽象化の一例 オープンハードウェアの採用 • 技術向上とコスト貢献  海外にて直接交渉によるスキル向上 コスト意識を持たなくてはならない
  15. 15. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 データセンタ抽象化 ハードウェア抽象化と継続的なハードウェア ライフサイクルが実現
  16. 16. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 アプリケーションのライフサイクルについて アプリケーションのレイヤまで継続的な ライフサイクルを実現したい
  17. 17. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 アプリケーションのレイヤまで継続的 なライフサイクルを実現したい
  18. 18. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 アプリケーションのライフサイクルについて ハードウェア抽象化と継続的なハードウェアライフ サイクルが実現 継続的なソフトウェアライフサイクルを行い、実行環境 をBaremetal, VM, コンテナに対応する
  19. 19. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 アプリケーションの実行環境は人が選ばない どこでデプロイされるかは関係ない
  20. 20. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 どこで実行されるのか 性能 可搬性 簡易性 △ ○ ◎ オーバーヘッド大きい 完全に隔離された自由な環境 OS含めると軽量とは言えず Baremetalからの移行は簡単 ○ ◎ ? オーバーヘッド小さい 最軽量を目指すと性能対要求 リソースが最適化される 移行ではなく1から組み上げたい ◎ × × 性能を使い切るアプリケーション も少ない 多くの場合において無駄
  21. 21. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 今日のフォーカス コンテナ、Docker
  22. 22. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 コンテナ(Docker)の良いところ • イメージの管理性 • 上手く作れば最軽量 • 持ち運びが楽 • レイヤを重ねなくても高いメリット • コンテナは性能劣化が少ない • エミュレーションしていないのでVMより早い • 計算資源に対する実性能が高いため高集約
  23. 23. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 コンテナ(Docker)での注意点 VMからコンテナへの移行は難しい 1. イメージサイズが大きいとメリット薄 - 可搬性が下がっていく、詰め込みすぎない
  24. 24. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 コンテナ(Docker)での注意点 2. ネットワーク機能の違い - 複雑なアプリケーションになるほど難しい - コンテナ独自のNW機能も多い - 実環境においてはCalicoなどの純粋な IPネットワークを重視
  25. 25. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 コンテナ(Docker)での注意点 3. ストレージ機能の違い - 永続的にデータを持たせることは考えない - データはSwift/S3とDocker Volumeを使い分け (Object, File)
  26. 26. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 コンテナの向き不向き • モノリシックは不向き コンテナへ重量級のデプロイはメリットが無いケースが多い 従ってコンテナするなら、軽量化、分割化を行う • マイクロサービスもコスト高い オーバーヘッドもあり、管理対象が増えてくる トラブルシュート大変なので、ログとメトリクスの集約が必須 メトリクスも俯瞰できないと意味無し マイクロサービスを取り入れていない場合は、コンテナ 利用の前に、軽量化と分割化に取り組む
  27. 27. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 コンテナの向き不向き • コンテナを手でデプロイするのは大変 大量にあるコンテナを組み上げていくのは人では無理 デプロイとオーケストレーションを自動でやる必要がある • デプロイ自動化には、前段も自動化する必要がある いわゆるCIの実現 アプリケーションの作り方から変えていく 揃えるものは多い
  28. 28. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 本日のまとめ
  29. 29. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 本日のまとめ • Yahoo! JAPANがOpenStackを導入した理由 • OCPへの取り組み • コンテナを利用した継続的なソフトウェアライフサ イクルについて
  30. 30. Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

×