28
GOOGLE CONTAINER ENGINE VS OPENSTACK MAGNUM OTSUKA, YUANYING/MOTOHIRO

GKE vs OpenStack Magnum

Embed Size (px)

Citation preview

Page 1: GKE vs OpenStack Magnum

GOOGLECONTAINER

ENGINEVS

OPENSTACK MAGNUM

OTSUKA, YUANYING/MOTOHIRO

Page 2: GKE vs OpenStack Magnum

自己紹介

OTSUKA, YUANYING▸ Twitter @yuanying

▸ OpenStack

▸ Magnum Core Reviewer

▸ Zun(Higgins) Core Reviewer

▸ NEC Solution Innovators

▸ OpenStack Community Team

Page 3: GKE vs OpenStack Magnum

WHAT IS OPENSTACK?

Page 4: GKE vs OpenStack Magnum

WHAT IS MAGNUM?

MAGNUM

Page 5: GKE vs OpenStack Magnum

$ gcloud container clusters -hUsage: gcloud container clusters [optional flags] <command> command may be create | delete | describe | get-credentials | list | resize | update | upgrade

Deploy and teardown Google Container Engine clusters.

commands: create Create a cluster for running containers. delete Delete an existing cluster for running containers. describe Describe an existing cluster for running containers. get-credentials Fetch credentials for a running cluster. list List existing clusters for running containers. resize Resizes an existing cluster for running containers. update Update cluster settings for an existing container cluster. upgrade Upgrade the Kubernetes version of an existing container cluster.

Page 6: GKE vs OpenStack Magnum

閑話休題

Page 7: GKE vs OpenStack Magnum

$ gcloud container clusters create help

Page 8: GKE vs OpenStack Magnum

$ gcloud container clusters create helpCreating cluster help...-

Page 9: GKE vs OpenStack Magnum

$ gcloud container clusters create helpCreating cluster help…-Created [https://container.googleapis.cokubeconfig entry generated for help.NAME ZONE MASTER_VERSIONhelp asia-east1-a 1.2.4

Page 10: GKE vs OpenStack Magnum

# Google Container Engine$ gcloud container clusters create -h

MAGNUM と GKE がどれだけ似ているのか?

Page 11: GKE vs OpenStack Magnum

HOW TO USE

1.CREATE BAYMODEL

2.CREATE BAY3.CONFIGURE KUBECTL

Hynek Moravec; modified by Generalpoteito - Wikimedia Commons, image under Creative Commons Attribution 2.5

Page 12: GKE vs OpenStack Magnum

BAY == CLUSTER

Adrian Otto

WHAT IS MAGNUM?

Page 13: GKE vs OpenStack Magnum

WHAT IS MAGNUM?

MAGNUM RESOURCES

BAYMODEL

BAY

NODE

BAY のテンプレート

KUBERNETES クラスター

クラスターを構成する ( 仮想 ) マシン

Page 14: GKE vs OpenStack Magnum

$

$ gcloud container clusters create k8s-cluster

Page 15: GKE vs OpenStack Magnum

$ magnum baymodel-create —name k8smodel \ —image-id fedora-atomic-latest \ —keypair-id default —external-network-id public \ —coe kubernetes$ magnum bay-create —name k8s-cluster —baymodel k8smodel

$ gcloud container clusters create k8s-cluster

Page 16: GKE vs OpenStack Magnum

$ magnum baymodel-create —name k8smodel \ —image-id fedora-atomic-latest \ —keypair-id default —external-network-id public \ —coe kubernetes$ magnum bay-create —name k8s-cluster —baymodel k8smodel

$ gcloud container clusters create k8s-cluster

Win!!

Page 17: GKE vs OpenStack Magnum

$ … ( 前略 ) …$ magnum bay-create —name k8s-cluster —baymodel k8smodel

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 18: GKE vs OpenStack Magnum

$ openssl genrsa -out client.key 4096

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 19: GKE vs OpenStack Magnum

$ cat > client.conf << END[req]distinguished_name = req_distinguished_namereq_extensions = req_extprompt = no[req_distinguished_name]CN = Your Name[req_ext]extendedKeyUsage = clientAuthEND

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 20: GKE vs OpenStack Magnum

$ openssl req -new -days 365 \ -config client.conf \ -key client.key \ -out client.csr

$ magnum ca-sign --bay k8s-cluster --csr client.csr > client.crt$ magnum ca-show --bay k8s-cluster > ca.crt

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 21: GKE vs OpenStack Magnum

$ kubectl config set-cluster k8sbay \ —server=${KUBERNETES_URL} \ --certificate-authority=$(pwd)/ca.crt$ kubectl config set-credentials client \ —certificate-authority=$(pwd)/ca.crt \ --client-key=$(pwd)/client.key \ —client-certificate=$(pwd)/client.crt$ kubectl config set-context k8sbay \ —cluster=k8sbay --user=client$ kubectl config use-context k8sbay

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 22: GKE vs OpenStack Magnum

$ … ( 前略 ) …$ magnum bay-create —name k8s-cluster —baymodel k8smodel $ … ( 中略 ) …$ kubectl create -f nginx.yml

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 23: GKE vs OpenStack Magnum

$ … ( 前略 ) …$ magnum bay-create —name k8s-cluster —baymodel k8smodel $ … ( 中略 ) …$ kubectl create -f nginx.yml

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

チョット面倒な手順があるけど、余計な部分を省けばトッテモ似てる!

Page 24: GKE vs OpenStack Magnum

$ … ( 前略 ) …$ magnum bay-create —name k8s-cluster —baymodel k8smodel $ … ( 中略 ) …$ kubectl create -f nginx.yml

$ gcloud container clusters create k8s-cluster$ kubectl create -f nginx.yml

Page 25: GKE vs OpenStack Magnum

Magnum GKE

ContainerOrchestration

KubernetesDocker Swarm

MesosKubernetes

Platform OpenStack GCP

Usability チョット悪い Magnum より良い

OSS Yes! Kubernetesありがとう

Page 26: GKE vs OpenStack Magnum

WHAT IS MAGNUM?

MAGNUM の今後▸ OpenStack 統合

▸ Keystone 連携▸ Kubernetes の認証▸ Keystone Trust

▸ Cinder 連携▸ Container Volume

▸ Neutron 連携▸ Container Network▸ LBaaS

Page 27: GKE vs OpenStack Magnum

WHAT IS MAGNUM?

MAGNUM の今後▸ ノードマネジメント

▸ gcloud container node-pools 相当機能▸ プロダクションでの利用

▸ Rackspace Carina / Docker Swarm▸ CERN / Kubernetes▸ NASA? / Mesos

Page 28: GKE vs OpenStack Magnum

THANKS!

Yuanying

OPENSTACK MAGNUM