1. 程式人生 > >邱模炯:Container核心原理介紹

邱模炯:Container核心原理介紹

Container核心原理介紹,邱模炯 @ UCloud。

虛擬化技術:VM與Container

內容:
namespace
cgroup
aufs
兩者對比

namespace:程序組虛擬化的手段

nsproxy相當於執行環境

mnt ns提供私有的rootfs

pid ns對映後的pid空間

net ns提供獨立的網路棧

每一個ns
私有的網路裝置
lo, veth等虛裝置
物理網絡卡
獨立的協議棧
ipv4, ipv6(含IP地址和路由表)
tcp, sctp, dccp
iptables規則
ipvs等

其他ns

uts, ipc
user ns
C1的1001 id和C2的1001不是同一
主要處理uid, gid, capabilities的虛擬化
3.8版本提交;需要檔案系統配合,目前不完善
還有什麼namespace沒有實現?
time, device, security keys, security

namespace能做到什麼?

虛擬機器,但資源無保證
獨立的mnt (chroot)
獨立的pid空間
獨立的網路協議棧
uts
uid, gid
ipc

cgroup: 資源隔離和統計

cgroup: 記憶體子系統介面

cgroup: 記憶體子系統原理

cgroup: CPU子系統介面

cgroup: CPU子系統原理

cgroup: 其它子系統

namespace + cgroup能做到?

aufs overview 

aufs: 原理

aufs: 有待完善

Container VS VM: 核心是執行環境的一部分

Container VS VM:應用場景