Successfully reported this slideshow.
Your SlideShare is downloading. ×

Docker活用パターンの整理 ― どう組み合わせるのが正解?!

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 18 Ad

More Related Content

Slideshows for you (20)

Similar to Docker活用パターンの整理 ― どう組み合わせるのが正解?! (20)

Advertisement

More from Etsuji Nakai (20)

Recently uploaded (20)

Advertisement

Docker活用パターンの整理 ― どう組み合わせるのが正解?!

  1. 1. Docker活用パターンの整理・どう組み合わせるのが正解?! Ver1.1 中井悦司 Twitter @enakai00 オープンクラウド・キャンパス Docker活用パターンの整理 Docker/OpenStack/Ansible/Kubernetes/OpenShift/etc… どう組み合わせるのが正解?!
  2. 2. Open Cloud Campus 2 Docker活用パターンの整理・どう組み合わせるのが正解?! 自己紹介  中井悦司(なかいえつじ) – Twitter @enakai00  日々の仕事 – Senior Solution Architect and Cloud Evangelist at Red Hat K.K. 企業システムでオープンソースの活用を希望される お客様を全力でご支援させていただきます。  昔とった杵柄 – 素粒子論の研究(超弦理論とか) – 予備校講師(物理担当) – インフラエンジニア(Unix/Linux専門) 好評発売中!
  3. 3. Open Cloud Campus 3 Docker活用パターンの整理・どう組み合わせるのが正解?! 最近の趣味 http://enakai00.hatenablog.com/entry/2016/02/29/121321
  4. 4. Docker活用パターンの整理・どう組み合わせるのが正解?! Dockerの役割をもう一度確認しよう!
  5. 5. Open Cloud Campus 5 Docker活用パターンの整理・どう組み合わせるのが正解?! Dockerが提供する基本機能 Dockerfile ① Dockerイメージを自動作成 OSイメージ アプリケーション ライブラリー アプリケーション フレームワーク イメージの 作成手順を記載 Docker イメージ OS上にインストール可能な ものはすべてイメージ化可能 ② Dockerイメージを保存・公開 ③ Dockerサーバーに  イメージを配布・実行
  6. 6. Docker活用パターンの整理・どう組み合わせるのが正解?! IaaS基盤へのアプリケーションデプロイに Dockerを使ってみよう!
  7. 7. Open Cloud Campus 7 Docker活用パターンの整理・どう組み合わせるのが正解?! OpenStackによる自動化(オーケストレーション)手法  Dockerが無かった時代は・・・ – 仮想マシン、ストレージ、ネットワークなどのインフラは、OpenStackで自動構成 – ゲストOS上のアプリはChef/Ansible/Puppetなどの構成管理ツールで自動構成  ゲストOSとアプリの管理が別れているため「Immutable」な運用が困難! – ゲストOSのテンプレートはOpenStack側で管理 – 仮想マシン起動時に動的にアプリの導入・設定を実施 「第14章 Dockerを利用したアプリケーション展開」より引用 ゲストOSの変更に起因する アプリ導入の失敗が発生
  8. 8. Open Cloud Campus 8 Docker活用パターンの整理・どう組み合わせるのが正解?! OpenStackとDockerの組み合わせ手法  Dockerを用いた運用だと・・・ – OpenStackは、「インフラ+DockerホストOS」の提供に専念 – アプリの実行環境は、Dockerイメージで作成・管理・デプロイ  インフラとアプリの管理を分離することで「Immutable」な運用が容易に! – ゲストOSのテンプレートはDockerの稼働環境を提供 – 事前作成済みのDockerイメージを配布してアプリを起動 アプリの導入・管理を OpenStackから分離可能
  9. 9. Open Cloud Campus 9 Docker活用パターンの整理・どう組み合わせるのが正解?! 「1VM - 1コンテナ」方式でDockerを使ってみる  仮想マシン上のアプリケーションをコンテナイメージ化することで、アプリケー ションのデプロイを安全/簡単にします。 – 「1仮想マシンに1アプリケーション」という配置はあえて変更しないことで、運用方 法やアプリケーションのデザインへの影響を最小限に留めます。 – 外部からアプリケーションに接続するユーザー/外部システムは、アプリケーションが コンテナ化されていることを意識する必要がありません。 OpenStack/仮想化基盤 仮想マシン (ゲストOS) アプリA ・・・ ・・・ これまでの環境 アプリケーションの コンテナイメージ化 OpenStack/仮想化基盤 仮想マシン (Dockerホスト) アプリA (コンテナ  イメージ) 仮想マシン (Dockerホスト) アプリB (コンテナ  イメージ) ・・・ ・・・ 仮想マシン (ゲストOS) アプリB
  10. 10. Open Cloud Campus 10 Docker活用パターンの整理・どう組み合わせるのが正解?! Ansibleによる複数インスタンス環境のオーケストレーション 永続データ 領域 OS領域 コンテナ (MySQL) /data コンテナ イメージ Dockerデーモン /var/lib/mysql フローティングIP OS領域 コンテナ (node.jsアプリ) コンテナ イメージ Dockerデーモン フローティングIP フローティングIPにアクセス フローティングIPにアクセス 接続先DBのIP/ポートは 環境変数で参照  Ansibleを利用すると、OpenStack APIによる仮想インフラの構成とDockerによるアプリ ケーション配布のワークフローをまとめて自動化も可能に アプリケーション利用者
  11. 11. Docker活用パターンの整理・どう組み合わせるのが正解?! Docker活用パターンの整理・ど う組み合わせるのが正解?! 11 サーバーの境界を意識しない 世界を見てみよう!
  12. 12. Open Cloud Campus 12 Docker活用パターンの整理・どう組み合わせるのが正解?! Kubernetes:複数ホストのDockerを管理する仕組みを提供 http://jp.techcrunch.com/2014/07/11/20140710google-microsoft-ibm-and-others-collaborate-to-make-managing-docker-containers-easier/
  13. 13. Open Cloud Campus 13 Docker活用パターンの整理・どう組み合わせるのが正解?! サーバーの境界を意識しないアプリケーションデプロイ  コンテナの配置先を自動的に振り分ける仕組みを用いて、複数ホストを「1つの コンピューティングリソース」として活用します。  アプリケーションを機能単位に分割してコンテナ化することで、さらなるメリッ トが得られます。 – 必要な機能を負荷に応じてオートスケールします。 – 機能単位でコンテナを入れ替えることにより、稼働中のアプリケーションの動的な機能 変更が可能になります。 Dockerホスト Dockerホスト Dockerホスト ・・・ 複数ホストを束ねて「1つのコンピュータ」として活用 マイクロサービス化 アプリケーション
  14. 14. Open Cloud Campus 14 Docker活用パターンの整理・どう組み合わせるのが正解?! 今後の方向性  コンテナ化とマイクロサービス化は、アプリケーションの特性に応じた併用が可 能だと考えます。 – 複数サービスの共通機能(ある程度固定化した機能)は、コンテナ化でSaaS的に提供 – サービス特有の機能(頻繁な変更が求められる部分)は、マイクロサービス化して OpenShiftで開発・実行 – いずれの場合もアプリケーションとインフラ環境の分離性を高めることで、クラウド間 での環境移行は圧倒的に容易 OpenStack 仮想 マシン ・・・ ・・・ アプリケーションのコンテナ化で 本番デプロイを安全・迅速に OpenStack ベアメタル サーバー ベアメタル サーバー ・・・ アプリケーションのマイクロサービス化 でオートスケール、動的機能拡張を実現 仮想 マシン 仮想 マシン Dockerによるコンテナ化 OpenShiftによるマイクロサービス化
  15. 15. Docker活用パターンの整理・どう組み合わせるのが正解?! Docker活用パターンの整理・ど う組み合わせるのが正解?! 15 おまけ
  16. 16. Open Cloud Campus 16 Docker活用パターンの整理・どう組み合わせるのが正解?! (おまけ)OpenShiftがGCPで使えるようになります! http://googlecloudplatform-japan.blogspot.jp/2016/01/red-hat-openshift-dedicated-google.html
  17. 17. Open Cloud Campus 17 Docker活用パターンの整理・どう組み合わせるのが正解?! OpenShiftにおける役割分担 アプリ開発者 開発環境 構成テンプレート テンプレート管理者 公式RHEL イメージ Dockerfile テスト担当者 開発環境 イメージ テスト環境 構成テンプレート 開発中 アプリイメージ ソースコード 動作確認 コード開発 テスト用 デプロイ環境 動作確認 本番環境 構成テンプレート 開発用デプロイ環境 本番用 デプロイ環境 開発済み アプリイメージ テスト済み アプリイメージ リリース担当者 http://www.slideshare.net/enakai/open-shift-v3
  18. 18. Docker活用パターンの整理・どう組み合わせるのが正解?! 中井悦司 Twitter @enakai00 オープンクラウド・キャンパス Docker&OpenShiftでマイクロサービス アーキテクチャーを実現!

×