SlideShare a Scribd company logo
1 of 61
Download to read offline
第4回コンテナ型仮想化の情報交換@東京 
Oracle Solaris Zones 
Oracle Solaris のコンテナ技術 
Kazuyuki 
Sato 
September 
06, 
2014 
Corydoras 
armatus 
(Günther, 
1868)
Agenda 
Ø ⾃自⼰己紹介:@satokaz 
Ø Oracle Solaris Zones 
Ø Oracle Solaris Resource Manager 
Ø Oracle Solaris 11.2 における機能強化 
2
@satokaz  
⾃自⼰己紹介 
• 某社で製品情報を左から右に流流す仕事に従事 
– Solaris とか Solaris とか Solaris とか 
• ⽔水槽の前に座って熱帯⿂魚に話かけるのが得意。返事はない。 
– コリドラス(なまず)が可愛くていつも⽔水槽の前で死にかけている 
– AQUA LIFE が愛読書 
• 最近の悩み:OpenStack について聞かれる。Solaris 担当なのに。 
3
SPARC/Solaris の仮想化機能 
Hypervisor HV (HV)Hypervisor (HV) 
PDom 
Multiple OS Single OS 
App 
OS 
Server 
Hypervisor (HV) 
Hard Partition 
(PDoms : Physical Domains) 
Oracle VM Server 
(LDoms : Logical Domains) Solaris ZonesResource Manager 
M6-‐‑‒32 Series 
T-‐‑‒Series 
M6-‐‑‒32 Series 
T-‐‑‒Series 
M6-‐‑‒32 Series 
T-‐‑‒Series 
M6-‐‑‒32 Series 
HV 
PDom 
HV 
PDom
Project Blackbox 
コンテナ型データーセンター  
• 1 コンテナ約5000万円 
• Sun Modular Datacenter 
5
Oracle Solaris Zones 
Ø Na$ve 
Zones 
6
Oracle Solaris Zones について 
アプリケーション実⾏行行環境であること 
• 統合技術(コンソリデーション) 
– 1960年年代から開発されている技術になり、メインフレーム環境において⼀一般 
的な技術 
• 実⾏行行されている環境を変えないようにする 
– ゾーンの基本的な設計原則の1つ。アプリケーションがセキュリティや隔離離の 
⽬目標を達成するために必要な場合を除いて、実⾏行行されている環境を変えない 
ようにすること 
• アプリケーションを「移植」する必要はない 
– ゾーンは、新しい API や ABI を提⽰示しない代わりに、いくつかの制限付きの 
Solaris API/ABI インタフェースを提供 
7
Oracle Solaris Zones について 
Solaris Zones の開発⽬目標 (2003 年年代) 
• セキュリティ(Security) 
– ネットワークサービスを分離離し、システム全体に及ばない権限のサブセットを提供 
• 隔離離(Isolation) 
– 複数のアプリケーションを異異なる信頼された領領域で実⾏行行すると共に、グローバルリソースへ 
の排他的アクセスを提供 
• 仮想化(Virtualization) 
– アプリケーションへの物理理デバイスや物理理ホスト情報を隠蔽する仮想化環境を提供 
• 粒粒度度(Granularity) 
– 物理理パーティショニングと違いリソースを細かく分配可能に 
• 透過性(Transparency) 
– アプリケーションの移植を必要としない 
8
Oracle Solaris Zones について 
アイソレーションのアプローチ 
アプローチ メモ 
chroot古くから利利⽤用されるプロセスのアイソレーション⽅方法となるが、それ以外の 
ものは隔離離できない 
jailschroot ライクであり、ファイルシステムなどもアイソレーション可能 
Trusted Operating SystemセキュアOS としての要件を満たすアプローチ 
Hardware または Logical 
Partitioning 
2003 年年頃。logical partitions for SPARC の実装を別プロジェクトで実施中。 
後の Ldoms (Oracle VM for SPARC) 
9 
• Solaris ゾーンは、jails の基本的な考え⽅方に基づいて実装されている 
– さらに OS に統合し包括的な機能として提供できるよう概念念を独⾃自に拡張
Oracle Solaris Zones 
組み込まれた仮想化機能 
• 
単⼀一システム上に複数の 
隔離離されたランタイム環境(Solaris インスタンス )を提供する機能 
• ゾーンは⼤大きく 2 種類に区分 
ü ⼤大域ゾーン (global zone) 
• オペレーティングシステムの実体 
ü ⾮非⼤大域ゾーン (non-global zone) 
• ⼤大域ゾーン上で動作するアプリケーション 
実⾏行行環境 
• ⼤大域ゾーンとカーネルを共有 
• ⾮非⼤大域ゾーン間は完全に隔離離 
• 最⼤大 8192 個 (⼤大域ゾーン含む) 作成可能 
zone01 zone02 zone03 
net0:1 
zcons 
/usr 
net0:2 
/data 
/usr 
net1 
/data 
/usr 
zoneadmd zoneadmd zoneadmd 
ゾーン管理理 (zonecfg, zoneadm, zlogin, etc) 
C C C C 
Virtual 
Platform 
/data 
zcons 
zcons
Oracle Solaris Zones 
ネームスペース(名前空間)のアイソレーションを⽬目的とした実装 
– ネームスペースの分割 
• users, root, IP addresses, ports, filesystem, ... 
• Possibility for different name services (LDAP, ...) 
– ⾃自分⾃自⾝身以外の環境は⾒見見えない 
• ps, /proc, prstat, ... only show local processes 
• No sharing memory other than local to the zone 
– ファイルシステムの分割 
• Private piece of disk for identity  application 
• Shared read-only to underlying OS (/lib,/usr,...) 
 
11
Oracle Solaris Zones 
ファイルシステム 
疎ルートゾーン 
(sparse root zones) 
⼤大域ゾーン(global zones) 
完全ルートゾーン 
(whole root zones) 
/ 
/usr 
/lib /platform 
/zones /export 
/sbin 
/zone01 
/root /dev 
/etc 
/var 
/zone02 
/dev /root 
/ 
(local, 
iscsi, 
fc 
…) 
/usr 
/platform 
/sbin 
/lib 
/export 
/etc 
/var 
⼀一部のファイルシステム 
を読み取り専⽤用で継承 
/opt 
/opt 
/ 
/usr 
/platform 
/sbin 
/lib 
/export 
/etc 
/var 
/opt 
疎ルートゾーンは Solaris 10 のみ利利⽤用可能Solaris 11 以降降は完全ルートゾーンのみ利利⽤用可能
Oracle Solaris Zones 
ネットワーク 
• 共有IP (shared IP)ゾーン 
– デフォルトのネットワークタイプ 
– ⼤大域ゾーンと物理理ネットワークを共有 
– Oracle Solaris 10 10/08よりデフォルト 
ルータを⾮非⼤大域ゾーン毎に設定可能 
• 排他的IP (exclusive IP)ゾーン 
– Oracle Solaris 10 8/07 新機能 
– ⾮非⼤大域ゾーンに専⽤用の物理理ネットワー 
クを割り当て 
– GLDv3に対応したNICが必要 
– Solaris 11 では仮想 NIC を割当可能に 
IPスタックを⼤大域 
ゾーンと共有独⽴立立したIPスタック 
⼤大域ゾーン⾮非⼤大域ゾーン⾮非⼤大域ゾーン 
net1 
net0:1 
net0:0 
共有IP 排他的IP
Oracle Solaris Zones 
セキュリティ 
• 各⾮非⼤大域ゾーンからは独⽴立立したOSが動作している様に⾒見見える 
• ⾮非⼤大域ゾーンは他のゾーンの存在を意識識できない 
⾮非⼤大域ゾーン(zone02) ⾮非⼤大域ゾーン(zone03) 
⾮非⼤大域ゾーン(zone01) 
⼤大域ゾーン(global) 
⾮非⼤大域ゾーンの障害 
や再起動は他に影響 
を与えない 
⼤大域ゾーンは⾮非⼤大 
域ゾーンへのコン 
ソール機能を提供 
P 
P P 
P 
P P 
P 
P P 
⾮非⼤大域ゾーン間、 
⼤大域ゾーンへの 
侵⼊入は不不可
Oracle Solaris Zones 
セキュリティ 
• ⾮非⼤大域ゾーンのセキュリティは特権(privileges)によって管理理 
• Oracle Solaris 10 11/06より特権の変更更が可能 
• ⾮非⼤大域ゾーンで以下の特権は使⽤用禁⽌止 
– dtrace_kernel 
– proc_zone 
– sys_config 
– sys_devices 
– sys_linkdir 
– sys_net_config 
– sys_res_config 
– sys_suser_compat 
㠀኱ᇦ䝌䞊䞁(zone03) 
P 
P 
P 
㠀኱ᇦ䝌䞊䞁(zone02) 
P 
P 
P 
኱ᇦ䝌䞊䞁(global) 
㠀኱ᇦ䝌䞊䞁(zone01) 
P 
P 
P 
P 
P 
P
Oracle Solaris Zones 
Oracle Solaris 11 Zones 
• 
Oracle Solaris Zones がより進化 
– Solaris のパッケージ管理理システム IPS の柔軟性を 
利利⽤用したソフトウェア管理理 
– NFS サーバ機能をサポート 
– 特定のユーザへ管理理権限を委譲可能 
– ネットワークスタックを共有しない排他的 IP ゾーン 
がデフォルトに 
• ネットワーク仮想化機能 crossbow との連携 
– Read only の Zone をサポート 
– Oracle Solaris 10 Zones をサポート 
• アプリケーションを動作させる標準環境としての実績は⼗十分
Oracle Solaris Zones 
Solaris 11䛷฼⏝ྍ⬟䛺㠀኱ᇦ䝌䞊䞁✀ู 
• Solaris 11䛷䝃䝫䞊䝖䛥䜜䜛㠀኱ᇦ䝌䞊䞁 
– solaris (SPARC/x86㻌䛷฼⏝ྍ⬟) 
• Solaris 11㻌⎔ቃ䜢ᥦ౪ 
– solaris10 (SPARC/x86, 
㏣ຍ䝷䜲䝉䞁䝇䛿ᚲせ䛺䛧) 
• Solaris 
10 
⎔ቃ䜢ᥦ౪ 
• 䛩䛷䛻ືస䛧䛶䛔䜛㻌Solaris 10 ᐇ⎔ቃ䛛䜙䛾㻌P2V 
• 䝥䝻䝉䝑䝃䜰䞊䜻䝔䜽䝏䝱䛾ቨ䛿㉺䛘䜙䜜䛺䛔䛜䚸 
ྠ୍䜰䞊䜻䝔䜽䝏䝱䛷䛒䜜䜀䝝䞊䝗䜴䜵䜰䛾ቨ䛿 
✺◚ྍ⬟ 
Solaris 10 Solaris 10 
s10z 
s10z 
Solaris 11
Oracle Solaris Zones 
制限事項 
• カーネル関連 
– /etc/systemに設定するカーネルパラメータは⼤大域ゾーンから設定 
– カーネルやデバイスに直接アクセスするアプリケーションは動作不不可 
• プロセス 
– ⼤大域ゾーンからゾーン内の全てのプロセスを参照可能 
• ネットワーク関連 
– 共有IP構成では⾮非⼤大域ゾーンからQoS/IPMP/ルーティングなどは設定不不可 
– ⾮非⼤大域ゾーンは NFS サーバにはなれない 
• ファイルシステム関連 
– NFS上に⾮非⼤大域ゾーン(zonepath)は構築不不可
Oracle Solaris Zones 
Solaris Zones と Docker  
Solaris ZonesDocker 
コンピューターリソースの隔離離Namespace の分割による隔離離Linux Namespaces 
コンピューターリソースの制限Solaris Resource ManagerLinux cgroups 
ファイル/ディレクトリの差分管 
理理 
ZFS, ZFS snapshotAUFS/Device Mapper Thin 
Provisioning 
他のホスト、他のコンテナーとの 
ネットワークの構成 
Solaris 仮想ネットワーク機能 Linux iptables 
19
Oracle Solaris Zones 
Solaris Zones 管理理コマンド 
 
20 
コマンド概要 
zonecfgzones の構成管理理ユーティリティ 
zoneadmzones を管理理する(install, uninstall, boot, halt, 
shutdown, attach/detach, clone, etc…)  
zloginzones へのログインするために、ローカルシステム 
上で利利⽤用 
zonestatzone の統計情報、リソース利利⽤用情報を取得 
No Zone 
delete create 
incomplete 
halt ready 
ready 
installed 
uninstall 
mark 
incomplete 
uninstall install 
ready boot halt 
boot 
mark 
incomplete 
reboot 
configured 
login 
running 
Zone 
zlogin zoneadm zonecfg
Oracle Solaris Zones 
• Solaris 11 Zones の構成例例 
– シンプルな作成⼿手順 
• 仮想NICの⽣生成まで含まれた最⼩小の構成⼿手順 
# zonecfg -z testzone01 
testzone01: No such zone configured 
Use 'create' to begin configuring a new zone. 
zonecfg:testzone01 create 
create: Using system default template 'SYSdefault' 
zonecfg:testzone01 set zonepath=/rpool/zones/testzone01 
zonecfg:testzone01 set autoboot=true 
zonecfg:testzone01 commit 
zonecfg:testzone01 exit 
testzone01 
Solaris 11 
仮想 NIC 
net0 
global zone 
Solaris 11 
– シンプルな OS デプロイ 
# zoneadm -z testzone01 install 
# zoneadm -z testzone01 boot ; zlogin -C testzone01 
[Connected to zone 'testzone01' console] 
[NOTICE: Zone booting up] 
SunOS Release 5.11 Version 11.0 64-bit 
Copyright (c) 1983, 2011, Oracle and/or its affiliates. All rights OSの設定画⾯面へ
Oracle Solaris Resource Manager 
22
Oracle Solaris Resource Manager 
概要 
• ハードウェア資源の管理理機能 
• 資源管理理の対象 
– プロジェクト 
– タスク 
– プロセス 
– Oralce Solarisゾーン 
Oracle Solarisリソースマネージャ 
プロジェクト 
P 
P 
P 
P 
P 
P 
タスクタスク 
CPU CPU 
pset_proj 
pool_proj 
⼤大域ゾーン 
⾮非⼤大域ゾー 
ン 
⾮非⼤大域ゾー 
ン 
CPU CPU 
pset_zone 
pool_zone 
P 
P 
P 
P 
P 
P 
Solaris 9以前Oracle Solaris 10 
+
Oracle Solaris Resource Manager 
ゾーンでの資源管理理 
– zone.cpu-shares 
– zone.cpu-cap 
– zone.max-swap 
– zone.max-locked-memory 
– zone.max-lofi 
– zone.max-lwps 
– zone.max-shm-memory 
– zone.max-shm-ids 
– zone.max-sem-ids 
– zone.max-msg-ids 
– zone.max-­‐processes
Oracle Solaris Resource Manager 
CPU資源 
• 3つのCPU資源の管理理⽅方法 
– 資源プール 
• CPU資源をグループ化して⾮非⼤大域ゾーンへ紐紐付ける単位 
• プロセッサセットとスケジューリングクラスから構成 
– capped-‐‑‒cpu資源 
• Oracle Solaris 10 5/08以降降 
• ⾮非⼤大域ゾーンで利利⽤用するCPU使⽤用率率率を指定 
• 資源プールと併⽤用可能 
– dedicated-‐‑‒cpu資源 
• Oracle Solaris 10 8/07以降降 
• CPUの⼀一部を⾮非⼤大域ゾーン専⽤用として割り当て 
• 資源プール/capped-‐‑‒cpu資源との併⽤用は不不可
Oracle Solaris Resource Manager 
資源プール 
• プロセッサセット 
– CPU *1の集合体 
• スケジューリングクラス 
– FSS (Fair Share Scheduler) 
• ゾーンに設定するCPUシェア数 
に基づいて資源プールを共有する 
ゾーン間でCPU資源を配分 
– TS (Time Sharing) 
• Oracle Solaris標準スケジューラ 
• CPU資源をプロセス毎に平等に 
配分 
CPU CPU CPU CPU 
CPU CPU CPU CPU 
pset_zone 
pool_zone (FSS) 
pset_default 
pool_default 
⾮非⼤大域ゾーン 
(zone02) 
⾮非⼤大域ゾーン 
(zone01) 
⼤大域ゾーン(global) 
資源プールプロセッサセット 
*1 : OSが認識識可能な最⼩小単位
Oracle Solaris Resource Manager 
資源プール 
• 複数の⾮非⼤大域ゾーンでプールを 
共有可能 
• 資源競合が発⽣生しない限り、⾮非 
⼤大域ゾーンはプール内の資源を 
最⼤大限利利⽤用可能 
zone01でプロセス 
を停⽌止0% 100% 
zone02でプロセス 
を起動 
zone01でプロセス 
を起動 
⼤大域ゾーン(global) 
CPU CPU 
pset_default 
pool_default 
20% 80% 
100% 0% 
⾮非⼤大域ゾーン 
⾮非⼤大域ゾーン 
(zone01) 
(zone02) 
cpu-shares : 20 cpu-shares : 80 
CPU CPU 
pset_zone 
pool_zone (FSS)
Oracle Solaris Resource Manager 
capped-cpu資源 
• 1 CPUを100%として、⾮非⼤大域 
ゾーンにおいて利利⽤用可能なCPU 
使⽤用率率率を指定(少数点第⼆二位まで 
指定可能) 
• 資源競合が発⽣生しない状況下に 
おいても指定された使⽤用率率率に制 
限される 
• 資源プールと併⽤用可能 
zone01でプロセス 
を起動50% 
CPU CPU 
pset_default 
pool_default (FSS) 
⼤大域ゾーン(global) 
1 / 2 (50%)の 
リソースを利利⽤用 
⾮非⼤大域ゾーン 
(zone02) 
⾮非⼤大域ゾーン 
(zone01) 
ncpus : 1
Oracle Solaris Resource Manager 
dedicated-cpu資源 
• ⾮非⼤大域ゾーンにおいて利利⽤用可能 
なCPU数を指定(範囲指定する 
場合は重要度度も設定) 
• 資源競合はなく、全ての資源を 
利利⽤用可能 
• テンポラリな資源プールを利利⽤用 
• 資源プール/capped-cpu資源と 
の併⽤用は不不可 
zone02でプロセス 
を起動 
⾮非⼤大域ゾーン(zone02) 
CPU CPU 
SUNWtmp_zone02 
SUNWtmp_zone02 
CPU CPU 
pset_default 
pool_default 
⼤大域ゾーン 
(global) 
⾮非⼤大域ゾーン 
(zone01) 
100% 
2 CPUリソース 
を占有 
ncpus : 2 
⾮非⼤大域ゾーン起動時に資源が⾜足り 
ないと起動できません
Oracle Solaris Resource Manager 
動的資源プール 
• CPU資源を範囲で指定 
• 負荷状況と資源プールの重要 
度度に応じて動的に資源を移動 
• 資源プール/dedicated-cpu資 
源で利利⽤用可能 
25% 37.5% 
50% 25% 25% 
⼤大域ゾーン(global) 
CPU CPU 
pset_default 
pool_default 
37.5% 
⾮非⼤大域ゾーン 
(zone02) 
CPU CPU 
CPU 
pset_zone 
⾮非⼤大域ゾーン 
(zone01) 
pool_zone (FSS) 
負荷状況に応じて動的 
にプール間で資源移動 
システム全体で⾒見見た各ゾーンのCPU使⽤用率率率 
cpu-shares : 50 cpu-shares : 50
Oracle Solaris Resource Manager 
メモリ資源 
• ⾮非⼤大域ゾーンに対してメモリ 
資源の上限値を指定 
– capped-memory資源 
• Oracle Solaris 10 8/07以降降 
• 物理理メモリ(physical) 
• スワップメモリ(swap) 
• ロックメモリ(locked) 
• 他のゾーンへ与える影響を最 
⼩小限に抑える事が可能 
1GB 
1GB 5GB 2GB 
⼤大域ゾーン 
(global) 
⾮非⼤大域ゾーン 
(prod) 
⾮非⼤大域ゾーン 
(devel) 
⼤大域ゾーン 
(global) 
1GB 2GB 3GB 
⾮非⼤大域ゾーン 
(prod) 
⾮非⼤大域ゾーン 
(devel) 
physical : 2GB 
P 
P 
P 
P P 
P 
P P 
P 
P 
P 
P 
P P 
P 
P P 
P 
3GB 
swp mem swp mem 
適切切なメモリ管理理と不不 
本意な性能劣劣化を防⽌止
Oracle Solaris Resource Manager 
Sysmte V IPC関連パラメータ 
• /etc/systemに対するパラメータは⼤大域ゾーンからのみ設定可能 
• ⾮非⼤大域ゾーン単位に指定可能なパラメータ 
– max-shm-memory (旧shmsys:shminfo_shmmax) 
• ⾮非⼤大域ゾーンに許容されるSystem V共有メモリ 
– max-shm-ids (旧shmsys:shminfo_shmmni) 
• ⾮非⼤大域ゾーンに許容されるSystem V共有メモリIDの最⼤大数 
– max-sem-ids (旧semsys:seminfo_semmni) 
• ⾮非⼤大域ゾーンに許容されるセマフォIDの最⼤大数 
– max-msg-ids (旧msgsys:msginfo_msgmni) 
• ⾮非⼤大域ゾーンに許容されるメッセージキューIDの最⼤大数
Oracle Solaris Zones 
まとめ 
• Oracle Solaris Zones とは? 
– Oracle Solaris Zones + Oracle Solaris Resource Manager 
を組み合わせたアプリケーション実⾏行行環境 
– カーネルなど資源を共有することでインスタンスの 
33
Oracle Solaris 11.2 における機能強化 
Ø Kernel 
Zones 
34
Native Zones 
Oracle Solaris 11.2 における機能強化 
• Live Zone Reconfiguration (LZR) 
– リブートの必要なく稼働中の⾮非⼤大域ゾーンの構成変更更が可能に 
– 稼働中の⾮非⼤大域ゾーン構成情報をレポート 
• CMT aware Zones and Pools 
– ゾーンへの CPU/コア/スレッド割当を明確化 
• OpenStack との統合 
35
Engineered for Cloud 
Oracle Solaris 11.2 
⽶米国時間2014年年7⽉月31⽇日提供開始 
• 2014/7/31 にプレスリリース発表および提供開始 
• 同時に Oracle Solaris Cluster 4.2 をリリース 
• 2014/8/5 ⽇日本語抄訳リリースを提供予定 
• 研究および開発⽬目的であれば無償利利⽤用可能
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
Solaris Kernel Zones 
n 
37 
追加された新たなブランド 
• Kernel Zones は、Type 2 ハイパーバイザー⽅方式と専⽤用ドライバによる準仮想化⽅方式を組み合わ 
せた実⾏行行環境を提供 
– Solaris Zones の操作性および管理理性をそのままに、隔離離性をより⾼高める 
– オーバーヘッドを限りなくゼロに (HW 仮想化⽀支援機能を活⽤用) 
– Solaris Zones の操作性および管理理性をそのままに、カーネル依存のサービスを提供可能
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
の Solaris Zones 
• が可能 
– ゾーンにカーネルを持たせることでバージョンの固定が可能 
• カーネル・クラッシュは 
– アプリケーション・バグによる影響も当該ゾーンにのみ影響 
• を提供可能 
– 全てのサービスがゾーン内で提供可能 
• システム・メンテナンス時も 
– Suspend  Resume による最⼩小限のダウンタイム 
– Live Migration は今後実装予定 
38 
Oracle Solaris 11.2
Solaris Kerenl Zones 
Oracle Solaris 11.2 以降降でサポート 
• 物理理ホストの要件 
– For SPARC 
• SPARC T4: System Firmware 8.5.0 以降降 
• SPARC T5, M5, M6: System Firmware 9.2.0 
以降降 
– For x86 
• ホスト BIOS/EFI での CPU 仮想化⽀支援機能の 
有効化 
– 最⼩小 8GB の物理理メモリ 
– ZFS ARC(Adaptive Replaecement Cache) 
の上限値チューニング 
• 搭載物理理メモリの半分程度度に抑える 
• その他 
– brand/brand-solaris-kz パッケージ 
– サポートは virtinfo コマンドで確認 
# virtinfo (SPARC T5-8 の例例) 
NAME CLASS 
logical-domain current 
non-global-zone supported 
kernel-zone supported 
 
※デフォルトの Kernel Zones リソース 
リソースデフォルト値 
CPU1 (virtual-cpu) 
Memory2GB (メモリがロックされるため⼤大域ゾーンの 
スワップへページングはされない) 
Storage16GB 
Networkexclusive のみ, Single NIC, Random MAC
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
より独⽴立立性の⾼高い仮想環境を提供 
• をサポート 
• ゾーンで 
• まで構築可能 
40
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
独⽴立立したカーネルをゾーンで利利⽤用可能に ー Solaris Kernel Zones  
Best-­‐of-­‐Breed 
Migra$on 
• ゾーンのサスペンド/レジューム(保存 
停⽌止/再開)をサポート 
• ライブマイグレーション(※予定) 
• 制限の緩和 (CIFS サーバーなど) 
• Solaris N on Solaris N+  
– Solaris 11.2 上で Solaris 11.3 
や Solaris 12 などが動作 
8 Oracle Confidential: Need to know 
Zone Zone u1 Zone u2 
• New generation of Zones 
• Own version of kernel 
• Allows patching/upgrading of zones 
to different OS releases individually 
• Antfarm zones can be suspended/ 
resumed 
• Live Migration possible! 
• Admin/Config/Resource 
Management interfaces exactly 
similar to zones 
• One set of resource controls and 
policies for all 
Different update levels 
Zone Zone A 
System A System B 
Live Migration
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
独⽴立立したカーネルをゾーンで利利⽤用可能に ー Solaris Kernel Zones  
• zoneadm suspend 
– kernel zones のみ 
– suspend resource property が設定されている必要あり 
• zonecfg –z KZ-Zones info suspend 
– supend されたメモリイメージは、圧縮され AES-128-CCM で暗号化。暗号化 
キーは /dev/random から動的に⽣生成される 
– 圧縮された suspend イメージは割り当てられるメモリよりは少なくなるが、 
メモリの使状況により変化 
– suspend からの復復帰は、zoneadm boot コマンドで 
– suspend 状態の Zone を異異なるホストにマイグレーション可能 
42
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
kzhost プロセスと zvmm カーネル・モジュール 
• kzhost プロセス 
– kernel zone 毎に⽣生成されゲストに仮想 CPU を利利⽤用させるプロセス 
– I/O スレッドや各種管理理など 
– ゾーンに割り当てられるメモリ管理理 
– Type 2 ハイパーバイザの役割 
• zvmm (zone virtual machine monitor) 疑似ドライバ 
– ゲストの実⾏行行に切切り替える仮想 CPUスレッド の ioctl 管理理 
– 仮想デバイスの拡張制御など 
• ゲストからのハイパーコールをホストへ 
• ホストからゲストへの割り込み 
– 仮想ハードウェアを再現する役割
カーネルゾーン 
仮想デバイスによる機能の実装 
• zvblk – 全ての disk I/O 
• zvnet – ネットワーク 
• zvterm – コンソール, zlogins 
• zvsdir – 共有ファイルシステム 
(⾮非公開インターフェース) 
• zvcntrl – apic, bus, timers, 
management, etc… 
• これらが実装される OSでなければ 
kernel zones で動作しない 
(例例:Solaris 10 は動作しない) 
root@solaris-s12:~# prtconf -D 
System Configuration: Oracle Corporation i86pc 
Memory size: 2048 Megabytes 
System Peripherals (Software Nodes): 
i86pc (driver name: rootnex) 
scsi_vhci, instance #0 (driver name: scsi_vhci) 
zvnex, instance #0 (driver name: zvnex) 
zvcntrl, instance #0 (driver name: zvcntrl) 
zvterm, instance #0 (driver name: zvterm) 
zvblk, instance #0 (driver name: zvblk) 
zvnet, instance #0 (driver name: zvnet) 
zvsdir, instance #0 (driver name: zvsdir) 
fcoe, instance #0 (driver name: fcoe) 
iscsi, instance #0 (driver name: iscsi) 
options, instance #0 (driver name: options) 
pseudo, instance #0 (driver name: pseudo) 
vga_arbiter, instance #0 (driver name: vga_arbiter) 
xsvc, instance #0 (driver name: xsvc) 
cpus, instance #0 (driver name: cpunex) 
cpu (driver name: cpudrv)
仮想化によるパフォーマンスの影響なし 
SAS 社が評価 
• 40 のテストが含まれる CPU/メモリおよび I/ 
O 集中型の標準 SAS テストを実施 
• IO 構成は同⼀一 
• 影響は最⼩小限かつ識識別可能であった 
45 
03:00 
02:30 
02:00 
01:30 
01:00 
00:30 
00:00 
Time (hh:mm) 
Bare Metal Kernel Zone 
䈜 
SAS 
9.4 
hNp://www.oracle.com/technetwork/database/bi-­‐datawarehousing/sas/sas-­‐on-­‐sol11-­‐2-­‐kernelzones-­‐2195675.pdf
ゼロ・オーバーヘッド仮想化機能の更更なる強化 
Solaris Kernel Zones – まとめ 
• Native Zones で実現できないサービスを提供可能に 
– Solaris Zones の操作性および管理理性をそのままに、カーネル依存のサービス 
を提供可能 
• ⼀一部、HW 機能および資源への依存が発⽣生するが、より⾼高い隔離離性 
を実現 
– CPU に実装される HWによる仮想化⽀支援機能 
• 仮想化によるパフォーマンス低下を回避 
– 2GB 以上の専⽤用物理理メモリ,ファイルシステムではなくボリューム(zvol, LUN) 
• suspend/resume や Live Migration (※予定) を実現可能に 
 
46
47 
Solaris 11.2 のアーカイブ/テンプレート機能 
導⼊入の柔軟性を最⼤大化 
– 
䛹䛣䜈䛷䜒䚸䛹䛣䛛䜙䛷䜒
アーカイブの種類 
⽤用途により 2 つのタイプを⽤用意 
クローン・アーカイブ リカバリ・アーカイブ 
独⽴立立したシステムのアーカイブ 対象は⼀一つのゾーンのみ(⼤大域ゾーンまたは⾮非⼤大域ゾーン) 
• ⼤大域ゾーンのアーカイブには、⾮非⼤大域ゾーンが必ず含まれる 
アクティブな BE のみが含まれる 全ての BE が含まれる 
ZFS データセットのクローンはプロモートされる ZFS データセットのクローンは関係を維持したまま 
保存される 
システム構成は初期化される 
• ノード固有やインスタンス固有なデータは削除されるシステム構成は保存される 
完全なクローンイメージを作成 
• システムとデバイスの構成はソースに依存しない 
• システムログやイベントも初期化される 
デバイスの構成情報のみ初期化 
48 
• OVF (Open Virtualization Format) 準拠 
• OVF に沿った仕様を採⽤用 
• OVA (Open Virtualization Format Archive) ファイル形式での配布
Native or Kernel Zones? 
49
NaUve 
or 
Kernel 
Zones? 
• アプリケーションの要件により選択 
– 全てのアプリケーションは、ゾーンで 
動作するようにするべき 
– Kernel Zones は、ゾーンであり、異異なる 
タイプのゾーン 
– 今後は、Native と Kernel Zone が組み合わ 
されたものが横並びで増えてゆく 
50 
NaUve 
Kernel 
Mobility 
Fixed 
Memory 
Independent 
Versions 
More 
IsolaUon 
Resource 
Sharing 
Zero 
Overhead 
IO 
Lightweight 
High 
ConsolidaUon
Oracle Solaris Zones or OVM Server for SPARC? 
アプリケーション Oracle Solaris Zones OVM for SPARC 
§ パーティションにより 
NUMA の影響を低減 
§ HA 構成 
§ Solaris Cluster による 
制御ドメイン障害時の 
回復復⼒力力 
§ Split PCI bus 構成 
§ ⾼高密度度の統合 
§ リソースの共有と粒粒度度 
§ ベアメタルと同等の I/O 
パフォーマンス 
§ シンプルな管理理 
§ ⾼高い機動性 (detach/ 
attach) 
§ レガシー OS のサポート 
§ システムではなくアプリ 
ケーションの観点で仮想 
化環境を選択 
§ ビルトインされたソ 
リューションを持つアプ 
リケーションもある (DB 
12c PDB など) 
51
OVM for SPARC と Solaris Zones を組み合わせる 
• OVM for SPARC と Solaris Zone 機能のいいとこ取りを狙う 
• 例例えば、ゾーンをグループ化することで、 
– リリースサイクルを管理理したり 
– メンテナンスウィンドウを制御 
できたり 
– 部⾨門毎にワークロードを分けたり 
– 顧客毎に分けたり 
– 冗⻑⾧長化リージョンを構成したり 
– other … 
52 
Solaris 11 Zone 
Solaris 11 Zone 
Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone 
Solaris 11 Zone Solaris 11 Zone 
Solaris 11 Zone Solaris 10 Zone 
Solaris 11 Zone Solaris 11 Zone 
Solaris 11 Zone Solaris 11 Zone 
Solaris 11 Zone Solaris 11 Zone 
Solaris 11 Zone 
HR LDom Finance LDom Sales LDom 
⾼高い統合効果に加え、機動性も確保した 
環境を得る事が可能に
OpenStack と Oracle Solaris Zones 
Solaris Zones をハイパーバイザーとしてサポート 
 
OpenStack Component Solaris Foundation Technology 
コンピュート仮想化 (Nova) 最初のコンピュートモデルとして Solaris Zones と Solaris Kernel Zones をサポート 
このサポートは、Nova のプラグインとして提供 
ネットワーク仮想化 (Neutron) 仮想 NIC/VLAN は Crossbow ネットワーク仮想化機能、SDN は Elastic Virtual Switch 
にて構築 
ストレージ仮想化 (Cinder) ZFS と COMSTAR の iSCSI サポートを Cinder プラグインとして提供 
イメージをベースとしたデプロイ(Glance) Solaris 統合アーカイブ (Unified Archive) を利利⽤用し⾃自動インストーラ機能にて Zone の 
デプロイ 
構成管理理 RAD (Remote Administrator Daemon) による OpenStack のためのプログラム・イン 
ターフェースを提供 
OpenStack インフラストラクチャのライフサイ 
クル管理理とサービス 
OpenStack 各種サービスは Solaris SMF で管理理 
OpenStack パッケージは Solaris 11 のパッケージシステムで提供 
OpenStack パッケージを含んだ統合アーカイブも提供
OpenStack の全機能を Solaris 11.2 でサポート 
Horizon 
Cloud Management 
Cloud APIs 
Nova Neutron Cinder 
 
Swift 
Glance 
サーバー仮想化 クラウドネットワーク クラウドストレージ イメージの展開 
Oracle Solaris Zones Elastic Virtual Switch ZFS File System Unified Archives
OpenStack 
mulU-­‐node 
on 
SPARC 
T5-­‐8 
(with 
OVM 
for 
SPARC) 
Oracle 
ConfidenUal 
– 
55
OpenStack 
mulU-­‐node 
on 
SPARC 
T5-­‐8 
(with 
OVM 
for 
SPARC) 
ᵓᡂ౛: 
56 
T5-­‐8 
Control 
Domain 
Control-­‐node(Ldom) 
net0 net1 
Compute-­‐node01(Ldom) 
net0 net1 
Compute-­‐node02(Ldom) 
net0 net1 
evs 
Ext_net 
10.134.67.240/29 
(VLAN200) 
Int_net 
192.168.10.0/24(VLAN201) 
VP 
VP VP 
VP 
VP VP 
Zone 
01 
vnic 
Zone 
03 
vnic 
Zone 
04 
vnic 
Zone 
02 
vnic 
Zone 
05 
vnic 
Zone 
06 
vnic 
uplink 
port 
uplink 
port 
uplink 
port 
cinder Neutron horizon 
ZFS 
rpool 
ZFS 
rpool 
ZFS 
rpool 
nova 
nova nova 
Zone 
root 
Zone 
root 
Management 
Catalyst 
4948 
trunk trunk trunk 
Evs 
controller 
Evs 
node 
Evs 
node
57 
create -b 
set brand=solaris-kz 
set autoboot=false 
set autoshutdown=shutdown 
set hostid=0x4ebe2024 
add anet ← 䝛䝑䝖䝽䞊䜽ᵓᡂ 
set lower-link=auto 
set configure-allowed-address=true 
set link-protection=mac-nospoof 
set mac-address=auto 
set evs=switch01 ← ฼⏝䛩䜛௬᝿䝇䜲䝑䝏 
set id=0 
end 
add device ← ㉳ື䝕䜱䝇䜽ᵓᡂ 
set storage=dev:/dev/zvol/dsk/%{global-rootzpool}/VARSHARE/zones/%{zonename}/disk%{id} 
set bootpri=0 
set id=0 
end 
add capped-memory ← 䝯䝰䝸ᵓᡂ 
set physical=2G 
end 
add virtual-cpu ← CPU ᵓᡂ 
set ncpus=8 
end 
add suspend ← suspend ᵓᡂ(䝯䝰䝸䜲䝯䞊䝆䛾㓄⨨ᵓᡂ) 
set path=/system/zones/%{zonename}/suspend 
end 
add keysource ← ᬯྕ໬㘽䛾ᵓᡂ (susend 䜲䝯䞊䝆⏝) 
set raw={base64}yRC4nwxXki2cw8YvesvYkw== 
end 
 
Kernel Zones の構成ファイル例例 
䈜 
iSCSI 
LUN 
䜢฼⏝䛧䛯ሙྜ䛾౛ 
set 
storage=iscsi://192.168.100.201:3260/target.iqn.1986-­‐03.com.sun:02:413a759d-­‐6d29-­‐6147-­‐eddc-­‐c986e374e20b,lun.4
参考情報: 仮想化ソリューションの選択 
Physical Domains + 
Oracle VM for SPARC 
or/and  
Solaris Kernel Zones 
or/and 
Solaris Zones 
OVM for SPARC + 
or/and  
Solaris Kernel Zones 
or/and 
Solaris Zones 
最⾼高の可⽤用性が必要 
できるだけ 
プラットフォームの 
デバイスアーキテクチャに 
沿ってリソースを分けたい 
また、OS、バージョン、 
パッチレベルを管理理したい 
Physical Domains 
(M6-‐‑‒32/M5-‐‑‒32) 
(CPU/メモリボード数依存) 
さらに環境を分けたい 
Oracle VM for 
SPARC 
(SPARC T4/T5/M5/M6) 
 
(H/Wスレッド数に依存) 
さらに環境を分けたい 
(H/Wスレッド数に⾮非依存) 
Solaris Zones  
Solaris Kernel さらに環境を分けたい 
とにかく環境を分けてリソースを管理理したい 
( 
CPU/メモリボード数, 
H/Wスレッド数に⾮非依存) 
Solaris Zones  
(H/Wスレッド数に⾮非依存) 
Zones  
(SPARC T4/T5/M5/M6) 
 
(H/Wスレッド数/メモリ容量量に依存) 
とにかく 
OS、バージョン、パッチ 
レベルを管理理したい
M6-‐‑‒32 ビッグメモリマシン 
32ソケット384CPU コア3,072 
スレッド 
テラバイトスケールのコンピューティング 
59 
 
32 テラバイトメモリ
参考情報 
• Solaris Zones: Operating System Support for Consolidating 
Commercial Workloads 
– Daniel Price and Andrew Tucker – Sun Microsystems, Inc. 
– https://www.usenix.org/legacy/event/lisa04/tech/full_papers/price/price.pdf 
• Oracle Solaris 11.2 Information Library (英語) 
– http://docs.oracle.com/cd/E36784_01/index.html 
• Introduction to Oracle Solaris Zones (⽇日本語版はもう少しで公開) 
– http://docs.oracle.com/cd/E36784_01/html/E36848/index.html 
 
Oracle Confidential – 
60
参考情報 
Oracle Solaris 11.2 をすぐに試せる VM テンプレート 
• Oracle Solaris 11.2 VM Downloads 
http://www.oracle.com/technetwork/server-storage/solaris11/downloads/vm-templates-2245495.html 
– Oracle Solaris 11.1 VM for Oracle VM VirtualBox 
• VirtualBox にインポートするだけで Oracle Solaris 11.2 を試⽤用可能 
• Oracle Solaris 10 VM Downloads 
http://www.oracle.com/technetwork/server-storage/solaris11/downloads/virtual-machines-1355605.html 
– Oracle Solaris 10 VM Template for Oracle VM VirtualBox 
• VirtualBox にインポートするだけで Oracle Solaris 10 1/13 を試⽤用可能 
– Oracle VM Template for Oracle Solaris 10 Zones for SPARC/x86 
• Oracle Solaris 10 Zones の構成情報テンプレート 
• Oracle Solaris 11.1 VM for Oracle VM VirtualBox と組み合わせることで、VirtulBox 上で Solaris 11.1 
と Solaris 10 Zones の試⽤用環境を構築可能 
• Solaris 11.2が動作する環境でも利利⽤用可能

More Related Content

What's hot

AWS Black Belt Techシリーズ Elastic Load Balancing (ELB)
AWS Black Belt Techシリーズ  Elastic Load Balancing (ELB)AWS Black Belt Techシリーズ  Elastic Load Balancing (ELB)
AWS Black Belt Techシリーズ Elastic Load Balancing (ELB)Amazon Web Services Japan
 
標的型攻撃からどのように身を守るのか
標的型攻撃からどのように身を守るのか標的型攻撃からどのように身を守るのか
標的型攻撃からどのように身を守るのかabend_cve_9999_0001
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
プロセスとコンテキストスイッチ
プロセスとコンテキストスイッチプロセスとコンテキストスイッチ
プロセスとコンテキストスイッチKazuki Onishi
 
MySQL日本語利用徹底入門
MySQL日本語利用徹底入門MySQL日本語利用徹底入門
MySQL日本語利用徹底入門Mikiya Okuno
 
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVRToru Makabe
 
OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)
OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)
OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)オラクルエンジニア通信
 
NetApp XCP データ移行ツールインストールと設定
NetApp XCP データ移行ツールインストールと設定NetApp XCP データ移行ツールインストールと設定
NetApp XCP データ移行ツールインストールと設定Kan Itani
 
IoT 時代における省電力長距離無線通信(LPWA)の選び方と LoRaWAN や Sigfox の活用方法
IoT 時代における省電力長距離無線通信(LPWA)の選び方とLoRaWAN や Sigfox の活用方法IoT 時代における省電力長距離無線通信(LPWA)の選び方とLoRaWAN や Sigfox の活用方法
IoT 時代における省電力長距離無線通信(LPWA)の選び方と LoRaWAN や Sigfox の活用方法SORACOM,INC
 
Flyway使いたい
Flyway使いたいFlyway使いたい
Flyway使いたいfourside
 
虎の穴ラボ エンジニア採用説明資料 .pdf
虎の穴ラボ エンジニア採用説明資料 .pdf虎の穴ラボ エンジニア採用説明資料 .pdf
虎の穴ラボ エンジニア採用説明資料 .pdf虎の穴 開発室
 
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6Hironobu Isoda
 
[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)
[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)
[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)Amazon Web Services Japan
 
(Tech DeepDive #1) Java Flight Recorder を活用した問題解決
(Tech DeepDive #1) Java Flight Recorder を活用した問題解決(Tech DeepDive #1) Java Flight Recorder を活用した問題解決
(Tech DeepDive #1) Java Flight Recorder を活用した問題解決オラクルエンジニア通信
 
新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイント新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイントオラクルエンジニア通信
 
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデートAmazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデートAmazon Web Services Japan
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)Kuniyasu Suzaki
 
第10回solr勉強会 solr cloudの導入事例
第10回solr勉強会 solr cloudの導入事例第10回solr勉強会 solr cloudの導入事例
第10回solr勉強会 solr cloudの導入事例Ken Hirose
 

What's hot (20)

Oracle Audit Vault and Database Vault のご紹介
Oracle Audit Vault and Database Vault のご紹介Oracle Audit Vault and Database Vault のご紹介
Oracle Audit Vault and Database Vault のご紹介
 
AWS Black Belt Techシリーズ Elastic Load Balancing (ELB)
AWS Black Belt Techシリーズ  Elastic Load Balancing (ELB)AWS Black Belt Techシリーズ  Elastic Load Balancing (ELB)
AWS Black Belt Techシリーズ Elastic Load Balancing (ELB)
 
標的型攻撃からどのように身を守るのか
標的型攻撃からどのように身を守るのか標的型攻撃からどのように身を守るのか
標的型攻撃からどのように身を守るのか
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
プロセスとコンテキストスイッチ
プロセスとコンテキストスイッチプロセスとコンテキストスイッチ
プロセスとコンテキストスイッチ
 
MySQL日本語利用徹底入門
MySQL日本語利用徹底入門MySQL日本語利用徹底入門
MySQL日本語利用徹底入門
 
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
 
OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)
OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)
OCI 購入モデルの整理と Universal Credit 最新情報(2021年2月17日版)
 
NetApp XCP データ移行ツールインストールと設定
NetApp XCP データ移行ツールインストールと設定NetApp XCP データ移行ツールインストールと設定
NetApp XCP データ移行ツールインストールと設定
 
IoT 時代における省電力長距離無線通信(LPWA)の選び方と LoRaWAN や Sigfox の活用方法
IoT 時代における省電力長距離無線通信(LPWA)の選び方とLoRaWAN や Sigfox の活用方法IoT 時代における省電力長距離無線通信(LPWA)の選び方とLoRaWAN や Sigfox の活用方法
IoT 時代における省電力長距離無線通信(LPWA)の選び方と LoRaWAN や Sigfox の活用方法
 
Oracle Database Applianceのご紹介(詳細)
Oracle Database Applianceのご紹介(詳細)Oracle Database Applianceのご紹介(詳細)
Oracle Database Applianceのご紹介(詳細)
 
Flyway使いたい
Flyway使いたいFlyway使いたい
Flyway使いたい
 
虎の穴ラボ エンジニア採用説明資料 .pdf
虎の穴ラボ エンジニア採用説明資料 .pdf虎の穴ラボ エンジニア採用説明資料 .pdf
虎の穴ラボ エンジニア採用説明資料 .pdf
 
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
 
[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)
[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)
[AWSマイスターシリーズ]Amazon Elastic Load Balancing (ELB)
 
(Tech DeepDive #1) Java Flight Recorder を活用した問題解決
(Tech DeepDive #1) Java Flight Recorder を活用した問題解決(Tech DeepDive #1) Java Flight Recorder を活用した問題解決
(Tech DeepDive #1) Java Flight Recorder を活用した問題解決
 
新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイント新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイント
 
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデートAmazon Redshift パフォーマンスチューニングテクニックと最新アップデート
Amazon Redshift パフォーマンスチューニングテクニックと最新アップデート
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
 
第10回solr勉強会 solr cloudの導入事例
第10回solr勉強会 solr cloudの導入事例第10回solr勉強会 solr cloudの導入事例
第10回solr勉強会 solr cloudの導入事例
 

Viewers also liked

2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション
2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション
2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーションOperation Lab, LLC.
 
Using LXC on Production
Using LXC on ProductionUsing LXC on Production
Using LXC on ProductionIsao Shimizu
 
HyClops for Zabbix紹介資料
HyClops for Zabbix紹介資料HyClops for Zabbix紹介資料
HyClops for Zabbix紹介資料Daisuke Ikeda
 
20140726 jaws-ug chiba AWS operation best practice
20140726 jaws-ug chiba AWS operation best practice20140726 jaws-ug chiba AWS operation best practice
20140726 jaws-ug chiba AWS operation best practiceKazuki Ueki
 
SendGridサンプルの紹介
SendGridサンプルの紹介SendGridサンプルの紹介
SendGridサンプルの紹介Shunji Konishi
 
No Monitoring, No Life on AWS
No Monitoring, No Life on AWSNo Monitoring, No Life on AWS
No Monitoring, No Life on AWSMasahito Zembutsu
 
Jtfハンズオン資料(公開版)
Jtfハンズオン資料(公開版)Jtfハンズオン資料(公開版)
Jtfハンズオン資料(公開版)亮介 山口
 
AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~
AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~
AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~Daisuke Ikeda
 
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかえむ ばーど
 
20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operation20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operationYasuhiro Araki, Ph.D
 
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門Masashi Shinbara
 
CoreOSによるDockerコンテナのクラスタリング
CoreOSによるDockerコンテナのクラスタリングCoreOSによるDockerコンテナのクラスタリング
CoreOSによるDockerコンテナのクラスタリングYuji ODA
 
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話Nobuhiro Fujita
 
オンプレミスから AWS への劇的ビフォーアフター
オンプレミスから AWS への劇的ビフォーアフターオンプレミスから AWS への劇的ビフォーアフター
オンプレミスから AWS への劇的ビフォーアフターmanabusakai
 
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまでDockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまでRyo Nakamaru
 
Dockerクイックツアー
DockerクイックツアーDockerクイックツアー
DockerクイックツアーEtsuji Nakai
 
ご注文は監視自動化ですか?
ご注文は監視自動化ですか?ご注文は監視自動化ですか?
ご注文は監視自動化ですか?Masahito Zembutsu
 

Viewers also liked (17)

2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション
2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション
2014-07-26 jawsug-chiba ドキュメントを書こう! 運用自動化時代のドキュメンテーション
 
Using LXC on Production
Using LXC on ProductionUsing LXC on Production
Using LXC on Production
 
HyClops for Zabbix紹介資料
HyClops for Zabbix紹介資料HyClops for Zabbix紹介資料
HyClops for Zabbix紹介資料
 
20140726 jaws-ug chiba AWS operation best practice
20140726 jaws-ug chiba AWS operation best practice20140726 jaws-ug chiba AWS operation best practice
20140726 jaws-ug chiba AWS operation best practice
 
SendGridサンプルの紹介
SendGridサンプルの紹介SendGridサンプルの紹介
SendGridサンプルの紹介
 
No Monitoring, No Life on AWS
No Monitoring, No Life on AWSNo Monitoring, No Life on AWS
No Monitoring, No Life on AWS
 
Jtfハンズオン資料(公開版)
Jtfハンズオン資料(公開版)Jtfハンズオン資料(公開版)
Jtfハンズオン資料(公開版)
 
AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~
AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~
AWSを含めたハイブリッド環境の監視の実現 ~zabbixのクラウド対応モジュールHyClops~
 
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
 
20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operation20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operation
 
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門
 
CoreOSによるDockerコンテナのクラスタリング
CoreOSによるDockerコンテナのクラスタリングCoreOSによるDockerコンテナのクラスタリング
CoreOSによるDockerコンテナのクラスタリング
 
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
 
オンプレミスから AWS への劇的ビフォーアフター
オンプレミスから AWS への劇的ビフォーアフターオンプレミスから AWS への劇的ビフォーアフター
オンプレミスから AWS への劇的ビフォーアフター
 
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまでDockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
 
Dockerクイックツアー
DockerクイックツアーDockerクイックツアー
Dockerクイックツアー
 
ご注文は監視自動化ですか?
ご注文は監視自動化ですか?ご注文は監視自動化ですか?
ご注文は監視自動化ですか?
 

Similar to 第4回コンテナ型仮想化勉強会@東京 Oracle Solaris のコンテナ技術「Solaris Zones」

第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」 第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」 Kazuyuki Sato
 
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」SolarisJP
 
Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)
Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)
Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)SolarisJP
 
Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能
Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能
Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能SolarisJP
 
【第五回 ゼロからはじめる Oracle Solaris 11】 01 システム間での迅速な移行を実現する ZOSS (Zones on Shared ...
【第五回 ゼロからはじめる Oracle Solaris 11】 01  システム間での迅速な移行を実現する ZOSS (Zones on Shared ...【第五回 ゼロからはじめる Oracle Solaris 11】 01  システム間での迅速な移行を実現する ZOSS (Zones on Shared ...
【第五回 ゼロからはじめる Oracle Solaris 11】 01 システム間での迅速な移行を実現する ZOSS (Zones on Shared ...SolarisJP
 
#05-01 Solaris Legacy Containers
#05-01 Solaris Legacy Containers #05-01 Solaris Legacy Containers
#05-01 Solaris Legacy Containers SolarisJPNight
 
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)tokuhy
 
[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力
[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力
[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力オラクルエンジニア通信
 
Solaris 11 に見る、次世代ファイルシステムZFS
Solaris 11 に見る、次世代ファイルシステムZFSSolaris 11 に見る、次世代ファイルシステムZFS
Solaris 11 に見る、次世代ファイルシステムZFSSolarisJP
 
Solaris 11 ディープダイブセミナー Distribution Constructor編
Solaris 11 ディープダイブセミナー Distribution Constructor編Solaris 11 ディープダイブセミナー Distribution Constructor編
Solaris 11 ディープダイブセミナー Distribution Constructor編SolarisJP
 
Oralce Solaris 11.2 Open Beta 紹介資料
Oralce Solaris 11.2 Open Beta 紹介資料Oralce Solaris 11.2 Open Beta 紹介資料
Oralce Solaris 11.2 Open Beta 紹介資料SolarisJP
 
今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術悟 宮崎
 
Solaris11 osc tokyo2011_fall
Solaris11 osc tokyo2011_fallSolaris11 osc tokyo2011_fall
Solaris11 osc tokyo2011_fall悟 宮崎
 
Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能
Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能
Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能Kazuyuki Sato
 
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイントOracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイントSolarisJP
 
Solaris (Branded) Zone Internals
Solaris (Branded) Zone InternalsSolaris (Branded) Zone Internals
Solaris (Branded) Zone InternalsKatsunori FUJIWARA
 
Elasticsearch as a Distributed System
Elasticsearch as a Distributed SystemElasticsearch as a Distributed System
Elasticsearch as a Distributed SystemSatoyuki Tsukano
 

Similar to 第4回コンテナ型仮想化勉強会@東京 Oracle Solaris のコンテナ技術「Solaris Zones」 (20)

第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」 第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
 
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
第6回コンテナ型仮想化の情報交換@東京「今日から触れる Solaris Zones 入門」
 
Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)
Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)
Oracle Solaris 11の可用性を高める! Oracle Solaris Cluster 4.0(補足資料)
 
osoljp 2011.08
osoljp 2011.08osoljp 2011.08
osoljp 2011.08
 
Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能
Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能
Solaris 11におけるシステム、ネットワーク、ストレージの仮想化機能
 
【第五回 ゼロからはじめる Oracle Solaris 11】 01 システム間での迅速な移行を実現する ZOSS (Zones on Shared ...
【第五回 ゼロからはじめる Oracle Solaris 11】 01  システム間での迅速な移行を実現する ZOSS (Zones on Shared ...【第五回 ゼロからはじめる Oracle Solaris 11】 01  システム間での迅速な移行を実現する ZOSS (Zones on Shared ...
【第五回 ゼロからはじめる Oracle Solaris 11】 01 システム間での迅速な移行を実現する ZOSS (Zones on Shared ...
 
#05-01 Solaris Legacy Containers
#05-01 Solaris Legacy Containers #05-01 Solaris Legacy Containers
#05-01 Solaris Legacy Containers
 
WalBの紹介
WalBの紹介WalBの紹介
WalBの紹介
 
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
 
[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力
[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力
[Oracle DBA & Developer Day 2012] 高可用性システムに適した管理性と性能を向上させるASM と RMAN の魅力
 
Solaris 11 に見る、次世代ファイルシステムZFS
Solaris 11 に見る、次世代ファイルシステムZFSSolaris 11 に見る、次世代ファイルシステムZFS
Solaris 11 に見る、次世代ファイルシステムZFS
 
Solaris 11 ディープダイブセミナー Distribution Constructor編
Solaris 11 ディープダイブセミナー Distribution Constructor編Solaris 11 ディープダイブセミナー Distribution Constructor編
Solaris 11 ディープダイブセミナー Distribution Constructor編
 
Oralce Solaris 11.2 Open Beta 紹介資料
Oralce Solaris 11.2 Open Beta 紹介資料Oralce Solaris 11.2 Open Beta 紹介資料
Oralce Solaris 11.2 Open Beta 紹介資料
 
今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術
 
Solaris11 osc tokyo2011_fall
Solaris11 osc tokyo2011_fallSolaris11 osc tokyo2011_fall
Solaris11 osc tokyo2011_fall
 
Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能
Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能
Oracle Solaris 11 における システム、ネットワーク、ストレージの仮想化機能
 
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイントOracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
 
Solaris (Branded) Zone Internals
Solaris (Branded) Zone InternalsSolaris (Branded) Zone Internals
Solaris (Branded) Zone Internals
 
Windows ✖︎ Docker
Windows ✖︎ DockerWindows ✖︎ Docker
Windows ✖︎ Docker
 
Elasticsearch as a Distributed System
Elasticsearch as a Distributed SystemElasticsearch as a Distributed System
Elasticsearch as a Distributed System
 

More from Kazuyuki Sato

Oracle Solaris 11.2 新機能概要
Oracle Solaris 11.2 新機能概要Oracle Solaris 11.2 新機能概要
Oracle Solaris 11.2 新機能概要Kazuyuki Sato
 
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」Kazuyuki Sato
 
Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能Kazuyuki Sato
 
Solaris 10 から Solaris 11 への移行準備とポイント
Solaris 10 から Solaris 11 への移行準備とポイントSolaris 10 から Solaris 11 への移行準備とポイント
Solaris 10 から Solaris 11 への移行準備とポイントKazuyuki Sato
 
Wine on Solaris 11 Express
Wine on Solaris 11 ExpressWine on Solaris 11 Express
Wine on Solaris 11 ExpressKazuyuki Sato
 
Oracle solaris 10 u9 iSCSI Boot
Oracle solaris 10 u9 iSCSI BootOracle solaris 10 u9 iSCSI Boot
Oracle solaris 10 u9 iSCSI BootKazuyuki Sato
 
Opensolaris ipfilter 20090710
Opensolaris ipfilter 20090710Opensolaris ipfilter 20090710
Opensolaris ipfilter 20090710Kazuyuki Sato
 
「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)
「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)
「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)Kazuyuki Sato
 

More from Kazuyuki Sato (8)

Oracle Solaris 11.2 新機能概要
Oracle Solaris 11.2 新機能概要Oracle Solaris 11.2 新機能概要
Oracle Solaris 11.2 新機能概要
 
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~ 「もう一つのストレージ仮想化機能 “COMSTAR”概要」
 
Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能
 
Solaris 10 から Solaris 11 への移行準備とポイント
Solaris 10 から Solaris 11 への移行準備とポイントSolaris 10 から Solaris 11 への移行準備とポイント
Solaris 10 から Solaris 11 への移行準備とポイント
 
Wine on Solaris 11 Express
Wine on Solaris 11 ExpressWine on Solaris 11 Express
Wine on Solaris 11 Express
 
Oracle solaris 10 u9 iSCSI Boot
Oracle solaris 10 u9 iSCSI BootOracle solaris 10 u9 iSCSI Boot
Oracle solaris 10 u9 iSCSI Boot
 
Opensolaris ipfilter 20090710
Opensolaris ipfilter 20090710Opensolaris ipfilter 20090710
Opensolaris ipfilter 20090710
 
「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)
「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)
「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」(仮)
 

第4回コンテナ型仮想化勉強会@東京 Oracle Solaris のコンテナ技術「Solaris Zones」

  • 1. 第4回コンテナ型仮想化の情報交換@東京 Oracle Solaris Zones Oracle Solaris のコンテナ技術 Kazuyuki Sato September 06, 2014 Corydoras armatus (Günther, 1868)
  • 2. Agenda Ø ⾃自⼰己紹介:@satokaz Ø Oracle Solaris Zones Ø Oracle Solaris Resource Manager Ø Oracle Solaris 11.2 における機能強化 2
  • 3. @satokaz ⾃自⼰己紹介 • 某社で製品情報を左から右に流流す仕事に従事 – Solaris とか Solaris とか Solaris とか • ⽔水槽の前に座って熱帯⿂魚に話かけるのが得意。返事はない。 – コリドラス(なまず)が可愛くていつも⽔水槽の前で死にかけている – AQUA LIFE が愛読書 • 最近の悩み:OpenStack について聞かれる。Solaris 担当なのに。 3
  • 4. SPARC/Solaris の仮想化機能 Hypervisor HV (HV)Hypervisor (HV) PDom Multiple OS Single OS App OS Server Hypervisor (HV) Hard Partition (PDoms : Physical Domains) Oracle VM Server (LDoms : Logical Domains) Solaris ZonesResource Manager M6-‐‑‒32 Series T-‐‑‒Series M6-‐‑‒32 Series T-‐‑‒Series M6-‐‑‒32 Series T-‐‑‒Series M6-‐‑‒32 Series HV PDom HV PDom
  • 5. Project Blackbox コンテナ型データーセンター • 1 コンテナ約5000万円 • Sun Modular Datacenter 5
  • 6. Oracle Solaris Zones Ø Na$ve Zones 6
  • 7. Oracle Solaris Zones について アプリケーション実⾏行行環境であること • 統合技術(コンソリデーション) – 1960年年代から開発されている技術になり、メインフレーム環境において⼀一般 的な技術 • 実⾏行行されている環境を変えないようにする – ゾーンの基本的な設計原則の1つ。アプリケーションがセキュリティや隔離離の ⽬目標を達成するために必要な場合を除いて、実⾏行行されている環境を変えない ようにすること • アプリケーションを「移植」する必要はない – ゾーンは、新しい API や ABI を提⽰示しない代わりに、いくつかの制限付きの Solaris API/ABI インタフェースを提供 7
  • 8. Oracle Solaris Zones について Solaris Zones の開発⽬目標 (2003 年年代) • セキュリティ(Security) – ネットワークサービスを分離離し、システム全体に及ばない権限のサブセットを提供 • 隔離離(Isolation) – 複数のアプリケーションを異異なる信頼された領領域で実⾏行行すると共に、グローバルリソースへ の排他的アクセスを提供 • 仮想化(Virtualization) – アプリケーションへの物理理デバイスや物理理ホスト情報を隠蔽する仮想化環境を提供 • 粒粒度度(Granularity) – 物理理パーティショニングと違いリソースを細かく分配可能に • 透過性(Transparency) – アプリケーションの移植を必要としない 8
  • 9. Oracle Solaris Zones について アイソレーションのアプローチ アプローチ メモ chroot古くから利利⽤用されるプロセスのアイソレーション⽅方法となるが、それ以外の ものは隔離離できない jailschroot ライクであり、ファイルシステムなどもアイソレーション可能 Trusted Operating SystemセキュアOS としての要件を満たすアプローチ Hardware または Logical Partitioning 2003 年年頃。logical partitions for SPARC の実装を別プロジェクトで実施中。 後の Ldoms (Oracle VM for SPARC) 9 • Solaris ゾーンは、jails の基本的な考え⽅方に基づいて実装されている – さらに OS に統合し包括的な機能として提供できるよう概念念を独⾃自に拡張
  • 10. Oracle Solaris Zones 組み込まれた仮想化機能 • 単⼀一システム上に複数の 隔離離されたランタイム環境(Solaris インスタンス )を提供する機能 • ゾーンは⼤大きく 2 種類に区分 ü ⼤大域ゾーン (global zone) • オペレーティングシステムの実体 ü ⾮非⼤大域ゾーン (non-global zone) • ⼤大域ゾーン上で動作するアプリケーション 実⾏行行環境 • ⼤大域ゾーンとカーネルを共有 • ⾮非⼤大域ゾーン間は完全に隔離離 • 最⼤大 8192 個 (⼤大域ゾーン含む) 作成可能 zone01 zone02 zone03 net0:1 zcons /usr net0:2 /data /usr net1 /data /usr zoneadmd zoneadmd zoneadmd ゾーン管理理 (zonecfg, zoneadm, zlogin, etc) C C C C Virtual Platform /data zcons zcons
  • 11. Oracle Solaris Zones ネームスペース(名前空間)のアイソレーションを⽬目的とした実装 – ネームスペースの分割 • users, root, IP addresses, ports, filesystem, ... • Possibility for different name services (LDAP, ...) – ⾃自分⾃自⾝身以外の環境は⾒見見えない • ps, /proc, prstat, ... only show local processes • No sharing memory other than local to the zone – ファイルシステムの分割 • Private piece of disk for identity application • Shared read-only to underlying OS (/lib,/usr,...) 11
  • 12. Oracle Solaris Zones ファイルシステム 疎ルートゾーン (sparse root zones) ⼤大域ゾーン(global zones) 完全ルートゾーン (whole root zones) / /usr /lib /platform /zones /export /sbin /zone01 /root /dev /etc /var /zone02 /dev /root / (local, iscsi, fc …) /usr /platform /sbin /lib /export /etc /var ⼀一部のファイルシステム を読み取り専⽤用で継承 /opt /opt / /usr /platform /sbin /lib /export /etc /var /opt 疎ルートゾーンは Solaris 10 のみ利利⽤用可能Solaris 11 以降降は完全ルートゾーンのみ利利⽤用可能
  • 13. Oracle Solaris Zones ネットワーク • 共有IP (shared IP)ゾーン – デフォルトのネットワークタイプ – ⼤大域ゾーンと物理理ネットワークを共有 – Oracle Solaris 10 10/08よりデフォルト ルータを⾮非⼤大域ゾーン毎に設定可能 • 排他的IP (exclusive IP)ゾーン – Oracle Solaris 10 8/07 新機能 – ⾮非⼤大域ゾーンに専⽤用の物理理ネットワー クを割り当て – GLDv3に対応したNICが必要 – Solaris 11 では仮想 NIC を割当可能に IPスタックを⼤大域 ゾーンと共有独⽴立立したIPスタック ⼤大域ゾーン⾮非⼤大域ゾーン⾮非⼤大域ゾーン net1 net0:1 net0:0 共有IP 排他的IP
  • 14. Oracle Solaris Zones セキュリティ • 各⾮非⼤大域ゾーンからは独⽴立立したOSが動作している様に⾒見見える • ⾮非⼤大域ゾーンは他のゾーンの存在を意識識できない ⾮非⼤大域ゾーン(zone02) ⾮非⼤大域ゾーン(zone03) ⾮非⼤大域ゾーン(zone01) ⼤大域ゾーン(global) ⾮非⼤大域ゾーンの障害 や再起動は他に影響 を与えない ⼤大域ゾーンは⾮非⼤大 域ゾーンへのコン ソール機能を提供 P P P P P P P P P ⾮非⼤大域ゾーン間、 ⼤大域ゾーンへの 侵⼊入は不不可
  • 15. Oracle Solaris Zones セキュリティ • ⾮非⼤大域ゾーンのセキュリティは特権(privileges)によって管理理 • Oracle Solaris 10 11/06より特権の変更更が可能 • ⾮非⼤大域ゾーンで以下の特権は使⽤用禁⽌止 – dtrace_kernel – proc_zone – sys_config – sys_devices – sys_linkdir – sys_net_config – sys_res_config – sys_suser_compat 㠀኱ᇦ䝌䞊䞁(zone03) P P P 㠀኱ᇦ䝌䞊䞁(zone02) P P P ኱ᇦ䝌䞊䞁(global) 㠀኱ᇦ䝌䞊䞁(zone01) P P P P P P
  • 16. Oracle Solaris Zones Oracle Solaris 11 Zones • Oracle Solaris Zones がより進化 – Solaris のパッケージ管理理システム IPS の柔軟性を 利利⽤用したソフトウェア管理理 – NFS サーバ機能をサポート – 特定のユーザへ管理理権限を委譲可能 – ネットワークスタックを共有しない排他的 IP ゾーン がデフォルトに • ネットワーク仮想化機能 crossbow との連携 – Read only の Zone をサポート – Oracle Solaris 10 Zones をサポート • アプリケーションを動作させる標準環境としての実績は⼗十分
  • 17. Oracle Solaris Zones Solaris 11䛷฼⏝ྍ⬟䛺㠀኱ᇦ䝌䞊䞁✀ู • Solaris 11䛷䝃䝫䞊䝖䛥䜜䜛㠀኱ᇦ䝌䞊䞁 – solaris (SPARC/x86㻌䛷฼⏝ྍ⬟) • Solaris 11㻌⎔ቃ䜢ᥦ౪ – solaris10 (SPARC/x86, ㏣ຍ䝷䜲䝉䞁䝇䛿ᚲせ䛺䛧) • Solaris 10 ⎔ቃ䜢ᥦ౪ • 䛩䛷䛻ືస䛧䛶䛔䜛㻌Solaris 10 ᐇ⎔ቃ䛛䜙䛾㻌P2V • 䝥䝻䝉䝑䝃䜰䞊䜻䝔䜽䝏䝱䛾ቨ䛿㉺䛘䜙䜜䛺䛔䛜䚸 ྠ୍䜰䞊䜻䝔䜽䝏䝱䛷䛒䜜䜀䝝䞊䝗䜴䜵䜰䛾ቨ䛿 ✺◚ྍ⬟ Solaris 10 Solaris 10 s10z s10z Solaris 11
  • 18. Oracle Solaris Zones 制限事項 • カーネル関連 – /etc/systemに設定するカーネルパラメータは⼤大域ゾーンから設定 – カーネルやデバイスに直接アクセスするアプリケーションは動作不不可 • プロセス – ⼤大域ゾーンからゾーン内の全てのプロセスを参照可能 • ネットワーク関連 – 共有IP構成では⾮非⼤大域ゾーンからQoS/IPMP/ルーティングなどは設定不不可 – ⾮非⼤大域ゾーンは NFS サーバにはなれない • ファイルシステム関連 – NFS上に⾮非⼤大域ゾーン(zonepath)は構築不不可
  • 19. Oracle Solaris Zones Solaris Zones と Docker Solaris ZonesDocker コンピューターリソースの隔離離Namespace の分割による隔離離Linux Namespaces コンピューターリソースの制限Solaris Resource ManagerLinux cgroups ファイル/ディレクトリの差分管 理理 ZFS, ZFS snapshotAUFS/Device Mapper Thin Provisioning 他のホスト、他のコンテナーとの ネットワークの構成 Solaris 仮想ネットワーク機能 Linux iptables 19
  • 20. Oracle Solaris Zones Solaris Zones 管理理コマンド 20 コマンド概要 zonecfgzones の構成管理理ユーティリティ zoneadmzones を管理理する(install, uninstall, boot, halt, shutdown, attach/detach, clone, etc…) zloginzones へのログインするために、ローカルシステム 上で利利⽤用 zonestatzone の統計情報、リソース利利⽤用情報を取得 No Zone delete create incomplete halt ready ready installed uninstall mark incomplete uninstall install ready boot halt boot mark incomplete reboot configured login running Zone zlogin zoneadm zonecfg
  • 21. Oracle Solaris Zones • Solaris 11 Zones の構成例例 – シンプルな作成⼿手順 • 仮想NICの⽣生成まで含まれた最⼩小の構成⼿手順 # zonecfg -z testzone01 testzone01: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:testzone01 create create: Using system default template 'SYSdefault' zonecfg:testzone01 set zonepath=/rpool/zones/testzone01 zonecfg:testzone01 set autoboot=true zonecfg:testzone01 commit zonecfg:testzone01 exit testzone01 Solaris 11 仮想 NIC net0 global zone Solaris 11 – シンプルな OS デプロイ # zoneadm -z testzone01 install # zoneadm -z testzone01 boot ; zlogin -C testzone01 [Connected to zone 'testzone01' console] [NOTICE: Zone booting up] SunOS Release 5.11 Version 11.0 64-bit Copyright (c) 1983, 2011, Oracle and/or its affiliates. All rights OSの設定画⾯面へ
  • 23. Oracle Solaris Resource Manager 概要 • ハードウェア資源の管理理機能 • 資源管理理の対象 – プロジェクト – タスク – プロセス – Oralce Solarisゾーン Oracle Solarisリソースマネージャ プロジェクト P P P P P P タスクタスク CPU CPU pset_proj pool_proj ⼤大域ゾーン ⾮非⼤大域ゾー ン ⾮非⼤大域ゾー ン CPU CPU pset_zone pool_zone P P P P P P Solaris 9以前Oracle Solaris 10 +
  • 24. Oracle Solaris Resource Manager ゾーンでの資源管理理 – zone.cpu-shares – zone.cpu-cap – zone.max-swap – zone.max-locked-memory – zone.max-lofi – zone.max-lwps – zone.max-shm-memory – zone.max-shm-ids – zone.max-sem-ids – zone.max-msg-ids – zone.max-­‐processes
  • 25. Oracle Solaris Resource Manager CPU資源 • 3つのCPU資源の管理理⽅方法 – 資源プール • CPU資源をグループ化して⾮非⼤大域ゾーンへ紐紐付ける単位 • プロセッサセットとスケジューリングクラスから構成 – capped-‐‑‒cpu資源 • Oracle Solaris 10 5/08以降降 • ⾮非⼤大域ゾーンで利利⽤用するCPU使⽤用率率率を指定 • 資源プールと併⽤用可能 – dedicated-‐‑‒cpu資源 • Oracle Solaris 10 8/07以降降 • CPUの⼀一部を⾮非⼤大域ゾーン専⽤用として割り当て • 資源プール/capped-‐‑‒cpu資源との併⽤用は不不可
  • 26. Oracle Solaris Resource Manager 資源プール • プロセッサセット – CPU *1の集合体 • スケジューリングクラス – FSS (Fair Share Scheduler) • ゾーンに設定するCPUシェア数 に基づいて資源プールを共有する ゾーン間でCPU資源を配分 – TS (Time Sharing) • Oracle Solaris標準スケジューラ • CPU資源をプロセス毎に平等に 配分 CPU CPU CPU CPU CPU CPU CPU CPU pset_zone pool_zone (FSS) pset_default pool_default ⾮非⼤大域ゾーン (zone02) ⾮非⼤大域ゾーン (zone01) ⼤大域ゾーン(global) 資源プールプロセッサセット *1 : OSが認識識可能な最⼩小単位
  • 27. Oracle Solaris Resource Manager 資源プール • 複数の⾮非⼤大域ゾーンでプールを 共有可能 • 資源競合が発⽣生しない限り、⾮非 ⼤大域ゾーンはプール内の資源を 最⼤大限利利⽤用可能 zone01でプロセス を停⽌止0% 100% zone02でプロセス を起動 zone01でプロセス を起動 ⼤大域ゾーン(global) CPU CPU pset_default pool_default 20% 80% 100% 0% ⾮非⼤大域ゾーン ⾮非⼤大域ゾーン (zone01) (zone02) cpu-shares : 20 cpu-shares : 80 CPU CPU pset_zone pool_zone (FSS)
  • 28. Oracle Solaris Resource Manager capped-cpu資源 • 1 CPUを100%として、⾮非⼤大域 ゾーンにおいて利利⽤用可能なCPU 使⽤用率率率を指定(少数点第⼆二位まで 指定可能) • 資源競合が発⽣生しない状況下に おいても指定された使⽤用率率率に制 限される • 資源プールと併⽤用可能 zone01でプロセス を起動50% CPU CPU pset_default pool_default (FSS) ⼤大域ゾーン(global) 1 / 2 (50%)の リソースを利利⽤用 ⾮非⼤大域ゾーン (zone02) ⾮非⼤大域ゾーン (zone01) ncpus : 1
  • 29. Oracle Solaris Resource Manager dedicated-cpu資源 • ⾮非⼤大域ゾーンにおいて利利⽤用可能 なCPU数を指定(範囲指定する 場合は重要度度も設定) • 資源競合はなく、全ての資源を 利利⽤用可能 • テンポラリな資源プールを利利⽤用 • 資源プール/capped-cpu資源と の併⽤用は不不可 zone02でプロセス を起動 ⾮非⼤大域ゾーン(zone02) CPU CPU SUNWtmp_zone02 SUNWtmp_zone02 CPU CPU pset_default pool_default ⼤大域ゾーン (global) ⾮非⼤大域ゾーン (zone01) 100% 2 CPUリソース を占有 ncpus : 2 ⾮非⼤大域ゾーン起動時に資源が⾜足り ないと起動できません
  • 30. Oracle Solaris Resource Manager 動的資源プール • CPU資源を範囲で指定 • 負荷状況と資源プールの重要 度度に応じて動的に資源を移動 • 資源プール/dedicated-cpu資 源で利利⽤用可能 25% 37.5% 50% 25% 25% ⼤大域ゾーン(global) CPU CPU pset_default pool_default 37.5% ⾮非⼤大域ゾーン (zone02) CPU CPU CPU pset_zone ⾮非⼤大域ゾーン (zone01) pool_zone (FSS) 負荷状況に応じて動的 にプール間で資源移動 システム全体で⾒見見た各ゾーンのCPU使⽤用率率率 cpu-shares : 50 cpu-shares : 50
  • 31. Oracle Solaris Resource Manager メモリ資源 • ⾮非⼤大域ゾーンに対してメモリ 資源の上限値を指定 – capped-memory資源 • Oracle Solaris 10 8/07以降降 • 物理理メモリ(physical) • スワップメモリ(swap) • ロックメモリ(locked) • 他のゾーンへ与える影響を最 ⼩小限に抑える事が可能 1GB 1GB 5GB 2GB ⼤大域ゾーン (global) ⾮非⼤大域ゾーン (prod) ⾮非⼤大域ゾーン (devel) ⼤大域ゾーン (global) 1GB 2GB 3GB ⾮非⼤大域ゾーン (prod) ⾮非⼤大域ゾーン (devel) physical : 2GB P P P P P P P P P P P P P P P P P P 3GB swp mem swp mem 適切切なメモリ管理理と不不 本意な性能劣劣化を防⽌止
  • 32. Oracle Solaris Resource Manager Sysmte V IPC関連パラメータ • /etc/systemに対するパラメータは⼤大域ゾーンからのみ設定可能 • ⾮非⼤大域ゾーン単位に指定可能なパラメータ – max-shm-memory (旧shmsys:shminfo_shmmax) • ⾮非⼤大域ゾーンに許容されるSystem V共有メモリ – max-shm-ids (旧shmsys:shminfo_shmmni) • ⾮非⼤大域ゾーンに許容されるSystem V共有メモリIDの最⼤大数 – max-sem-ids (旧semsys:seminfo_semmni) • ⾮非⼤大域ゾーンに許容されるセマフォIDの最⼤大数 – max-msg-ids (旧msgsys:msginfo_msgmni) • ⾮非⼤大域ゾーンに許容されるメッセージキューIDの最⼤大数
  • 33. Oracle Solaris Zones まとめ • Oracle Solaris Zones とは? – Oracle Solaris Zones + Oracle Solaris Resource Manager を組み合わせたアプリケーション実⾏行行環境 – カーネルなど資源を共有することでインスタンスの 33
  • 34. Oracle Solaris 11.2 における機能強化 Ø Kernel Zones 34
  • 35. Native Zones Oracle Solaris 11.2 における機能強化 • Live Zone Reconfiguration (LZR) – リブートの必要なく稼働中の⾮非⼤大域ゾーンの構成変更更が可能に – 稼働中の⾮非⼤大域ゾーン構成情報をレポート • CMT aware Zones and Pools – ゾーンへの CPU/コア/スレッド割当を明確化 • OpenStack との統合 35
  • 36. Engineered for Cloud Oracle Solaris 11.2 ⽶米国時間2014年年7⽉月31⽇日提供開始 • 2014/7/31 にプレスリリース発表および提供開始 • 同時に Oracle Solaris Cluster 4.2 をリリース • 2014/8/5 ⽇日本語抄訳リリースを提供予定 • 研究および開発⽬目的であれば無償利利⽤用可能
  • 37. ゼロ・オーバーヘッド仮想化機能の更更なる強化 Solaris Kernel Zones n 37 追加された新たなブランド • Kernel Zones は、Type 2 ハイパーバイザー⽅方式と専⽤用ドライバによる準仮想化⽅方式を組み合わ せた実⾏行行環境を提供 – Solaris Zones の操作性および管理理性をそのままに、隔離離性をより⾼高める – オーバーヘッドを限りなくゼロに (HW 仮想化⽀支援機能を活⽤用) – Solaris Zones の操作性および管理理性をそのままに、カーネル依存のサービスを提供可能
  • 38. ゼロ・オーバーヘッド仮想化機能の更更なる強化 の Solaris Zones • が可能 – ゾーンにカーネルを持たせることでバージョンの固定が可能 • カーネル・クラッシュは – アプリケーション・バグによる影響も当該ゾーンにのみ影響 • を提供可能 – 全てのサービスがゾーン内で提供可能 • システム・メンテナンス時も – Suspend Resume による最⼩小限のダウンタイム – Live Migration は今後実装予定 38 Oracle Solaris 11.2
  • 39. Solaris Kerenl Zones Oracle Solaris 11.2 以降降でサポート • 物理理ホストの要件 – For SPARC • SPARC T4: System Firmware 8.5.0 以降降 • SPARC T5, M5, M6: System Firmware 9.2.0 以降降 – For x86 • ホスト BIOS/EFI での CPU 仮想化⽀支援機能の 有効化 – 最⼩小 8GB の物理理メモリ – ZFS ARC(Adaptive Replaecement Cache) の上限値チューニング • 搭載物理理メモリの半分程度度に抑える • その他 – brand/brand-solaris-kz パッケージ – サポートは virtinfo コマンドで確認 # virtinfo (SPARC T5-8 の例例) NAME CLASS logical-domain current non-global-zone supported kernel-zone supported ※デフォルトの Kernel Zones リソース リソースデフォルト値 CPU1 (virtual-cpu) Memory2GB (メモリがロックされるため⼤大域ゾーンの スワップへページングはされない) Storage16GB Networkexclusive のみ, Single NIC, Random MAC
  • 41. ゼロ・オーバーヘッド仮想化機能の更更なる強化 独⽴立立したカーネルをゾーンで利利⽤用可能に ー Solaris Kernel Zones Best-­‐of-­‐Breed Migra$on • ゾーンのサスペンド/レジューム(保存 停⽌止/再開)をサポート • ライブマイグレーション(※予定) • 制限の緩和 (CIFS サーバーなど) • Solaris N on Solaris N+ – Solaris 11.2 上で Solaris 11.3 や Solaris 12 などが動作 8 Oracle Confidential: Need to know Zone Zone u1 Zone u2 • New generation of Zones • Own version of kernel • Allows patching/upgrading of zones to different OS releases individually • Antfarm zones can be suspended/ resumed • Live Migration possible! • Admin/Config/Resource Management interfaces exactly similar to zones • One set of resource controls and policies for all Different update levels Zone Zone A System A System B Live Migration
  • 42. ゼロ・オーバーヘッド仮想化機能の更更なる強化 独⽴立立したカーネルをゾーンで利利⽤用可能に ー Solaris Kernel Zones • zoneadm suspend – kernel zones のみ – suspend resource property が設定されている必要あり • zonecfg –z KZ-Zones info suspend – supend されたメモリイメージは、圧縮され AES-128-CCM で暗号化。暗号化 キーは /dev/random から動的に⽣生成される – 圧縮された suspend イメージは割り当てられるメモリよりは少なくなるが、 メモリの使状況により変化 – suspend からの復復帰は、zoneadm boot コマンドで – suspend 状態の Zone を異異なるホストにマイグレーション可能 42
  • 43. ゼロ・オーバーヘッド仮想化機能の更更なる強化 kzhost プロセスと zvmm カーネル・モジュール • kzhost プロセス – kernel zone 毎に⽣生成されゲストに仮想 CPU を利利⽤用させるプロセス – I/O スレッドや各種管理理など – ゾーンに割り当てられるメモリ管理理 – Type 2 ハイパーバイザの役割 • zvmm (zone virtual machine monitor) 疑似ドライバ – ゲストの実⾏行行に切切り替える仮想 CPUスレッド の ioctl 管理理 – 仮想デバイスの拡張制御など • ゲストからのハイパーコールをホストへ • ホストからゲストへの割り込み – 仮想ハードウェアを再現する役割
  • 44. カーネルゾーン 仮想デバイスによる機能の実装 • zvblk – 全ての disk I/O • zvnet – ネットワーク • zvterm – コンソール, zlogins • zvsdir – 共有ファイルシステム (⾮非公開インターフェース) • zvcntrl – apic, bus, timers, management, etc… • これらが実装される OSでなければ kernel zones で動作しない (例例:Solaris 10 は動作しない) root@solaris-s12:~# prtconf -D System Configuration: Oracle Corporation i86pc Memory size: 2048 Megabytes System Peripherals (Software Nodes): i86pc (driver name: rootnex) scsi_vhci, instance #0 (driver name: scsi_vhci) zvnex, instance #0 (driver name: zvnex) zvcntrl, instance #0 (driver name: zvcntrl) zvterm, instance #0 (driver name: zvterm) zvblk, instance #0 (driver name: zvblk) zvnet, instance #0 (driver name: zvnet) zvsdir, instance #0 (driver name: zvsdir) fcoe, instance #0 (driver name: fcoe) iscsi, instance #0 (driver name: iscsi) options, instance #0 (driver name: options) pseudo, instance #0 (driver name: pseudo) vga_arbiter, instance #0 (driver name: vga_arbiter) xsvc, instance #0 (driver name: xsvc) cpus, instance #0 (driver name: cpunex) cpu (driver name: cpudrv)
  • 45. 仮想化によるパフォーマンスの影響なし SAS 社が評価 • 40 のテストが含まれる CPU/メモリおよび I/ O 集中型の標準 SAS テストを実施 • IO 構成は同⼀一 • 影響は最⼩小限かつ識識別可能であった 45 03:00 02:30 02:00 01:30 01:00 00:30 00:00 Time (hh:mm) Bare Metal Kernel Zone 䈜 SAS 9.4 hNp://www.oracle.com/technetwork/database/bi-­‐datawarehousing/sas/sas-­‐on-­‐sol11-­‐2-­‐kernelzones-­‐2195675.pdf
  • 46. ゼロ・オーバーヘッド仮想化機能の更更なる強化 Solaris Kernel Zones – まとめ • Native Zones で実現できないサービスを提供可能に – Solaris Zones の操作性および管理理性をそのままに、カーネル依存のサービス を提供可能 • ⼀一部、HW 機能および資源への依存が発⽣生するが、より⾼高い隔離離性 を実現 – CPU に実装される HWによる仮想化⽀支援機能 • 仮想化によるパフォーマンス低下を回避 – 2GB 以上の専⽤用物理理メモリ,ファイルシステムではなくボリューム(zvol, LUN) • suspend/resume や Live Migration (※予定) を実現可能に 46
  • 47. 47 Solaris 11.2 のアーカイブ/テンプレート機能 導⼊入の柔軟性を最⼤大化 – 䛹䛣䜈䛷䜒䚸䛹䛣䛛䜙䛷䜒
  • 48. アーカイブの種類 ⽤用途により 2 つのタイプを⽤用意 クローン・アーカイブ リカバリ・アーカイブ 独⽴立立したシステムのアーカイブ 対象は⼀一つのゾーンのみ(⼤大域ゾーンまたは⾮非⼤大域ゾーン) • ⼤大域ゾーンのアーカイブには、⾮非⼤大域ゾーンが必ず含まれる アクティブな BE のみが含まれる 全ての BE が含まれる ZFS データセットのクローンはプロモートされる ZFS データセットのクローンは関係を維持したまま 保存される システム構成は初期化される • ノード固有やインスタンス固有なデータは削除されるシステム構成は保存される 完全なクローンイメージを作成 • システムとデバイスの構成はソースに依存しない • システムログやイベントも初期化される デバイスの構成情報のみ初期化 48 • OVF (Open Virtualization Format) 準拠 • OVF に沿った仕様を採⽤用 • OVA (Open Virtualization Format Archive) ファイル形式での配布
  • 49. Native or Kernel Zones? 49
  • 50. NaUve or Kernel Zones? • アプリケーションの要件により選択 – 全てのアプリケーションは、ゾーンで 動作するようにするべき – Kernel Zones は、ゾーンであり、異異なる タイプのゾーン – 今後は、Native と Kernel Zone が組み合わ されたものが横並びで増えてゆく 50 NaUve Kernel Mobility Fixed Memory Independent Versions More IsolaUon Resource Sharing Zero Overhead IO Lightweight High ConsolidaUon
  • 51. Oracle Solaris Zones or OVM Server for SPARC? アプリケーション Oracle Solaris Zones OVM for SPARC § パーティションにより NUMA の影響を低減 § HA 構成 § Solaris Cluster による 制御ドメイン障害時の 回復復⼒力力 § Split PCI bus 構成 § ⾼高密度度の統合 § リソースの共有と粒粒度度 § ベアメタルと同等の I/O パフォーマンス § シンプルな管理理 § ⾼高い機動性 (detach/ attach) § レガシー OS のサポート § システムではなくアプリ ケーションの観点で仮想 化環境を選択 § ビルトインされたソ リューションを持つアプ リケーションもある (DB 12c PDB など) 51
  • 52. OVM for SPARC と Solaris Zones を組み合わせる • OVM for SPARC と Solaris Zone 機能のいいとこ取りを狙う • 例例えば、ゾーンをグループ化することで、 – リリースサイクルを管理理したり – メンテナンスウィンドウを制御 できたり – 部⾨門毎にワークロードを分けたり – 顧客毎に分けたり – 冗⻑⾧長化リージョンを構成したり – other … 52 Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 10 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone Solaris 11 Zone HR LDom Finance LDom Sales LDom ⾼高い統合効果に加え、機動性も確保した 環境を得る事が可能に
  • 53. OpenStack と Oracle Solaris Zones Solaris Zones をハイパーバイザーとしてサポート OpenStack Component Solaris Foundation Technology コンピュート仮想化 (Nova) 最初のコンピュートモデルとして Solaris Zones と Solaris Kernel Zones をサポート このサポートは、Nova のプラグインとして提供 ネットワーク仮想化 (Neutron) 仮想 NIC/VLAN は Crossbow ネットワーク仮想化機能、SDN は Elastic Virtual Switch にて構築 ストレージ仮想化 (Cinder) ZFS と COMSTAR の iSCSI サポートを Cinder プラグインとして提供 イメージをベースとしたデプロイ(Glance) Solaris 統合アーカイブ (Unified Archive) を利利⽤用し⾃自動インストーラ機能にて Zone の デプロイ 構成管理理 RAD (Remote Administrator Daemon) による OpenStack のためのプログラム・イン ターフェースを提供 OpenStack インフラストラクチャのライフサイ クル管理理とサービス OpenStack 各種サービスは Solaris SMF で管理理 OpenStack パッケージは Solaris 11 のパッケージシステムで提供 OpenStack パッケージを含んだ統合アーカイブも提供
  • 54. OpenStack の全機能を Solaris 11.2 でサポート Horizon Cloud Management Cloud APIs Nova Neutron Cinder Swift Glance サーバー仮想化 クラウドネットワーク クラウドストレージ イメージの展開 Oracle Solaris Zones Elastic Virtual Switch ZFS File System Unified Archives
  • 55. OpenStack mulU-­‐node on SPARC T5-­‐8 (with OVM for SPARC) Oracle ConfidenUal – 55
  • 56. OpenStack mulU-­‐node on SPARC T5-­‐8 (with OVM for SPARC) ᵓᡂ౛: 56 T5-­‐8 Control Domain Control-­‐node(Ldom) net0 net1 Compute-­‐node01(Ldom) net0 net1 Compute-­‐node02(Ldom) net0 net1 evs Ext_net 10.134.67.240/29 (VLAN200) Int_net 192.168.10.0/24(VLAN201) VP VP VP VP VP VP Zone 01 vnic Zone 03 vnic Zone 04 vnic Zone 02 vnic Zone 05 vnic Zone 06 vnic uplink port uplink port uplink port cinder Neutron horizon ZFS rpool ZFS rpool ZFS rpool nova nova nova Zone root Zone root Management Catalyst 4948 trunk trunk trunk Evs controller Evs node Evs node
  • 57. 57 create -b set brand=solaris-kz set autoboot=false set autoshutdown=shutdown set hostid=0x4ebe2024 add anet ← 䝛䝑䝖䝽䞊䜽ᵓᡂ set lower-link=auto set configure-allowed-address=true set link-protection=mac-nospoof set mac-address=auto set evs=switch01 ← ฼⏝䛩䜛௬᝿䝇䜲䝑䝏 set id=0 end add device ← ㉳ື䝕䜱䝇䜽ᵓᡂ set storage=dev:/dev/zvol/dsk/%{global-rootzpool}/VARSHARE/zones/%{zonename}/disk%{id} set bootpri=0 set id=0 end add capped-memory ← 䝯䝰䝸ᵓᡂ set physical=2G end add virtual-cpu ← CPU ᵓᡂ set ncpus=8 end add suspend ← suspend ᵓᡂ(䝯䝰䝸䜲䝯䞊䝆䛾㓄⨨ᵓᡂ) set path=/system/zones/%{zonename}/suspend end add keysource ← ᬯྕ໬㘽䛾ᵓᡂ (susend 䜲䝯䞊䝆⏝) set raw={base64}yRC4nwxXki2cw8YvesvYkw== end Kernel Zones の構成ファイル例例 䈜 iSCSI LUN 䜢฼⏝䛧䛯ሙྜ䛾౛ set storage=iscsi://192.168.100.201:3260/target.iqn.1986-­‐03.com.sun:02:413a759d-­‐6d29-­‐6147-­‐eddc-­‐c986e374e20b,lun.4
  • 58. 参考情報: 仮想化ソリューションの選択 Physical Domains + Oracle VM for SPARC or/and Solaris Kernel Zones or/and Solaris Zones OVM for SPARC + or/and Solaris Kernel Zones or/and Solaris Zones 最⾼高の可⽤用性が必要 できるだけ プラットフォームの デバイスアーキテクチャに 沿ってリソースを分けたい また、OS、バージョン、 パッチレベルを管理理したい Physical Domains (M6-‐‑‒32/M5-‐‑‒32) (CPU/メモリボード数依存) さらに環境を分けたい Oracle VM for SPARC (SPARC T4/T5/M5/M6) (H/Wスレッド数に依存) さらに環境を分けたい (H/Wスレッド数に⾮非依存) Solaris Zones Solaris Kernel さらに環境を分けたい とにかく環境を分けてリソースを管理理したい ( CPU/メモリボード数, H/Wスレッド数に⾮非依存) Solaris Zones (H/Wスレッド数に⾮非依存) Zones (SPARC T4/T5/M5/M6) (H/Wスレッド数/メモリ容量量に依存) とにかく OS、バージョン、パッチ レベルを管理理したい
  • 59. M6-‐‑‒32 ビッグメモリマシン 32ソケット384CPU コア3,072 スレッド テラバイトスケールのコンピューティング 59 32 テラバイトメモリ
  • 60. 参考情報 • Solaris Zones: Operating System Support for Consolidating Commercial Workloads – Daniel Price and Andrew Tucker – Sun Microsystems, Inc. – https://www.usenix.org/legacy/event/lisa04/tech/full_papers/price/price.pdf • Oracle Solaris 11.2 Information Library (英語) – http://docs.oracle.com/cd/E36784_01/index.html • Introduction to Oracle Solaris Zones (⽇日本語版はもう少しで公開) – http://docs.oracle.com/cd/E36784_01/html/E36848/index.html Oracle Confidential – 60
  • 61. 参考情報 Oracle Solaris 11.2 をすぐに試せる VM テンプレート • Oracle Solaris 11.2 VM Downloads http://www.oracle.com/technetwork/server-storage/solaris11/downloads/vm-templates-2245495.html – Oracle Solaris 11.1 VM for Oracle VM VirtualBox • VirtualBox にインポートするだけで Oracle Solaris 11.2 を試⽤用可能 • Oracle Solaris 10 VM Downloads http://www.oracle.com/technetwork/server-storage/solaris11/downloads/virtual-machines-1355605.html – Oracle Solaris 10 VM Template for Oracle VM VirtualBox • VirtualBox にインポートするだけで Oracle Solaris 10 1/13 を試⽤用可能 – Oracle VM Template for Oracle Solaris 10 Zones for SPARC/x86 • Oracle Solaris 10 Zones の構成情報テンプレート • Oracle Solaris 11.1 VM for Oracle VM VirtualBox と組み合わせることで、VirtulBox 上で Solaris 11.1 と Solaris 10 Zones の試⽤用環境を構築可能 • Solaris 11.2が動作する環境でも利利⽤用可能