sitcon 2016 - arm cloud project

74
請勿拍打,歡迎餵⻝ 請勿使⽤閃光燈,會嚇到講者

Upload: -

Post on 13-Apr-2017

253 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: SITCON 2016 - ARM Cloud Project

請勿拍打,歡迎餵⻝!請勿使⽤閃光燈,會嚇到講者

Page 2: SITCON 2016 - ARM Cloud Project

ARM Cloud Project伊達@SITCON

Page 3: SITCON 2016 - ARM Cloud Project
Page 4: SITCON 2016 - ARM Cloud Project

–伊達

「⼈⽣有很多不該做的事」

Page 5: SITCON 2016 - ARM Cloud Project

–伊達

「其中⼀項就是告訴 jserv 你有⼀個計劃」

Page 6: SITCON 2016 - ARM Cloud Project

About me

• 伊達 @tjjh89017!

• 毫無回應就只是個⼤學⽣!

• 想要我的肝嗎?我把我的肝都放在 jserv 那裡了

Page 7: SITCON 2016 - ARM Cloud Project
Page 8: SITCON 2016 - ARM Cloud Project
Page 9: SITCON 2016 - ARM Cloud Project

為什麼

• 有 x86 VPS ,為什麼沒有 ARM VPS!

• 有 x86 VPS ,為什麼需要 ARM VPS

Page 10: SITCON 2016 - ARM Cloud Project

其實

• 其實有 ARM VPS ,法國公司 Scaleway 有提供!

• 其實不需要 ARM VPS 就可以提供 ARM 相關開發

Page 11: SITCON 2016 - ARM Cloud Project

但是

• 但是法國到台灣的網路延遲太⻑!

• 但是模擬器跟真實 CPU 還是有相當的差距

Page 12: SITCON 2016 - ARM Cloud Project

所以

• 在台灣建置 ARM VPS!

• 提供 Native ARM 開發與執⾏環境

Page 13: SITCON 2016 - ARM Cloud Project

為各位隆重介紹

Page 14: SITCON 2016 - ARM Cloud Project
Page 15: SITCON 2016 - ARM Cloud Project

DozenCloud Project

• 伊達雲計劃!

• 在地化,為鄉親服務!

• 開源軟體製成,可安⼼⻝⽤!

• http://dozencloud.org

Page 16: SITCON 2016 - ARM Cloud Project

其實⼀開始 jserv ,對這專案也沒啥興趣!

直到膝蓋中了⼀箭

Page 17: SITCON 2016 - ARM Cloud Project

組成

ARM!Openstack!Docker

Page 18: SITCON 2016 - ARM Cloud Project
Page 19: SITCON 2016 - ARM Cloud Project

ARM

• 精簡指令集(別於 x86 複雜指令集)!

• 低成本!

• 低耗能!

• 廣泛運⽤於⾏動裝置以及嵌⼊式裝置!

• 甚⾄於伺服器市場也可以⾒其存在

Page 20: SITCON 2016 - ARM Cloud Project
Page 21: SITCON 2016 - ARM Cloud Project
Page 22: SITCON 2016 - ARM Cloud Project
Page 23: SITCON 2016 - ARM Cloud Project

48 cores

48 cores

Page 24: SITCON 2016 - ARM Cloud Project
Page 25: SITCON 2016 - ARM Cloud Project

Openstack• 資源管理!

• 快速部署!

• 快速規模擴展(Scale Up or Out)!

• ⾼可⽤性(HA)!

• 軟體定義網路(SDN)

Page 26: SITCON 2016 - ARM Cloud Project
Page 27: SITCON 2016 - ARM Cloud Project
Page 28: SITCON 2016 - ARM Cloud Project
Page 29: SITCON 2016 - ARM Cloud Project

http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html

Page 30: SITCON 2016 - ARM Cloud Project

http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html

Physical Machine

Page 31: SITCON 2016 - ARM Cloud Project

http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html

VM

Page 32: SITCON 2016 - ARM Cloud Project

http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html

Page 33: SITCON 2016 - ARM Cloud Project
Page 34: SITCON 2016 - ARM Cloud Project

Docker

• 核⼼容器技術前端(Container Front-end)!

• 輕量級!

• 簡單建⽴映像檔!

• 寫時複製(Copy-on-Write)

Page 35: SITCON 2016 - ARM Cloud Project

Emulation

Hardware

Host OS

EmulatorProgram Program

Guest OS Guest OS

Program Program

Virtual Hardware

Page 36: SITCON 2016 - ARM Cloud Project

Hypervisor

Hardware

Host OS

HypervisorProgram Program

Guest OS Guest OS

Program Program

Page 37: SITCON 2016 - ARM Cloud Project

Container

Hardware

OS

Program Program Program Program

Container Container

Page 38: SITCON 2016 - ARM Cloud Project
Page 39: SITCON 2016 - ARM Cloud Project

「低消耗的 ARM !

彈性資源管理的 Openstack!

容器技術的 Docker」

Page 40: SITCON 2016 - ARM Cloud Project

「⼀切都相當美好,對吧。」

Page 41: SITCON 2016 - ARM Cloud Project
Page 42: SITCON 2016 - ARM Cloud Project

「代誌不是憨⼈想的那麼簡單」

Page 43: SITCON 2016 - ARM Cloud Project
Page 44: SITCON 2016 - ARM Cloud Project

ARM Sucks

• 硬體碎⽚化(Fragmentation)!

• Linux 核⼼⽀援倚賴廠商⽀援

Page 45: SITCON 2016 - ARM Cloud Project

更別提某公司推出 ARMv8 伺服器!

提供⼀個功能不全的 Ubuntu 檔案

Page 46: SITCON 2016 - ARM Cloud Project

沒有 iptables 的 Linux 能⽤嗎?(怒)!

(╬゚ ◣ ゚)

Page 47: SITCON 2016 - ARM Cloud Project

總之,因為 Linux 核⼼功能不全!

⼩弟我與交⼤某不知名學弟!

就開始了編譯 Linux 核⼼的旅程

Page 48: SITCON 2016 - ARM Cloud Project

無限的 Kernel Panic 跟 ARM Exception

Page 49: SITCON 2016 - ARM Cloud Project
Page 50: SITCON 2016 - ARM Cloud Project

Openstack Sucks

• 複雜的網路架構!

• 效能消耗!

• 沒有⻑期⽀援版本

Page 51: SITCON 2016 - ARM Cloud Project

http://docs.openstack.org/openstack-ops/content/network_troubleshooting.html

Page 52: SITCON 2016 - ARM Cloud Project
Page 53: SITCON 2016 - ARM Cloud Project
Page 54: SITCON 2016 - ARM Cloud Project
Page 55: SITCON 2016 - ARM Cloud Project

Docker Sucks

• 開發⺫的不同,不適合 VPS 使⽤!

• 使⽤上並沒有跟⼀般 VM 相同

Page 56: SITCON 2016 - ARM Cloud Project

其實 Docker ⺫的

• 快速部署專案元件!

• 固定軟體版本號!

• ⽅便建⽴開發及測試環境!

• 程序間隔離

Page 57: SITCON 2016 - ARM Cloud Project

並不是拿來當 VPS ⽤的

Page 58: SITCON 2016 - ARM Cloud Project

⼀般來說

• 你會⽤!

• servicesshstart

• systemctlstartssh

Page 59: SITCON 2016 - ARM Cloud Project

但是

• Docker 不能這樣搞!

• 你只能!

• /usr/bin/sshd-D

• 某些情況下就沒辦法執⾏其他程式

Page 60: SITCON 2016 - ARM Cloud Project

雖然

• 還是有些⽅法可以讓你⽤ systemd ,但是很⿇煩!

• e.g.systemd-nspawn

Page 61: SITCON 2016 - ARM Cloud Project
Page 62: SITCON 2016 - ARM Cloud Project

DozenCloud

• x86 Server!

• Banana Pi M2

Page 63: SITCON 2016 - ARM Cloud Project
Page 64: SITCON 2016 - ARM Cloud Project
Page 65: SITCON 2016 - ARM Cloud Project
Page 66: SITCON 2016 - ARM Cloud Project

Compute Node

Page 67: SITCON 2016 - ARM Cloud Project

Controller & NAS

Page 68: SITCON 2016 - ARM Cloud Project

–伊達

「別擔⼼,我⼀定會做好做滿」

Page 69: SITCON 2016 - ARM Cloud Project

Before Demo

Page 70: SITCON 2016 - ARM Cloud Project

說個⼩故事!

為什麼說千萬不要跟 jserv 說有個計劃呢?

Page 71: SITCON 2016 - ARM Cloud Project

這樣你可能會在⼩年夜被 jserv 問家裡地址!

然後⼤年初⼀就收到裝著 3 張 rpi 和⼀本書的包裹

Page 72: SITCON 2016 - ARM Cloud Project

DEMO

Page 73: SITCON 2016 - ARM Cloud Project

Q&A

Page 74: SITCON 2016 - ARM Cloud Project

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