피보탈 클라우드 파운드리 밋업 - 2017년 2월 24일

Preview:

Citation preview

© 2015 Pivotal Software, Inc. All rights reserved. 2

© 2015 Pivotal Software, Inc. All rights reserved. 3

© 2015 Pivotal Software, Inc. All rights reserved. 4

오늘날 우리는

5

10 million lines of code

6

10 million lines of code +

Web Application

Server

7

10 million lines of code

Web Application

Server+ + Container

8

9

Cloud Infrastructure

Virtual Machines

Operating Systems

Web Application Servers

WAR - Your applications

10

Cloud Infrastructure

Virtual Machines

Operating Systems

Web Application Servers

WAR - Your applications

Dependencies

11

Cloud Infrastructure

Virtual Machines

Operating Systems

Web Application Servers

WAR - Your applications

Class Path Process restart

System library

Kernel Drivers

Base template (Images)

network, etc

© 2015 Pivotal Software, Inc. All rights reserved. 12

그래서 우리는

13

Micro service codes +

embedded WAS

(fat JAR)+ container

orchestration

14

15

16

17

18

19

java -jar YOUR-APPLICATION.jar

20

Cloud Infrastructure

Virtual Machines

Operating Systems

Web Application Servers

WAR - Your applications

Class Path Process restart

System library

Kernel Drivers

Base template (Images)

network, etc

21

Cloud Infrastructure

Virtual Machines

Operating Systems

Web Application Servers

WAR - Your applications

Kernel Drivers

Base template (Images)

network, etc

22

Cloud Infrastructure

Virtual Machines

Operating SystemsKernel Drivers

Base template (Images)

network, etc

23

Cloud Infrastructure

Virtual Machines

Operating Systems

} Cloud FoundryPivotal

24

STAGING

.JAR

25

Operating Systems (Stemcell)

Env variables

Log aggregation/etc

STAGING

26

Operating Systems (Stemcell)

Env variables

Log aggregation/etc

STAGING

Containerization

27

Operating Systems (Stemcell)

Env variables

Log aggregation/etc

Immutable artifact

(Droplet)

28

Cloud Infrastructure

Operating Systems (Stemcell)

Env variables

Log aggregation/etc

Operating Systems (Stemcell)

Env variables

Log aggregation/etc

Deploy & Orchestration

Cloud Foundry?

“A platform that runs your application on the cloud.”with containers

© 2015 Pivotal Software, Inc. All rights reserved. 30

© 2015 Pivotal Software, Inc. All rights reserved. 31

BOSHmanifest.yml

CPI

© 2015 Pivotal Software, Inc. All rights reserved. 32

https://network.pivotal.io

© 2015 Pivotal Software, Inc. All rights reserved. 33

© 2015 Pivotal Software, Inc. All rights reserved. 34

© 2015 Pivotal Software, Inc. All rights reserved. 35

© 2015 Pivotal Software, Inc. All rights reserved. 36

© 2015 Pivotal Software, Inc. All rights reserved. 37

© 2015 Pivotal Software, Inc. All rights reserved. 38

AWS RDS for PostgreSQL AWS S3 AWS RDS for MySQL AWS RDS for Aurora AWS RDS for SQL Server AWS DynamoDB AWS RDS for Oracle AWS RDS for MariaDB AWS SQS

© 2015 Pivotal Software, Inc. All rights reserved. 39

Google Cloud Storage Google BigQuery Google PubSub Google CloudSQL Google Machine Learning APIs

© 2015 Pivotal Software, Inc. All rights reserved. 40

© 2015 Pivotal Software, Inc. All rights reserved. 41

© 2015 Pivotal Software, Inc. All rights reserved. 42

Azure Storage Azure Redis Cache Azure DocumentDB Azure Service Bus Azure Event Hubs Azure SQL Database

© 2015 Pivotal Software, Inc. All rights reserved. 43

$ cf create-service aws-dynamodb standard MYDYNAMODB $ cf bind-service MYAPP MYDYNAMODB

$ cf create-service azure-sqldb standard mysqldb $ cf bind-service MYAPP mysqldb

$ cf create-service google-cloudsql d4_standard mycloudsql $ cf bind-service MYAPP mycloudsql

© 2015 Pivotal Software, Inc. All rights reserved. 44

Service discovery

Config Server

MicroService A

MicroService B

Edge Service

MicroService C

MicroService D

© 2015 Pivotal Software, Inc. All rights reserved. 45

마이크로 서비스

© 2015 Pivotal Software, Inc. All rights reserved. 46

ps -ef | awk '{print $2}' | uniq | wc -l

© 2015 Pivotal Software, Inc. All rights reserved. 47

© 2015 Pivotal Software, Inc. All rights reserved. 48

with &Cloud

Data Flow Reactor

© 2015 Pivotal Software, Inc. All rights reserved. 49

https://dzone.com/articles/microservice-architecture-with-spring-cloud-and-do

© 2015 Pivotal Software, Inc. All rights reserved. 50

© 2015 Pivotal Software, Inc. All rights reserved. 51

© 2015 Pivotal Software, Inc. All rights reserved. 52

© 2015 Pivotal Software, Inc. All rights reserved. 53

© 2015 Pivotal Software, Inc. All rights reserved. 54

AWS RDS for PostgreSQL AWS S3 AWS RDS for MySQL AWS RDS for Aurora AWS RDS for SQL Server AWS DynamoDB AWS RDS for Oracle AWS RDS for MariaDB AWS SQS

Azure Storage Azure Redis Cache Azure DocumentDB Azure Service Bus Azure Event Hubs Azure SQL Database

Google Cloud Storage Google BigQuery Google PubSub Google CloudSQL Google Machine Learning APIs

MySQL PostgreSQL RabbitMQ Gemfire RiakCS Single Sign On DataStax

© 2015 Pivotal Software, Inc. All rights reserved. 55

quick DEMO

© 2015 Pivotal Software, Inc. All rights reserved. 56

© 2015 Pivotal Software, Inc. All rights reserved. 57

© 2015 Pivotal Software, Inc. All rights reserved. 58

Spring Cloud Eureka

© 2015 Pivotal Software, Inc. All rights reserved. 59

Spring Cloud Eureka

Boot App Hystrix

Boot App Hystrix

© 2015 Pivotal Software, Inc. All rights reserved. 60

Spring Cloud Eureka

Boot App Hystrix

Boot App Hystrix

register register

© 2015 Pivotal Software, Inc. All rights reserved. 61

Spring Cloud Eureka

Spring Cloud Zuul Proxy

Boot App Hystrix

Boot App Hystrix

register

© 2015 Pivotal Software, Inc. All rights reserved. 62

Spring Cloud Eureka

Spring Cloud Zuul Proxy

Boot App Hystrix

Boot App Hystrix

share share

© 2015 Pivotal Software, Inc. All rights reserved. 63

Spring Cloud Eureka

Spring Cloud Zuul Proxy

Boot App Hystrix

Boot App Hystrix

service traffic

service traffic

© 2015 Pivotal Software, Inc. All rights reserved. 64

Spring Cloud Eureka

Boot App Hystrix

Boot App Hystrix

register

© 2015 Pivotal Software, Inc. All rights reserved. 65

Spring Cloud Eureka

Boot App Hystrix

Boot App Hystrix

register

share

© 2015 Pivotal Software, Inc. All rights reserved. 66

Spring Cloud Eureka

Boot App - B Hystrix

request 1 Boot App

Hystrix

© 2015 Pivotal Software, Inc. All rights reserved. 67

Spring Cloud Eureka

Boot App - B Hystrix

request 2 Boot App

Hystrix

© 2015 Pivotal Software, Inc. All rights reserved. 68

© 2015 Pivotal Software, Inc. All rights reserved. 69

글로벌 Active - Active

© 2015 Pivotal Software, Inc. All rights reserved. 70

http://techblog.netflix.com/2016/03/global-cloud-active-active-and-beyond.html

© 2015 Pivotal Software, Inc. All rights reserved. 71

© 2015 Pivotal Software, Inc. All rights reserved. 72

Data replication Cassandra EVCache Personalization Data Handling Misrouted Traffic Evolving Chaos Kong

© 2015 Pivotal Software, Inc. All rights reserved. 73

© 2015 Pivotal Software, Inc. All rights reserved. 74

© 2015 Pivotal Software, Inc. All rights reserved. 75

© 2015 Pivotal Software, Inc. All rights reserved. 76

© 2015 Pivotal Software, Inc. All rights reserved. 77

© 2015 Pivotal Software, Inc. All rights reserved. 78

http://techblog.netflix.com/2014/11/introducing-dynomite.html

© 2015 Pivotal Software, Inc. All rights reserved. 79

https://github.com/Netflix/hollow

http://hollow.how/

© 2015 Pivotal Software, Inc. All rights reserved. 80

Cassandra (Thrift and CQL) Redis Dynomite with Redis Elasticsearch Elassandra

https://github.com/Netflix/ndbench

© 2015 Pivotal Software, Inc. All rights reserved. 81

http://techblog.netflix.com/2016_09_01_archive.html

© 2015 Pivotal Software, Inc. All rights reserved. 82

Performance improvement from RH5.10 to Ubuntu 14.04

© 2015 Pivotal Software, Inc. All rights reserved. 83

Summary• Light weight container structure

•Multi-cloud with Cloud Foundry

•Application level flexibility with Spring Cloud

•Data store options

•Reference how they did it