[d2 community] open container seoul meetup - kubernetes를 이용한 서비스 구축과 openshift

20
k8s / OpenShift / GKE Junho Lee [email protected]

Upload: naver-d2

Post on 07-Jan-2017

689 views

Category:

Engineering


4 download

TRANSCRIPT

Page 1: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s / OpenShift / GKEJunho Lee

[email protected]

Page 2: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

Who am I?

● Infomation

– Junho Lee ( 이준호 ) / [email protected]

– Solutions Architect

– Google Cloud Platform Qualified Developer

● Career

– UBC/BCIT NASP (2011 ~ 2012)

– Post-secondary Teaching Assistant - University of British Columbia Continuing Studies (UBC CS) (2013 ~ 2014)

– Solutions Architect – Rockplace Inc. (2014 ~ )

Page 3: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

Solutions Architect?

[1] http://kubernetes.io/docs/whatisk8s/[2] https://research.google.com/pubs/pub43438.html

Page 4: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

What is k8s?

● k8s = Kubernetes

● Open Source Container Cluster Manager originally designed by Google

● Based on Google’s production workloads

● public / private / hybrid / multi-cloud

[1] http://kubernetes.io/docs/whatisk8s/[2] https://research.google.com/pubs/pub43438.html

Page 5: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s will help you to..

● Deploy your applications quickly and predictably

● Scale your applications on the fly

● Seamlessly roll out new features

● Optimize use of your hardware by using only the resources you need

[1] http://kubernetes.io/docs/whatisk8s

Page 6: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s Architecture

[1] https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/architecture.md

● The Kubernetes Node

– kubelet

– kube-proxy

● The Kubernetes Control Plane

– etcd

– Kubernetes API Server

– Scheduler

– Kubernetes Controller Manager Server

Page 7: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
Page 8: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s will NOT help you to..

[1] http://kubernetes.io/docs/whatisk8s/

“Kubernetes is not a traditional, all-inclusive PaaS (Platform as a Service) system”

● No click-to-deploy service marketplace

● No source-to-image space

● No logging, monitoring, and alerting systems

● No Technical Support

Page 9: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

What is OpenShift?

● Red Hat PaaS Platform using k8s

● “OpenShift is Enterprise-Ready Kubernetes”

● OpenShift

– Origin

– Container Platform

– Online / Dedicated

[1] https://blog.openshift.com/enterprise-ready-kubernetes/

Page 10: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

OpenShift will help you to..

[1] https://docs.openshift.com/container-platform/3.3/architecture/index.html

OpenShift = k8s + α

● Source code management, builds, and deployments for developers

● Managing and promoting images at scale as they flow through your system

● Application management at scale

● Team and user tracking for organizing a large developer organization

● Professional Technical Support from Red Hat

– Security Updates, Certified Docker Image Hub

Page 11: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

OpenShift Components

[1] https://www.openshift.com/container-platform/ - A in-depth technical look at OpenShift Enterprise 3.1

Page 12: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

OpenShift Architecture

[1] https://docs.openshift.com/container-platform/3.3/architecture/index.html

Page 13: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

What is GKE?

● GKE = Google Container Engine

● Google PaaS Service using k8s on Google Cloud Platform(GCP)

● “One-click Kubernetes clusters, managed by Google”

[1] https://cloud.google.com/container-engine/

Page 14: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

GKE will help you to..

[1] https://cloud.google.com/container-engine/

“Google Container Engine = k8s + α on Cloud”

● Automated Container Management

– Google Cloud Container Builder (Source to Image)

– Cloud Source Repositories (Private Git Repositories)

– Container Registry (Private Docker Image Registry)

● Set Up a Cluster in Minutes

– gcloud container clusters create NAME --zone ZONE● Declarative Management

● Flexible & Interoperable

– Public / Hybrid / Multi Cloud

– Multi-Zone Clusters

● Professional Technical Support from Google

Page 15: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

GKE Architecture

UserGoogle

Compute EngineLoad Balancer

Compute EngineLoad Balancer

Compute EngineFirewall Rules

StackdriverMonitoring

StackdriverLogging

Compute EngineHealth Check

Compute EngineDisk

Container EngineContainer Registry

Page 16: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

UserGoogle

Compute EngineLoad Balancer

Compute EngineLoad Balancer

Compute EngineFirewall Rules

StackdriverMonitoring

StackdriverLogging

Compute EngineHealth Check

Compute EngineDisk

Container EngineContainer Registry

Page 17: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s / OpenShift / GKE

[1] https://commons.wikimedia.org/wiki/GNOME_Desktop_icons

Page 18: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s / OpenShift / GKE Comparison (1)

Environment App Store Click to deploy

App Gallery Yes

Installation Cost

Operation Cost

Out-of-box experience

Source to Image

k8s(on-premise)

public / on-premise / hybrid /

multi-cloud

OpenShift(on-premise)

public / on-premise / hybrid /

multi-cloud

S2I (Source To Image)

GKE(public)

public / hybrid / multi-cloud

Google Cloud Container

Builder

Page 19: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

k8s / OpenShift / GKE Comparison (2)

CI / CD Logging Monitoring Alerting

EF(Fluentd)K

Image Registry

Version Control Service

Technical Support

k8s(on-premise)

Self / Community

OpenShift(on-premise)

Jenkins Plugin  Included

Image Registry

Cockpit, Heapster, Hawkular

Cockpit, Heapster, Hawkular

Self / Community

Red Hat(* With

Subscription)

GKE(public)

Jenkins Plugin  Included

Container Registry

Cloud Source Repositories

StackDriver Logging

StackDriver Monitoring

StackDriver Monitoring

Self / Community

Google(* With

Support Plan)

Page 20: [D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift

OpenShift Demo