Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Masaya Aoyama
?
Kubernetes Meetup #9 @CyberAgent は KubeCon + CNCon 2017 North America Austin の Recap スペシャルということで、「Deploying to Kubernetes Thousands of Times Per Day」 についてお話させていただきました。
High Velocity の重要性と、CI/CD Pipeline を作るときに注意するべきポイントを話した上で、CodeFresh について紹介しました。
This is the presentation which was showed at Microsoft Tier1 event de:code 2019. In this presentation, I showed that there is a lot of option for Java Developer to use the Microsoft Azure.
This presentation was used for Japan Container Days 2018.
I explained the important point to use the k8s on Production environment for Japanese Audience.
This is the explanation of Azure Spring Cloud.
In the explanation, I showed the demo of Azure Spring Cloud.
You can see my demo on following URL.
https://youtu.be/lxvTPMkqeo4
Service Mesh for Enterprises / Cloud Native Days Tokyo 2019Motonori Shindo
?
Cloud Native Days Tokyo 2019での講演資料です。
アプリケーションのマイクロサービス化が一般的になってくるにつれて、セキュリティ、オブザーバビリティなど、課題も徐々に明らかになってきており、そのような課題を解決する技術として「サービスメッシュ」が注目を集めています。本セッションではデファクトのサービスメッシュ実装であるIstioをベースにしたNSX Service Mesh(NSX-SM))がいかに今日のエンタープライズが抱える課題を解決することができるかについて解説を行います。
This is the presentation which was showed at Microsoft Tier1 event de:code 2019. In this presentation, I showed that there is a lot of option for Java Developer to use the Microsoft Azure.
This presentation was used for Japan Container Days 2018.
I explained the important point to use the k8s on Production environment for Japanese Audience.
This is the explanation of Azure Spring Cloud.
In the explanation, I showed the demo of Azure Spring Cloud.
You can see my demo on following URL.
https://youtu.be/lxvTPMkqeo4
Service Mesh for Enterprises / Cloud Native Days Tokyo 2019Motonori Shindo
?
Cloud Native Days Tokyo 2019での講演資料です。
アプリケーションのマイクロサービス化が一般的になってくるにつれて、セキュリティ、オブザーバビリティなど、課題も徐々に明らかになってきており、そのような課題を解決する技術として「サービスメッシュ」が注目を集めています。本セッションではデファクトのサービスメッシュ実装であるIstioをベースにしたNSX Service Mesh(NSX-SM))がいかに今日のエンタープライズが抱える課題を解決することができるかについて解説を行います。
Cluster API によるKubernetes環境のライフサイクル管理とマルチクラウド環境での適用Motonori Shindo
?
Cluster API は Kubernetes の宣言的APIとリソースの管理機能を活かし、Kubernetes環境のライフサイクル管理を行うもので、Kubernetesコミュニティで仕様の策定と開発が進められています。
これまでもKubernetes環境の構築を支援するツールはいくつかありましたが、Cluster APIはコミュニティからの大きな支持を得ており、Cluster APIのエコシステムが広がりつつあります。
本セッションでは Cluster API の概要と最新の動向、また、Cluster APIを利用した大規模マルチクラウド環境への適用などをデモを交えながら解説を行います。
本資料はCloud Operator Days Tokyo 2020登壇時の資料です。
Japan Developer Summit (jp) - Cloud Foundry, the Open Platform As A ServicePatrick Chanezon
?
This talk will provide an overview of the PaaS (Platform as a Service) landscape, and will describe the Cloud Foundry open source PaaS, with its multi-framework, multi-service, multi-cloud model.
Cloud Foundry allows developers to provision apps in Java/Spring, Ruby/Rails, Ruby/Sinatra, Javascript/Node, and leverage services like MySQL, MongoDB, Reddis, Postgres and RabbitMQ.
It can be used as a public PaaS on CloudFoundry.com and other service providers (ActiveState, AppFog), to create your own private cloud, or on your laptop using the Micro Cloud Foundry VM.
I will describe the Cloud Foundry architecture, and talk about the open source development process for Cloud Foundry.
4. ?2019 VMware, Inc. 4
Kubernetes Cluster
Node Node Node
Control Plane
従来アプリ
VM
データベース
VM
VM
VM
アプリケーションはより複雑に…
My Application
サーバレス
Function 1 Function 2
5. ?2019 VMware, Inc. 5
Kubernetes Cluster
Node Node Node
Control Plane
従来アプリ
VM
データベース
VM
VM
VM
サーバレス
Function 1 Function 2
アプリケーションはより複雑に…
My Application
開発者 IT 運?担当
どうやってアプリを
デプロイすれば
いいの?
Day 2 運?って
どこ?ればいいの?
どんなツールが
使えるの?
アプリケーションの
可?性って…?
セキュリティ的に
?丈夫なんだっけ?
QoS 設定しづらい…
アプリ沢?動いてて
コストが解らない…
6. ?2019 VMware, Inc. 6
vSphere
開発と運?をつなぐプラットフォームを提供
デプロイの簡単さと管理の容易さを両?
Workloads
運?担当 開発者
Collaboration
DeployManage
Workloads
Workloads
Performance
Security
Availability
Cost
Diagnostics
Code
Test
Deploy
Support
7. ?2019 VMware, Inc. 7
Kubernetes Cluster
Node Node Node
Control Plane
従来アプリ
VM
データベース
VM
VM
VM
サーバレス
Function 1 Function 2
全てのワークロードを Kubernetes で管理
My Application
kind: KubernetesCluster
apiVersion: vks.vmware.com/v1
metadata:
name: My Application
spec:
topology:
workers:
count: 3
class: small
distribution: v1.14.1
kind: Pod
apiVersion: v1
metadata:
name: Function 1
spec:
containers:
- name: func1
image: func1
ports:
- containerPort: 80
kind: VirtualMachine
apiVersion: vms.vmware.com/v1
metadata:
name: LegacyApp
spec:
className: large
imageName: my-app.ova
powerState: poweredOn
policy:
restartPolicy: OnFailure
kind: HanaDatabase
apiVersion: hana.sap.com/v1
metadata:
name: ERP database
spec:
nodes: 3
class: extra-large
8. ?2019 VMware, Inc. 8
Namespace
Kubernetes Cluster
Node Node Node
Control Plane
Legacy App
VM
Database
VM
VM
VM
Serverless
Function 1 Function 2
ネームスペースを管理の 1 単位として使?
My Application
セキュリティ
? パーシステントデータの暗号化
? 443 以外のポートを遮断
? 監査ログの取得
可?性
? FTT: 2重化
? DR サイト: us-east
? 1時間おきにスナップショット
アクセス制御
? app-admin グループ: 書き込み可能
? Ops グループ: 読み込み専?
? MySQL 機能使?不可
QoS
? 優先度: High
? vCPU 予約: 128
? メモリ予約: 1 TB
9. ?2019 VMware, Inc. 9
Building the Workload Platform
SDDC
Supervisor Cluster Supervisor Cluster
Namespace Namespace
Pod
VM
Pod
VM
Pod
VM
Pod Pod
Pod
VM
Pod
10. ?2019 VMware, Inc. 10
Workload Platform Architecture
Namespace
Managed K8 Cluster
NamespaceNamespace
Pod
VM
Pod
VM
VM VM VM VMVM
SDDC
Supervisor Cluster Supervisor Cluster
Namespace Namespace
Pod
VM
Pod
VM
Pod
VM
Pod
VM
Pod
VM
Pod
VM
Pod
VM
VM
Operator
VM
Operator
Kubernetes
Operator
Managed
K8
Operator
Kubernetes
Operator
Managed
K8
Operator
Pod
VM
VM
Cluster API Cluster
MachineDeployment
MachineMachineMachineMachineMachine
VM VM VM VM VM
Pod
Namespace
Pod
Namespace
VMPod
VM
11. ?2019 VMware, Inc. 11
SQL
SQL Database
Building the Application Platform
VM VMVM VM
Namespace
Managed K8 Cluster
NamespaceNamespace
Pod
VM
Pod
VM
VM
SDDC
Namespace Namespace
Pod
VM
Pod
VM
Pod
VM
Pod
VM
Pod
VM
Pod
VM
Pod
VM
VM
Operator
VM
Operator
Kubernetes
Operator
Managed
K8
Operator
Kubernetes
Operator
Managed
K8
Operator
Pod
VM
VM
Cluster API Cluster
MachineDeployment
MachineMachineMachineMachineMachine
VM VM VM VM VM
Pod
Namespace
Pod
Namespace
Pod VM
VM
SQL
Database
Object
Store
Columnar
Database
SQL
Database
Object
Store
Columnar
Database
SQL
12. ?2019 VMware, Inc. 12
ESXI
サーバレスポッド アーキテクチャ
Container
Image
Pod
Container
1
Container
2
Container Engine
Serverless Pod Agent
Spherelet
hostd
Container
Image
Ephemeral
Disk
Container
Image
Persistent
Volume
vNIC
Image Service
NSX vSwitch
NSX Kube
Proxy
CSI
Image Registry VPXD
ESXi
Master
Kubectl
サーバレスポッドを新しく vSphere の
トップレベルオブジェクトとして管理可能
Kubelet の再実装版 ”Spherelet” を組み込み
? Spherelet がマスターノードと連携して
Podのスペック/更新情報を監視
? Hostd がPodをインスタンスとして
設定管理
? NSX Kube Proxy がポッドのネットワー
ク割り当てを実施
Docker-likeなイメージキャッシュを Image
Service が提供
Libcontainer をコンテナランタイムとして使?
Pods with VM Isolation and Performance
Linux Kernel
13. ?2019 VMware, Inc.
ESXi1
Master Node
PodVM Provisioning
Spherelet
VCSA
wcpsvcDRS CNS
Hostd
Image
Service
NSX Host
Agent
K8s
Scheduler
Scheduler
Extension
Kubernetes
Lifecycle Manager
Kubectl Apply –f pod-spec.yaml
API Master
PodSpec
Serverless
Node:ESXi1
Photon Kernel
PodSpec Submitted to API Server Thru Load BalancerK8 Scheduler Filters Nodes and DRS Selects actual NodeK8s Lifecycle Manager creates VM and returns VMid to APIMasterSpherelet Can Now Configure The PodSpherelet Calls NSX Agent for Network Identity and vNic ConfigContainer Images Requested From Image Service. Hostd Creates VMDKsGuest OS And Pod Configured. Containers Started
VMid: 3882009bdx4