containers and the future generations of clouds · docker bangkok meetup...

Post on 02-Jun-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Containersand

the Future Generations of Cloudsชาญวิทย แกวกสิ

หองปฏิบัติการไอยราคลัสเตอร

หองปฏิบัติการวิจัยไอยราคลัสเตอร● วิจัยและพัฒนาระบบคลัสเตอรประหยัดพลังงาน● คิดคนสถาปตยกรรมคลาวด เรียกวา

Cross-platform Hybrid Cloud(คลาวดเชิงผสมขามแพลตฟอรม)ARM + x86 และทําการ scale ระบบบน layer ของ Container

2

หองปฏิบัติการวิจัยไอยราคลัสเตอร● วิจัยและพัฒนาระบบคลัสเตอรประหยัดพลังงาน● รวมมือพัฒนาระบบจัดการคลัสเตอรสําหรับ Docker

ชื่อ Docker Swarm● Docker Swarm ถูกดาวนโหลดไปแลวกวา 20 ลานครั้ง● ใชสําหรับสรางคลัสเตอรโดยนักพัฒนาและบริษัททั่วโลก

3

Docker Swarm20+ Millions Installation

หองปฏิบัติการวิจัยไอยราคลัสเตอร● เลือกใชฮารดแวรประหยัดพลังงานมาทําคลัสเตอร● ขอจํากัดสูง ทําใหตอง optimize software หลายจุด● ARM CPU คือแนวโนมของ

○ Server-class Data Centre○ Internet of Things

4

คอนเทนเนอร ในตลาดนัด?

5

6

7

Software Container ?

8

Software Container ?● Solaris Zones● LXC - Linux Containers

● Docker ทําให Container ใชงายขึ้น (Commodity)

Container และ Docker

9

10

11

Tool that makes Container Commodity● ดีอยางไร?● Build - การสราง / ทําลาย Container ทําไดงายขึ้นมาก● Ship - การยาย Container ทําไดงาย เพราะใช Union File System เขามาชวย

○ AUFS○ DeviceMapper Thin Provision○ BTRFS○ Overlay File System

● Run - การสั่งรัน Container สะดวก○ $ docker run nginx

Containers เทียบกับ Virtual Machines

12

libcontainer - Overhead ตํ่า

13

libnetwork - vxlan - SDN

14

รูปแบบการ Deployment ระบบป 2000 เทียบป 2016

ป 2000 ป 2016

Deploy ไมบอย1 เดือนครั้ง, 3 เดือนครั้ง

Deploy วันละ 2 ครั้ง

Monolithic(ภาษาเดียว เฟรมเวิรคเดียว)

Microservices(หลายภาษา หลายเฟรมเวิรค,

เกาะกันหลวม ๆ)

Scaled Up(เครื่องใหญ เครื่องเดียว)

Scaled Out(หลายเครื่อง ขามคลาวด เชา/ผสม)

15

DevOps

16

DevOps

17

“ก็โปรแกรมมันเวิรคแลวในเครื่องผม”

18

Never change anything on the Server● ไม install package● ไม upgrade● ไม remove หรือ downgrade

○ พยายามที่จะไม patch แมแต security bug

● ไมแกไฟล config ● ไมแก code ของ app

○ แมแตการแก bug

19

Container Isolation - เริ่มที่ Dev

20

Container “ใน Cloud” หรือ “บน Cloud”

21

โปรแกรมใน Container ควรจะขามคลาวดได

22

Provision เครื่องดวย Docker Machine

ความสามารถในการยายโปรแกรม ขามคลาวด

23

ความสามารถในการยายโปรแกรม ขามคลาวด / รันไทมProvider Portability

Runtime Portability

24

Open Container Initiative● โครงการใน Linux Foundation● “File Format” คือสิ่งที่เจงที่สุดของ Docker● เทียบเปน .PDF หรือ .MP3

25

Cloud Native Computing Foundation

26

แลวฝง Microsoft หละ?

27

28

Microsoft และ Containers

29

30

31

32

Image Pull 1.2 พันลานครั้งในปที่ผานมา Docker ทําใหการปรับใช เทคโนโลยี Container โตขึ้นอยางตอเนื่อง จนกระทั่งจํานวนการ pull image ตอนนี้ทะลุ 1.2 พันลานครั้งไปแลว

33

แนวโนมการปรับใช Container ในเมืองไทย● 2 ใน 4 ของบริษัท Telecom กําลังปรับใช Docker

○ คาดวาจะขึ้น Production ภายใน 6-9 เดือน● บริษัท Content Provider, E-Commerce ใช Docker กันแพรหลายแลว

○ สวนใหญเปน stand-alone○ กําลังเตรียมขยายเปน cluster

34

แนวโนมการปรับใช Container ในเมืองไทย● มีบริษัทที่กําลังเตรียม Hybrid Cloud ดวย Docker แบบมี Software-Defined Network

ใชจริงภายใน 3 เดือนนี้● มีบริษัทในไทยที่พัฒนาระบบ auto-scale สําหรับ Docker Cluster แลว

● Docker Bangkok Meetup ครั้งแรกของป 2016มีนักพัฒนาเขาฟงกวา 250 คน

35

Dev (Developers) - เตรียม container และวิธี deploy

36

Ops (Operations) - เตรียม pool ที่ใหญพอ

37

Ops (Operations) - เตรียม pool ที่ใหญพอ

38

คอนเทนเนอร ทําให คลาวดเปลี่ยนแปลงอยางไร?

39

คอนเทนเนอร ทําให คลาวดเปลี่ยนแปลงอยางไร?● Portability

○ Cloud Portibility / Runtime Portiability

● Multi-Thousand Node Cluster○ คลัสเตอรขนาดใหญแบบ multi-tenant คือความทาทาย

● Container ในโลกของ Internet of Things○ ทรัพยากรจํากัด○ อัพเดตซอฟตแวรงายขึ้น

● นิยามใหมของ Package: Unit of Deployment○ Cloud Provision + Application Composition

○ เมื่อ Network เร็วพอ + ม ีLocal Data Center แลวการ Deploy แบบใหมจะ Commodity

● Software Defined Network ○ ลงไปอยูระดับ Application / ระดับการ Deploy

40

คอนเทนเนอร ทําให คลาวดเปลี่ยนแปลงอยางไร?● Software Defined Network

ลงไปอยูระดับ Application / ระดับการ Deploy

41

Docker Multi-Host SDN

42

คอนเทนเนอร ทําให คลาวดเปลี่ยนแปลงอยางไร?● นิยามใหมของ Package: Unit of Deployment

○ Cloud Provision + Application Composition○ เมื่อ Network เร็วพอ + ม ีLocal Data Center แลวการ Deploy แบบใหมจะ Commodity

43

Package Managementอะไรจะเปน Package ในโลกของ Container และ Cloud Native?

44

apt-get / rpm จัดการ Package บนเครื่อง

45

ถามอง Data Center เปน “เครื่อง”

46

มอง Data Center เปน “เครื่อง”● Project Atomic App: Redhat● HelmPack: Dies / EngineYard● และ dpm - The Package Manager for Docker: SUT / Docker

47

48

ขอบคุณครับ

49

top related