Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
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
270
How to secure container environment
smiyaza
0
670
コンテナ環境をセキュアに運用する方法 #osc20on
smiyaza
0
1.1k
コンテナのセキュリティについて考えよう osc2020tk
smiyaza
6
1.2k
コンテナのセキュリティについて考えよう osc2019tk
smiyaza
1
200
コンテナのセキュリティについて考えよう
smiyaza
0
950
平成元年度に卒業した高専生が、令和元年の高専生に伝えたいこと
smiyaza
2
270
コンテナセキュリティってどうなってるの?
smiyaza
2
660
如何にPHP7.3.3のDockerイメージを作るか
smiyaza
0
1.1k
Other Decks in Technology
See All in Technology
Kaggleで成長するために意識したこと
prgckwb
1
220
Text-to-SQLをAgentCoreで実現し、生成されるSQLの精度を定量的に評価する
yakumo
2
810
LLM/Agent評価:トップ営業の発言を「正解」にする 〜暗黙的正解による評価を営業資産に変える〜
takkuhiro
1
190
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
2.9k
インフラ寄りSREでも 開発に踏み出せる〜境界を越えてユーザー体験に向き合いたい〜
sansantech
PRO
2
3.5k
生成AIの活用/high_school2026
okana2ki
0
120
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
920
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
340
証券システムを10年Scalaで作り続けるということ - 関数型まつり2026
krrrr38
3
830
完全自律ロボットを作りたくて、先に開発を自律させた話(ROS Japan UG #63 LT)
rryz09
0
440
はじめてのWDM
miyukichi_ospf
1
140
AIを駆使した OSS脆弱性調査のすゝめ
saku0512
0
100
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
210
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Side Projects
sachag
455
43k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
200
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
420
Context Engineering - Making Every Token Count
addyosmani
9
1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Making Projects Easy
brettharned
120
6.7k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
180
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
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ツールとの連携(?)