SlideShare uma empresa Scribd logo
1 de 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

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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)
 

Destaque

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
 

Destaque (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にまつわるエトセトラ(主に苦労話)
 

Semelhante a 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
 

Semelhante a 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
 

Último

The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 

Último (20)

The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 

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

Notas do Editor

  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. まあ、勝敗は、、どっちが勝ったとか、どうでもいいですよね、実際!