sitcon 2016 - arm cloud project
TRANSCRIPT
請勿拍打,歡迎餵⻝!請勿使⽤閃光燈,會嚇到講者
ARM Cloud Project伊達@SITCON
–伊達
「⼈⽣有很多不該做的事」
–伊達
「其中⼀項就是告訴 jserv 你有⼀個計劃」
About me
• 伊達 @tjjh89017!
• 毫無回應就只是個⼤學⽣!
• 想要我的肝嗎?我把我的肝都放在 jserv 那裡了
為什麼
• 有 x86 VPS ,為什麼沒有 ARM VPS!
• 有 x86 VPS ,為什麼需要 ARM VPS
其實
• 其實有 ARM VPS ,法國公司 Scaleway 有提供!
• 其實不需要 ARM VPS 就可以提供 ARM 相關開發
但是
• 但是法國到台灣的網路延遲太⻑!
• 但是模擬器跟真實 CPU 還是有相當的差距
所以
• 在台灣建置 ARM VPS!
• 提供 Native ARM 開發與執⾏環境
為各位隆重介紹
DozenCloud Project
• 伊達雲計劃!
• 在地化,為鄉親服務!
• 開源軟體製成,可安⼼⻝⽤!
• http://dozencloud.org
其實⼀開始 jserv ,對這專案也沒啥興趣!
直到膝蓋中了⼀箭
組成
ARM!Openstack!Docker
ARM
• 精簡指令集(別於 x86 複雜指令集)!
• 低成本!
• 低耗能!
• 廣泛運⽤於⾏動裝置以及嵌⼊式裝置!
• 甚⾄於伺服器市場也可以⾒其存在
48 cores
48 cores
Openstack• 資源管理!
• 快速部署!
• 快速規模擴展(Scale Up or Out)!
• ⾼可⽤性(HA)!
• 軟體定義網路(SDN)
http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html
http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html
Physical Machine
http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html
VM
http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html
Docker
• 核⼼容器技術前端(Container Front-end)!
• 輕量級!
• 簡單建⽴映像檔!
• 寫時複製(Copy-on-Write)
Emulation
Hardware
Host OS
EmulatorProgram Program
Guest OS Guest OS
Program Program
Virtual Hardware
Hypervisor
Hardware
Host OS
HypervisorProgram Program
Guest OS Guest OS
Program Program
Container
Hardware
OS
Program Program Program Program
Container Container
「低消耗的 ARM !
彈性資源管理的 Openstack!
容器技術的 Docker」
「⼀切都相當美好,對吧。」
「代誌不是憨⼈想的那麼簡單」
ARM Sucks
• 硬體碎⽚化(Fragmentation)!
• Linux 核⼼⽀援倚賴廠商⽀援
更別提某公司推出 ARMv8 伺服器!
提供⼀個功能不全的 Ubuntu 檔案
沒有 iptables 的 Linux 能⽤嗎?(怒)!
(╬゚ ◣ ゚)
總之,因為 Linux 核⼼功能不全!
⼩弟我與交⼤某不知名學弟!
就開始了編譯 Linux 核⼼的旅程
無限的 Kernel Panic 跟 ARM Exception
Openstack Sucks
• 複雜的網路架構!
• 效能消耗!
• 沒有⻑期⽀援版本
http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html
Docker Sucks
• 開發⺫的不同,不適合 VPS 使⽤!
• 使⽤上並沒有跟⼀般 VM 相同
其實 Docker ⺫的
• 快速部署專案元件!
• 固定軟體版本號!
• ⽅便建⽴開發及測試環境!
• 程序間隔離
並不是拿來當 VPS ⽤的
⼀般來說
• 你會⽤!
• servicesshstart
• systemctlstartssh
但是
• Docker 不能這樣搞!
• 你只能!
• /usr/bin/sshd-D
• 某些情況下就沒辦法執⾏其他程式
雖然
• 還是有些⽅法可以讓你⽤ systemd ,但是很⿇煩!
• e.g.systemd-nspawn
DozenCloud
• x86 Server!
• Banana Pi M2
Compute Node
Controller & NAS
–伊達
「別擔⼼,我⼀定會做好做滿」
Before Demo
說個⼩故事!
為什麼說千萬不要跟 jserv 說有個計劃呢?
這樣你可能會在⼩年夜被 jserv 問家裡地址!
然後⼤年初⼀就收到裝著 3 張 rpi 和⼀本書的包裹
DEMO
Q&A
Ref• http://s3.amazonaws.com/digitaltrends-uploads-prod/2015/01/ARM-Chip.jpg!
• https://www.raspberrypi.org/wp-content/uploads/2015/01/Pi2ModB1GB_-comp.jpeg!
• http://1.bp.blogspot.com/-79KWtVxyJDY/VD1Pdk42kII/AAAAAAAA7b0/QHBgZbpJgNQ/s1600/nexus%2B5.jpg!
• https://upload.wikimedia.org/wikipedia/commons/thumb/8/80/The_OpenStack_logo.svg/2000px-The_OpenStack_logo.svg.png!
• http://26a0ff8ca8ba32139f7d-db711c577a50b6bdc946ea71aaca027d.r97.cf1.rackcdn.com/openstack-logical-arch-folsom.jpg!
• http://26a0ff8ca8ba32139f7d-db711c577a50b6bdc946ea71aaca027d.r97.cf1.rackcdn.com/openstack-conceptual-arch-folsom.jpg!
• https://simonopitz.me/content/images/2015/12/docker-wallpaper-grey.jpg!
• docs.openstack.org/openstack-ops/content/network_troubleshooting.html!
• https://s3.amazonaws.com/media-p.slid.es/uploads/310204/images/1289427/docker-unionfs.png