Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
KUSANAGI RoDの紹介
Search
Satoru MIYAZAKI
February 23, 2019
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KUSANAGI RoDの紹介
KUSANAGI Runs on Dockerが何をもたらすのか、を紹介します
Satoru MIYAZAKI
February 23, 2019
More Decks by Satoru MIYAZAKI
See All by Satoru MIYAZAKI
どこのご家庭にもあるOpenSolarisを、ZFSで有効活用
smiyaza
0
290
How to secure container environment
smiyaza
0
700
コンテナ環境をセキュアに運用する方法 #osc20on
smiyaza
0
1.1k
コンテナのセキュリティについて考えよう osc2020tk
smiyaza
6
1.2k
コンテナのセキュリティについて考えよう osc2019tk
smiyaza
1
210
コンテナのセキュリティについて考えよう
smiyaza
0
980
平成元年度に卒業した高専生が、令和元年の高専生に伝えたいこと
smiyaza
2
280
コンテナセキュリティってどうなってるの?
smiyaza
2
660
如何にPHP7.3.3のDockerイメージを作るか
smiyaza
0
1.1k
Other Decks in Technology
See All in Technology
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
150
AIは爆速なのに、私が詰まっていた話 ― 音声入力と鳴くマスコットでボトルネックを削る
yama3133
0
520
SREでアラート疲れを 解決しよう!
kairim0
1
200
1万名の社員が使う認証基盤で どう信頼性を担保するか?
kairim0
0
210
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
230
ログラスのマルチプロダクトを 支える認証基盤 〜テナントごとに異なる統制とどう向き合うか〜
dada4386
3
390
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
120
IR Today: Theory, Practice, and Agents
dtunkelang
0
340
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
260
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
300
ai_cording_with_k8s_knowledge.pdf
mochizuki875
1
280
インバスケット試験対策アプリを 作って見えたAIエージェント構築 ナレッジ2選
shichijoyuhi
1
130
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
930
Google's AI Overviews - The New Search
badams
0
1.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
The Limits of Empathy - UXLibs8
cassininazir
1
700
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
570
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
860
Designing Experiences People Love
moore
143
24k
Exploring anti-patterns in Rails
aemeredith
4
520
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
510
Transcript
KUSANAGI RoDの紹介 OSC 2019 Tokyo/Spring みやざきさとる KUSANAGIユーザ会
アジェンダ ⚫自己紹介 ⚫KUSANGIについて ⚫KUSANAGI Run on Dockerとは ⚫KUSANAGI RoDがもたらすもの ⚫KUSANAGI
RoDの今後
自己紹介 ◦KUSANAGIを作ってる人 ◦ 好きなOS: Solaris ◦ 好きなFS: ZFS ◦ 好きな仮想化:
Solaris Zone satoru.miyazaki.31 @s_miyaza 宮﨑悟 MIYAZAKI, Satoru
超高速WordPress仮想マシン「KUSANAGI」 マスコットキャラクター 草薙 沙耶 KUSANAGIについて
KUSANAGIとは ⚫超高速WordPress仮想マシン ⚫16の主要なクラウドプロバイダで提供 ⚫インスタンス料金のみで利用可能 ⚫GPLv2で提供 ⚫WordPress以外のLAMP環境も使用可能 ⚫LAMP ⚫Concrete5 ⚫Drupal7/8 ⚫Rails
WordPressとは ⚫圧倒的シェアを持つグローバルスタンダードCMS ⚫トップ1,000万サイト中 33.2%が WordPressを利用 33.2%=世界の約1/3がWordPress ⚫CMSでは60.1%がWordPressを使用 33% 67% WordPress
Others W3Techs.com調べ
とにかく早いKUSANAGI ⚫今お使いのWordPressサイトの、 最大約17倍の高速化を実現!! ⚫表示に1秒かかっていたページが、 約20ミリ秒まで高速化!!! 17x Fast!!!
セキュリティもスゴイKUSANAGI ⚫サイトのHTTPSを強力に推進 ⚫Let's EncryptによるSSL証明書対応 ⚫HTTP/2に対応 ⚫パイプライン化とストリーム多重化 ⚫HTTPヘッダの圧縮 ⚫コンテンツ種類による優先度設定 ⚫TLS1.3に対応 ⚫ハンドシェイクの暗号化強化と効率化
⚫古い暗号化スイートの排除
超高速WordPress仮想マシン「KUSANAGI」 マスコットキャラクター 草薙 沙耶 KUSANAGI Run on Docker とは
KUSANAGI をDockerで動かす ⚫KUSANAGI Run on Docker(以下RoD)は、 Dockerマシン上で動作するWordPressの仮想化 ⚫ KUSANAGIの構成をDockerマシン上で再現 ⚫docker-machine、docker-composeを使用
⚫Docker ImageはDockerHubにて公開中 https://hub.docker.com/r/primestrategy/
Dockerとは ⚫Docker=コンテナ型仮想化 ⚫ホストOSからリソース(プロセス)のみを分離=準仮想化 ⚫ホストOSと同じカーネルで動作する=オーバーヘッドなし ⚫Dockerは、アプリケーションコンテナ =アプリケーションを動作させるためのコンテナ ⚫IaaSの殆どは完全仮想化 ⚫ホストOSとは違うOS(=カーネル)が動作 ⚫エミュレーションを使用=オーバヘッドあり
Dockerの特徴 ⚫Docker イメージの利用 ⚫1サービスをまとめたもの=イメージ ⚫複数サービスが必要なときは、複数イメージを使用 ⚫Docker Hubなどのイメージリポジトリが用意される ⚫不要なファイルが必要ない=セキュア ⚫コンテナ型仮想化の特徴 ⚫高速起動
⚫リソース使用量が少ない ⚫再利用が容易 ⚫イメージのレイヤ構造が利用可能 ⚫あるイメージに設定追加して別サービスが使用可能
KUSANAGI RoDの基本構成 docker-machine NGINX Apache PHP7 MySQL Data Client PC
• docker • docker-machine • docker-compose http/https ログ収集 (journaldなど) config
KUSANAGI RoDの特徴(1) 軽量LinuxOSの採用 ⚫Alpine Linux3.9、Ubuntu(18.04)ベースのイメージで構成 ⚫NGINX-1.15.8 OpenSSL1.1.1a ⚫Apache httpd-2.4.38 OpenSSL1.1.1a
⚫PHP7.3.2 ⚫MariaDB 10.4.2 Ubuntu Bionicベース ⚫ftpd ⚫config(WPCLI) WordPress標準イメージ
KUSANAGI RoDの特徴(2) 設定の簡易さ ⚫Docker-machineによる外部Dockerのサポート ⚫デフォルトはlocalhostでのDocker起動 ⚫docker-composeによる複数Dockerイメージの管理 ⚫docker-machineを指定することで、外部のDockerマシンを利用可能 ⚫設定ファイルの生成/管理 ⚫Dockerイメージは、環境変数により設定変更可能 ⚫環境変数をファイルに書くことで容易に設定変更
⚫docker-composeの設定ファイルdocker-composeは、 コマンドで実施
KUSANAGI RoDの特徴(3) 自由な構成管理 ⚫自由な構成 ⚫Webサーバとして、NGINXかApache httpd の選択可能 ⚫デフォルトのDBはMariaDB ⚫外部のDBを利用可能(DBaas=DB as
a Serviceを含む) ⚫FTPなしの構成可能 =外部サイトからの更新を不可にする ⚫Gitによる版管理 ⚫生成したWordPressデータは、ローカルディスクとDockerイメージ間で同期可能 ⚫WordPress DBデータもimport/export可能 ⚫同期したデータを、gitで版管理
KUSANAGI RoDの特徴(4) より高いセキュリティ ⚫不要パッケージの排除 ⚫root権限でのサービス起動を排除 ⚫Dockerイメージ作成時に脆弱性検査を実施 ⚫Aqua社のMicroScannerを使用 https://blog.aquasec.com/microscanner-free-image-vulnerability-scanner-for-developers ⚫Dockerイメージ作成時点での高い脆弱性なし! ⚫最新のOpenSSL1.1.1系採用
⚫chacha20-poly1305など、最新の暗号スイートに対応済み ⚫HTTP/2およびTLS1.3に対応 ⚫SSL鍵 ⚫Let's Encryptにより、フリーの認証済みSSL証明書を使用可能 ⚫SSL鍵ペア指定可能
KUSANAGI RoDの動作環境 ⚫クライアント ⚫docker、docker-compose、docker-machine ⚫bash、binutils ⚫OSはLinuxなど(WSLでもOK) ⚫サーバ ⚫dockerサービスが動作すること ⚫docker-machineが対応していること (amazonec2,
azure, digitalocean, exoscale, generic, google, hyperv, rackspace, openstack, softlayer, virtualbox, vmwarevcloudair, vmwarefusion, vmwarevsphere)
超高速WordPress仮想マシン「KUSANAGI」 マスコットキャラクター 草薙 沙耶 KUSANAGI RoDが もたらすもの
物理サーバ・IaaS DBサービス PHPサービス httpサービス KUSANAGI RoDで何ができるか ⚫密結合サービスの分離 ⚫LAMPスタック=Linux+Apache(NGINX)+MySQL+PHP ⚫KUSANAGI RoDに移行する
→密結合したLAMPスタックのサービスを分離 httpサービス PHPサービス DBサービス Data 物理サーバ・IaaS httpd php DB Data
密結合から疎結合へ ⚫KUSANAGIでもクラスタ構成は可能 ⚫DBのクラスタ=Garela Cluster ⚫データ同期をlsyncで実施 ⚫サーバ単位でのクラスタ構築→密結合でスケールしにくい ⚫スケールアウトしやすい構成へ ⚫サービス毎にスケールできる ⚫ボトルネックになるサービスだけを増強 ⚫サービス毎にバージョンアップしやすい構成
⚫ローリングリリース
なぜ疎結合にするのか ⚫いまはスケールアップしにくい環境にある ⚫CPUスピードが上がらない ⚫メモリを増やすのにも限界がある ⚫CPUもスケールアウトの時代(メニーコアの台頭) ⚫本当に欲しいものはCPUパワーですか? ⚫サービスが継続できる事が重要 ⚫接続スピード=CPUパワーで解決 ⚫接続数=CPUの数で解決できる ⚫CPUの数を増やすことで、CPU1つあたりの負荷を低下
疎結合サービス化 ⚫複数クラウドサービスの併用 ⚫ハードウェアからの解放 ⚫スムーズなスケール構成 ⚫本当に必要なサービスを顧客に届ける
開発・デプロイしやすい構成 ⚫開発環境と本番環境の分離 ⚫gitのbranch ⚫docker-machineの切替 ⚫ブルー・グリーンデプロイ 開発環境 本番環境 ステージング環境
超高速WordPress仮想マシン「KUSANAGI」 マスコットキャラクター 草薙 沙耶 KUSANAGI RoDの今後
KUSANAGI RoDは絶賛開発続行中 ⚫2月リリースできなかったよ…orz ⚫現在、WordPressに注力中 ⚫WordPress以外(LAMP、concrete5、Drupal、Rails)も続々 ⚫KUSANAGI RoDは、すべてGithubで開発中です
今後の流れ ⚫まずは正式版リリース(近日中) ⚫WordPress以外の対応(近日中) ⚫各種クラウドでの検証(近日中) ⚫CaaS(Container as a Service)への対応(?) ⚫KaaS(Kubernetes as
a Service)への対応(?) ⚫CI/CDツールとの連携(?)