狠狠撸
Submit Search
顿辞肠办别谤について
?
2 likes
?
902 views
K
koda3
Follow
第4回、上田滨罢勉强会(丑迟迟辫://耻别诲补.辫别补迟颈虫.肠辞尘/惫颈别飞)の尝罢で発表した资料です(公开にあたり一部修正)
Read less
Read more
1 of 23
Download now
Download to read offline
More Related Content
顿辞肠办别谤について
2.
自己紹介 Kodaといいます(はじめまして!) OSSの情報共有サービス「Knowledge」を作ってます 「Web」「Cloud」に詳しいです GitHubアイコン
3.
Amazon ?Web ?Services(AWS)は米国時間12月21日、「Amazon
? EC2 ?Container ? Registry(ECR)」の一般提供を開始したと発表した。このサービスを利用することで、同社 のクラウドプラットフォーム上における「Docker」コンテナイメージの保存や管理、配備を容 易にするための、完全マネージド型のDockerコンテナレジストリが提供される。 MicrosoftとDockerがWindows ?Server ?Containersを事前公開 Windows専用のソフトウェアをコンテナ内で実行することが可能になった。 Windows ?Server ? 2016 ?Technical ?Preview ?3 は,このテクノロジを最初にサポートするWindowsリリースだ。 Windows ?Server ?Containersは,Linuxのコンテナとほぼ同じ機能を,Windowsエコシステ ムの環境で実現する。Dockerもまた,独自のテクニカルプレビューをリリースして,Windows コンテナの管理機能を紹介している。 [速報]Google Container Engine発表。Dockerコンテナを実行しKubernetesで管理す るクラウドサービス Googleは11月4日(日本時間5日)、サンフランシスコでイベント「Google Cloud Platform Live」を開催。Dockerコンテナ上でアプリケーションを実行し、それを Kubernetesで管理するクラウドサービス、「Google Container Engine」(略称はGKE。 Google Compute Engineの略称GCEとかぶるためにGKEになったのだと思われます)を 発表しました。 レッドハット、DockerベースのPaaS基盤「OpenShift Enterprise ?3」を出荷 レッドハットは2015年7月22日、仮想マシンを使わずにDockerベースでPaaS型クラウドを 実現する基盤ソフト「OpenShift Enterprise ?3」を発表、同日出荷した。 激アツ!
4.
既にどこでも使えます
5.
本日の発表 Webのインフラに主流になりつつある「Docker」につい て、私のDocker愛とともに紹介します
6.
Dockerとは? コンテナ型の仮想化技術 VMware ESXiやLinux KVMなどは「ハイパーバイザー型 の仮想化」 Dockerは「コンテナー型の仮想化」
7.
何が嬉しいの? インフラ操作がテキストファイルで書くので、インフラの構 成がコードのように管理される) (Infrastructure as Code) OSのプロセス/メモリを共有するので、各コンテナは大 きくリソースを使わない やりたいことに絞ってコンテナを起動(1コンテナ1プロセス)
8.
VM vs Docker(Dockerの良いところ) VM
Docker イメージのサイズ 大きい(?GB) 小さい(?MB) 起動時間 時間がかかる 素早い インフラ管理 管理しづらい コードで管理
10.
Infrastructure as Code インフラを手動で構築すると、作業ミスが発生 インフラを手動で変更する場合も作業ミスが多い インフラAとインフラBの構成が変わってきていて、Aの変更 作業をBで実施しても、同じようにうごかない Dockerでは、イメージの構築手順はDockerfileというテキ ストで管理します(Gitで差分管理できます!) 半年前くらいに、VPSを変更したときを例に実際のメリットを紹介します
11.
Dockerfile # Dockerfile for
Knowledge FROM tomcat:jre8 # ==== dumb-init ==== ADD https://github.com/Yelp/dumb-init/releases/download/v1.0.0/dumb- init_1.0.0_amd64 ? /usr/local/bin/dumb-init # ==== environment==== RUN rm -rf /usr/local/tomcat/webapps/ROOT ? && update-ca-certificates -f ? && chmod +x /usr/local/bin/dumb-init # ==== add Knowledge ==== ADD https://github.com/support- project/knowledge/releases/download/v1.1.0/knowledge.war ? /usr/local/tomcat/webapps/ROOT.war VOLUME [ "/root/.knowledge" ] EXPOSE 8080 CMD [ "/usr/local/bin/dumb-init", "/usr/local/tomcat/bin/catalina.sh","run" ] 基本は「RUN」 から初めてLinuxのコマンド書いておけばOK
12.
“Knowledge” 旧動作環境 Webサーバー SSLの終端(https) Database ライブラリ管理
Knowledge(Webアプリ) Container Container Container Container VM
13.
“Knowledge” の現在の稼働環境 Webサーバー SSLの終端(https) Database ライブラリ管理
Knowledge(Webアプリ) Container Container Container Container VM
14.
乗り換え手順 VPSでLinuxサーバーを準備 Dockerさえ動けば、ホストのOSは何でもOK 各VPSの「初期設定」でついてきたものをそのまま利用 VPSのUIでポチポチすれば数分後に準備完了 Dockerをインストール 各コンテナを起動(コード実行)
15.
普通なら、Databaseをインストール&セットアップして、次はWebサーバーで、、、、、 とかなる作業が、自動になっているので簡単に構築できた
17.
仮想化が無い環境 サーバーに直接データベースなどのアプリをインストー ルしている場合、カジュアルにバージョンアップできない Server Host OS Bins/Libs DB1 App1 DBをバージョンアップしたら、後戻りできない。 また、Bins/LibsはDB,Appで共有されること になるので、その依存により、 バージョンアップ出来ないこともある
18.
VM リソースが潤沢にあれば、 複数のバージョンを 起動できる けっこう大変、かつ リソースを使う Server Host OS Hypervisor GuestOS Bins/Libs DB1 GuestOS Bins/Libs DB1’ GuestOS Bins/Libs App1 DB1のVMイメージをコピーして、 DB1’の環境を作成して、 その環境でバージョンアップを試す。 Appに依存しているものは無いので、 バージョンアップの敷居は下がる。
19.
Docker Dockerでは、イメージの リソースは非常に小さい 環境構築も高速 気軽にコンテナを 作成/削除 Server Host OS Docker Bins/Libs DB1 DB1’ Bins/Libs App1 DB1’の環境を作成しても この点線部分のリソースしか増えない
20.
Database Knowledge(Webアプリ) Container Container Database Container バージョンアップ 今稼働しているもの ? バージョンアップを気軽に 試せる
22.
激アツ!
Download