SlideShare ist ein Scribd-Unternehmen logo
1 von 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

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (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)
 

Andere mochten auch

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

Ähnlich wie GKE vs OpenStack Magnum

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
 

Ähnlich wie 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
 

Kürzlich hochgeladen

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
panagenda
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - 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
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

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

Hinweis der Redaktion

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