SlideShare a Scribd company logo
1 of 28
GOOGLE
CONTAINER
ENGINE
VS
OPENSTACKOTSUKA, YUANYING/MOTOHIRO
自己紹介
OTSUKA, YUANYING
▸ Twitter @yuanying
▸ OpenStack
▸ Magnum Core Reviewer
▸ Zun(Higgins) Core Reviewer
▸ NEC Solution Innovators
▸ OpenStack Community Team
WHAT IS
WHAT IS
MAGNUM
$ gcloud container clusters -h
Usage: 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.
閑話休題
$ gcloud container clusters create help
$ gcloud container clusters create help
Creating cluster help...-
$ gcloud container clusters create help
Creating cluster help…-
Created [https://container.googleapis.co
kubeconfig entry generated for help.
NAME ZONE MASTER_VERSION
help asia-east1-a 1.2.4
# Google Container Engine
$ gcloud container clusters create -h
MAGNUM と GKE がどれだけ似ているのか?
HOW
TO USE
1.CREATE
BAYMODEL
2.CREATE BAY
3.CONFIGURE
KUBECTL
Hynek Moravec; modified by Generalpoteito - Wikimedia Commons, image under Creative Commons Attribution 2.5
BAY == CLUSTER
Adrian Otto
WHAT IS MAGNUM?
WHAT IS MAGNUM?
MAGNUM RESOURCES
BAYMODEL
BAY
NODE
BAY のテンプレート
KUBERNETES クラスター
クラスターを構成する(仮想)マシ
ン
$
$ gcloud container clusters create k8s-cluster
$ 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
$ 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!!
$ … (前略) …
$ magnum bay-create —name k8s-cluster —baymodel k8smodel
$ gcloud container clusters create k8s-cluster
$ kubectl create -f nginx.yml
$ openssl genrsa -out client.key 4096
$ gcloud container clusters create k8s-cluster
$ kubectl create -f nginx.yml
$ cat > client.conf << END
[req]
distinguished_name = req_distinguished_name
req_extensions = req_ext
prompt = no
[req_distinguished_name]
CN = Your Name
[req_ext]
extendedKeyUsage = clientAuth
END
$ gcloud container clusters create k8s-cluster
$ kubectl create -f nginx.yml
$ 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
$ 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
$ … (前略) …
$ magnum bay-create —name k8s-cluster —baymodel k8smodel
$ … (中略) …
$ kubectl create -f nginx.yml
$ gcloud container clusters create k8s-cluster
$ kubectl create -f nginx.yml
$ … (前略) …
$ magnum bay-create —name k8s-cluster —baymodel k8smodel
$ … (中略) …
$ kubectl create -f nginx.yml
$ gcloud container clusters create k8s-cluster
$ kubectl create -f nginx.yml
チョット面倒な手順があるけど、
余計な部分を省けばトッテモ似てる!
$ … (前略) …
$ magnum bay-create —name k8s-cluster —baymodel k8smodel
$ … (中略) …
$ kubectl create -f nginx.yml
$ gcloud container clusters create k8s-cluster
$ kubectl create -f nginx.yml
Magnum GKE
Container
Orchestration
Kubernetes
Docker Swarm
Mesos
Kubernetes
Platform OpenStack GCP
Usability チョット悪い Magnum より良い
OSS Yes!
Kubernetes
ありがとう
WHAT IS MAGNUM?
MAGNUM の今後
▸OpenStack 統合
▸Keystone 連携
▸Kubernetesの認証
▸Keystone Trust
▸Cinder 連携
▸Container Volume
▸Neutron 連携
▸Container Network
▸LBaaS
WHAT IS MAGNUM?
MAGNUM の今後
▸ノードマネジメント
▸gcloud container node-pools 相当機能
▸プロダクションでの利用
▸Rackspace Carina / Docker Swarm
▸CERN / Kubernetes
▸NASA? / Mesos
THANKS!
Yuanying
OPENSTACK MAGNUM

More Related Content

What's hot

DevOps in AWS with Kubernetes
DevOps in AWS with KubernetesDevOps in AWS with Kubernetes
DevOps in AWS with KubernetesOleg Chunikhin
 
Kubernetes Hands-On Guide
Kubernetes Hands-On GuideKubernetes Hands-On Guide
Kubernetes Hands-On GuideStratoscale
 
Orchestrating Docker with OpenStack
Orchestrating Docker with OpenStackOrchestrating Docker with OpenStack
Orchestrating Docker with OpenStackErica Windisch
 
Openstack Magnum: Container-as-a-Service
Openstack Magnum: Container-as-a-ServiceOpenstack Magnum: Container-as-a-Service
Openstack Magnum: Container-as-a-ServiceChhavi Agarwal
 
Immutable kubernetes architecture by linuxkit
Immutable kubernetes architecture by linuxkitImmutable kubernetes architecture by linuxkit
Immutable kubernetes architecture by linuxkit어형 이
 
Cluster Networking with Docker
Cluster Networking with DockerCluster Networking with Docker
Cluster Networking with DockerStefan Schimanski
 
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architectureOpenStack Korea Community
 
Integration kubernetes with docker private registry
Integration kubernetes with docker private registryIntegration kubernetes with docker private registry
Integration kubernetes with docker private registryHungWei Chiu
 
Kubernetes for Java developers
Kubernetes for Java developersKubernetes for Java developers
Kubernetes for Java developersRobert Barr
 
Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopSathish VJ
 
Monitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMonitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMartin Etmajer
 
Docker 進階實務班
Docker 進階實務班Docker 進階實務班
Docker 進階實務班Philip Zheng
 
Kubernetes architecture
Kubernetes architectureKubernetes architecture
Kubernetes architectureJanakiram MSV
 
Kubernetes Basic Operation
Kubernetes Basic OperationKubernetes Basic Operation
Kubernetes Basic OperationSimon Su
 
OpenStack Magnum
OpenStack MagnumOpenStack Magnum
OpenStack MagnumAdrian Otto
 
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Mario Ishara Fernando
 
Kubelet with no Kubernetes Masters | DevNation Tech Talk
Kubelet with no Kubernetes Masters | DevNation Tech TalkKubelet with no Kubernetes Masters | DevNation Tech Talk
Kubelet with no Kubernetes Masters | DevNation Tech TalkRed Hat Developers
 
Learn kubernetes in 90 minutes
Learn kubernetes in 90 minutesLearn kubernetes in 90 minutes
Learn kubernetes in 90 minutesLarry Cai
 
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupKubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupStefan Schimanski
 
Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)lestrrat
 

What's hot (20)

DevOps in AWS with Kubernetes
DevOps in AWS with KubernetesDevOps in AWS with Kubernetes
DevOps in AWS with Kubernetes
 
Kubernetes Hands-On Guide
Kubernetes Hands-On GuideKubernetes Hands-On Guide
Kubernetes Hands-On Guide
 
Orchestrating Docker with OpenStack
Orchestrating Docker with OpenStackOrchestrating Docker with OpenStack
Orchestrating Docker with OpenStack
 
Openstack Magnum: Container-as-a-Service
Openstack Magnum: Container-as-a-ServiceOpenstack Magnum: Container-as-a-Service
Openstack Magnum: Container-as-a-Service
 
Immutable kubernetes architecture by linuxkit
Immutable kubernetes architecture by linuxkitImmutable kubernetes architecture by linuxkit
Immutable kubernetes architecture by linuxkit
 
Cluster Networking with Docker
Cluster Networking with DockerCluster Networking with Docker
Cluster Networking with Docker
 
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
 
Integration kubernetes with docker private registry
Integration kubernetes with docker private registryIntegration kubernetes with docker private registry
Integration kubernetes with docker private registry
 
Kubernetes for Java developers
Kubernetes for Java developersKubernetes for Java developers
Kubernetes for Java developers
 
Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshop
 
Monitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMonitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on Kubernetes
 
Docker 進階實務班
Docker 進階實務班Docker 進階實務班
Docker 進階實務班
 
Kubernetes architecture
Kubernetes architectureKubernetes architecture
Kubernetes architecture
 
Kubernetes Basic Operation
Kubernetes Basic OperationKubernetes Basic Operation
Kubernetes Basic Operation
 
OpenStack Magnum
OpenStack MagnumOpenStack Magnum
OpenStack Magnum
 
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
 
Kubelet with no Kubernetes Masters | DevNation Tech Talk
Kubelet with no Kubernetes Masters | DevNation Tech TalkKubelet with no Kubernetes Masters | DevNation Tech Talk
Kubelet with no Kubernetes Masters | DevNation Tech Talk
 
Learn kubernetes in 90 minutes
Learn kubernetes in 90 minutesLearn kubernetes in 90 minutes
Learn kubernetes in 90 minutes
 
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupKubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
 
Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)Kubernetes in 30 minutes (2017/03/10)
Kubernetes in 30 minutes (2017/03/10)
 

Viewers also liked

DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきかDevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきかEtsuji Nakai
 
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
Exploring the Philosophy behind Docker/Kubernetes/OpenShiftExploring the Philosophy behind Docker/Kubernetes/OpenShift
Exploring the Philosophy behind Docker/Kubernetes/OpenShiftEtsuji Nakai
 
kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用Koichi HARUNA
 
ZabbixでDockerも監視
ZabbixでDockerも監視 ZabbixでDockerも監視
ZabbixでDockerも監視 Atsushi Tanaka
 
アプリケーションエンジニアがMackerelで楽しく監視構成している事例
アプリケーションエンジニアがMackerelで楽しく監視構成している事例アプリケーションエンジニアがMackerelで楽しく監視構成している事例
アプリケーションエンジニアがMackerelで楽しく監視構成している事例景子 西岡
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Works Applications
 

Viewers also liked (6)

DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきかDevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきか
 
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
Exploring the Philosophy behind Docker/Kubernetes/OpenShiftExploring the Philosophy behind Docker/Kubernetes/OpenShift
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
 
kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用
 
ZabbixでDockerも監視
ZabbixでDockerも監視 ZabbixでDockerも監視
ZabbixでDockerも監視
 
アプリケーションエンジニアがMackerelで楽しく監視構成している事例
アプリケーションエンジニアがMackerelで楽しく監視構成している事例アプリケーションエンジニアがMackerelで楽しく監視構成している事例
アプリケーションエンジニアがMackerelで楽しく監視構成している事例
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)
 

Similar to GKE vs OpenStack Magnum

Bdc from bare metal to k8s
Bdc   from bare metal to k8sBdc   from bare metal to k8s
Bdc from bare metal to k8sChris Adkin
 
Get started with Kubernetes on GKE
Get started with Kubernetes on GKEGet started with Kubernetes on GKE
Get started with Kubernetes on GKEZachary Russell
 
Kubernetes meetup 102
Kubernetes meetup 102Kubernetes meetup 102
Kubernetes meetup 102Jakir Patel
 
Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila
 
Ci/CD - Stop wasting time, Automate your deployments
Ci/CD  - Stop wasting time, Automate your deploymentsCi/CD  - Stop wasting time, Automate your deployments
Ci/CD - Stop wasting time, Automate your deploymentsJerry Jalava
 
Pro2516 10 things about oracle and k8s.pptx-final
Pro2516   10 things about oracle and k8s.pptx-finalPro2516   10 things about oracle and k8s.pptx-final
Pro2516 10 things about oracle and k8s.pptx-finalMichel Schildmeijer
 
Things I've learned working with Docker Support
Things I've learned working with Docker SupportThings I've learned working with Docker Support
Things I've learned working with Docker SupportSujay Pillai
 
Multinode kubernetes-cluster
Multinode kubernetes-clusterMultinode kubernetes-cluster
Multinode kubernetes-clusterRam Nath
 
Kubeflow on google kubernetes engine
Kubeflow on google kubernetes engineKubeflow on google kubernetes engine
Kubeflow on google kubernetes engineBear Su
 
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS SummitAutomatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS SummitAmazon Web Services
 
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes WorkloadsAWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes WorkloadsAWS Summits
 
Micro-datacenter chaos monkeys!
Micro-datacenter chaos monkeys! Micro-datacenter chaos monkeys!
Micro-datacenter chaos monkeys! stevesloka
 
How to grant permission to your Kubernetes cluster for another users. - Stan...
 How to grant permission to your Kubernetes cluster for another users. - Stan... How to grant permission to your Kubernetes cluster for another users. - Stan...
How to grant permission to your Kubernetes cluster for another users. - Stan...Kuberton
 
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...Tenchi Security
 
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...Alexandre Sieira
 
kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...
kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...
kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...ssuser92b4be
 
Kubernetes - Using Persistent Disks with WordPress and MySQL
Kubernetes - Using Persistent Disks with WordPress and MySQLKubernetes - Using Persistent Disks with WordPress and MySQL
Kubernetes - Using Persistent Disks with WordPress and MySQLpratik rathod
 
From Kubernetes to OpenStack in Sydney
From Kubernetes to OpenStack in SydneyFrom Kubernetes to OpenStack in Sydney
From Kubernetes to OpenStack in SydneySK Telecom
 

Similar to GKE vs OpenStack Magnum (20)

Bdc from bare metal to k8s
Bdc   from bare metal to k8sBdc   from bare metal to k8s
Bdc from bare metal to k8s
 
Get started with Kubernetes on GKE
Get started with Kubernetes on GKEGet started with Kubernetes on GKE
Get started with Kubernetes on GKE
 
Kubernetes meetup 102
Kubernetes meetup 102Kubernetes meetup 102
Kubernetes meetup 102
 
Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)
 
Ci/CD - Stop wasting time, Automate your deployments
Ci/CD  - Stop wasting time, Automate your deploymentsCi/CD  - Stop wasting time, Automate your deployments
Ci/CD - Stop wasting time, Automate your deployments
 
Pro2516 10 things about oracle and k8s.pptx-final
Pro2516   10 things about oracle and k8s.pptx-finalPro2516   10 things about oracle and k8s.pptx-final
Pro2516 10 things about oracle and k8s.pptx-final
 
Things I've learned working with Docker Support
Things I've learned working with Docker SupportThings I've learned working with Docker Support
Things I've learned working with Docker Support
 
Multinode kubernetes-cluster
Multinode kubernetes-clusterMultinode kubernetes-cluster
Multinode kubernetes-cluster
 
CKA_1st.pptx
CKA_1st.pptxCKA_1st.pptx
CKA_1st.pptx
 
Kubeflow on google kubernetes engine
Kubeflow on google kubernetes engineKubeflow on google kubernetes engine
Kubeflow on google kubernetes engine
 
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS SummitAutomatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
 
Introduction to Kalabox
Introduction to KalaboxIntroduction to Kalabox
Introduction to Kalabox
 
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes WorkloadsAWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
 
Micro-datacenter chaos monkeys!
Micro-datacenter chaos monkeys! Micro-datacenter chaos monkeys!
Micro-datacenter chaos monkeys!
 
How to grant permission to your Kubernetes cluster for another users. - Stan...
 How to grant permission to your Kubernetes cluster for another users. - Stan... How to grant permission to your Kubernetes cluster for another users. - Stan...
How to grant permission to your Kubernetes cluster for another users. - Stan...
 
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
 
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
Shopping for Vulnerabilities - How Cloud Service Provider Marketplaces can He...
 
kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...
kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...
kubeadm Cluster Creation Internals_ From Self-Hosting to Upgradability and HA...
 
Kubernetes - Using Persistent Disks with WordPress and MySQL
Kubernetes - Using Persistent Disks with WordPress and MySQLKubernetes - Using Persistent Disks with WordPress and MySQL
Kubernetes - Using Persistent Disks with WordPress and MySQL
 
From Kubernetes to OpenStack in Sydney
From Kubernetes to OpenStack in SydneyFrom Kubernetes to OpenStack in Sydney
From Kubernetes to OpenStack in Sydney
 

Recently uploaded

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 

Recently uploaded (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

GKE vs OpenStack Magnum

  • 2. 自己紹介 OTSUKA, YUANYING ▸ Twitter @yuanying ▸ OpenStack ▸ Magnum Core Reviewer ▸ Zun(Higgins) Core Reviewer ▸ NEC Solution Innovators ▸ OpenStack Community Team
  • 5. $ gcloud container clusters -h Usage: 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.
  • 7. $ gcloud container clusters create help
  • 8. $ gcloud container clusters create help Creating cluster help...-
  • 9. $ gcloud container clusters create help Creating cluster help…- Created [https://container.googleapis.co kubeconfig entry generated for help. NAME ZONE MASTER_VERSION help asia-east1-a 1.2.4
  • 10. # Google Container Engine $ gcloud container clusters create -h MAGNUM と GKE がどれだけ似ているのか?
  • 11. HOW TO USE 1.CREATE BAYMODEL 2.CREATE BAY 3.CONFIGURE KUBECTL Hynek Moravec; modified by Generalpoteito - Wikimedia Commons, image under Creative Commons Attribution 2.5
  • 12. BAY == CLUSTER Adrian Otto WHAT IS MAGNUM?
  • 13. WHAT IS MAGNUM? MAGNUM RESOURCES BAYMODEL BAY NODE BAY のテンプレート KUBERNETES クラスター クラスターを構成する(仮想)マシ ン
  • 14. $ $ gcloud container clusters create k8s-cluster
  • 15. $ 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
  • 16. $ 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!!
  • 17. $ … (前略) … $ magnum bay-create —name k8s-cluster —baymodel k8smodel $ gcloud container clusters create k8s-cluster $ kubectl create -f nginx.yml
  • 18. $ openssl genrsa -out client.key 4096 $ gcloud container clusters create k8s-cluster $ kubectl create -f nginx.yml
  • 19. $ cat > client.conf << END [req] distinguished_name = req_distinguished_name req_extensions = req_ext prompt = no [req_distinguished_name] CN = Your Name [req_ext] extendedKeyUsage = clientAuth END $ gcloud container clusters create k8s-cluster $ kubectl create -f nginx.yml
  • 20. $ 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
  • 21. $ 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
  • 22. $ … (前略) … $ magnum bay-create —name k8s-cluster —baymodel k8smodel $ … (中略) … $ kubectl create -f nginx.yml $ gcloud container clusters create k8s-cluster $ kubectl create -f nginx.yml
  • 23. $ … (前略) … $ magnum bay-create —name k8s-cluster —baymodel k8smodel $ … (中略) … $ kubectl create -f nginx.yml $ gcloud container clusters create k8s-cluster $ kubectl create -f nginx.yml チョット面倒な手順があるけど、 余計な部分を省けばトッテモ似てる!
  • 24. $ … (前略) … $ magnum bay-create —name k8s-cluster —baymodel k8smodel $ … (中略) … $ kubectl create -f nginx.yml $ gcloud container clusters create k8s-cluster $ kubectl create -f nginx.yml
  • 25. Magnum GKE Container Orchestration Kubernetes Docker Swarm Mesos Kubernetes Platform OpenStack GCP Usability チョット悪い Magnum より良い OSS Yes! Kubernetes ありがとう
  • 26. WHAT IS MAGNUM? MAGNUM の今後 ▸OpenStack 統合 ▸Keystone 連携 ▸Kubernetesの認証 ▸Keystone Trust ▸Cinder 連携 ▸Container Volume ▸Neutron 連携 ▸Container Network ▸LBaaS
  • 27. WHAT IS MAGNUM? MAGNUM の今後 ▸ノードマネジメント ▸gcloud container node-pools 相当機能 ▸プロダクションでの利用 ▸Rackspace Carina / Docker Swarm ▸CERN / Kubernetes ▸NASA? / Mesos

Editor's Notes

  1. なんとなく、と云うタイトルにしてみましたが 煽ってるつもりはない。 戦ったら負けそうだし。 というか、どっちサイドで物をしゃべっているかというと、
  2. OpenStack の Magnum と云うコンポーネントと、Zun と云うコンポーネントで、コアレビューアと云う肩書きで活動しています。この Magnum と云うコンポーネントに残っているコアレビューアの中では 3番目に古いコントリビュータです。 で、こういう活動をどうして行っているかというと、NEC の OpenStack コミュニティチームというところで、NEC からの OpenStack への貢献を目的として行っています。
  3. そもそも自分は OpenStack の知名度をよくわかってなくて、、、 エンタープライズ色が強そうなので、興味ない人は知らない気がしてならないのですが、 OpenStack は IaaS を構築するためのミドルウェアで、オープンソースソフトウェアです。 一言で言うと、Amazon の AWS や Google Cloud Platform の OSS 版です。
  4. それじゃあ、Magnum は何か?っていうと、OpenStack は Computing や Networking, Storage などの幾つかのコンポーネントから成り立っているソフトウェアなのですが、その OpenStack 上で Kubernetes や Docker Swarm などのクラスターを構築、管理するためのコンポーネントです。
  5. 早い話が、OpenStack における gcloud コマンドの container clusters サブコマンド相当を担当するコンポーネントです。
  6. cluster 作るとお金かかるんで、なんかのネタにしてやろうとこのLTに入れました。
  7. まあ、それはそれとして、「gcloud コマンドの container clusters サブコマンド相当を担当するコンポーネントです」と言いましたが、Magnum がそれじゃあどれだけ Google Container Engine と似ているのか?というのを比較して、GKE と Magnum を勝負させてみようかと思います。 あ、念のため先に言っておきますが、クラスターを作る速度とか、なんちゃらのスループットとかを見るつもりはないです。
  8. で、そもそも Magnum をどう使うか、の軽い説明をすると、 1、2、3。という流れになります。 いや、けどそもそも Bay ってなんだ?
  9. Magnum の Founder の Adrian Otto っていう人が多分命名した言葉で、ぶっちゃけ Kubernetes や Docker Swarm のクラスターのことです。多分 Pod を格納することから来たのかと。
  10. Magnum は Kubernetes のクラスターを管理するために三つのリソースを定義してます。一つ目が Baymodel、これは Bay のテンプレートで、同じ設定の Bay をいくつも作るときに便利。主に開発時にしか使わないですが…。そして、Bay これは Kubernetes のクラスターとほぼ同一。そして Node、これはクラスターを構成する仮想マシンです。
  11. そうすると、gcloud container clusters create コマンド相当のことを Magnum でやろうとすると、、、
  12. Baymodel を定義して、Bay を作成、という流れになります。gcloud の場合はほぼ設定がデフォルトで動くのに対して、Magnum の方は幾つか必須のパラメータがありますね…。 しかもコマンドを2回も叩かなければならない。
  13. では、クラスターが作成されたので実際に kubectl を使って Pod を作成してみましょう。GKE の場合は、すでに自動的に認証情報や、どのクラスターを操作するのかなどの情報が設定されているので、そのまま、使うだけですね。 じゃあ、Magnum ではどうかというと…。
  14. クライアント認証に使う x509 のキーペアを自分で作成しなくちゃいけません…。 まず、秘密鍵を作って、、、
  15. CSR を作成するためのコンフィグを作って…、
  16. CSR を作成、Magnum に証明書を要求します。
  17. キーペアを作成したらどの認証情報を使ってどのクラスターに接続するのかを設定します…。
  18. 要約すると、、、
  19. まあ、勝敗は、、どっちが勝ったとか、どうでもいいですよね、実際!