Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
An Introduction to Kubernetes
Search
Kyle Bai
November 04, 2016
Technology
0
33
An Introduction to Kubernetes
Kyle Bai
November 04, 2016
Tweet
Share
More Decks by Kyle Bai
See All by Kyle Bai
讓 Jenkins 老爺爺掌舵帶領開發者航向美好新世界
kairen
1
160
AWS Startup 2020 - AMIS
kairen
0
40
學習 Kubernetes 不是為了成為 YAML Engineer
kairen
0
250
How to make your container:Kubernetes is a bit more secure
kairen
0
140
Vishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes(AWS))
kairen
0
67
Vishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
kairen
0
54
Chatbot as a Service on Container(Kubernetes)
kairen
0
820
IT IRONMAN 2020
kairen
0
54
Advanced Kubernetes For UMC
kairen
0
110
Other Decks in Technology
See All in Technology
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
180
Platform Engineering for Software Developers and Architects
syntasso
1
520
AI前提のサービス運用ってなんだろう?
ryuichi1208
8
1.4k
Zennのパフォーマンスモニタリングでやっていること
ryosukeigarashi
0
130
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
180
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.2k
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
860
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
390
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
110
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Code Review Best Practice
trishagee
64
17k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
What's in a price? How to price your products and services
michaelherold
243
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Building Adaptive Systems
keathley
38
2.3k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Scaling GitHub
holman
458
140k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Transcript
An Introduction to Kubernetes
Agenda • 容器興盛的開始 • 微服務架構的成形 • 什什麼是 Kubernetes? • Kubernetes
Quick Start • Kubernetes 使⽤用案例例
Kubernetes 是 Google 於 2015 年年開源的專案, 這原先僅是內部專案 Borg ⼀一環,但各⼤大雲端供 應商與⼤大廠卻紛紛投入開發,引起了了話題。
到底是什什麼原因讓 Kubernetes 爆紅?
容器興盛的開始 那些年年的 LXC 在 2013 年年與 Docker 產⽣生了了新火花.
什什麼是容器(Container)?
Container 就如同其翻譯成『貨櫃』⼀一樣,是可以將⼤大量量貨物進⾏行行封 裝成⼀一櫃,來來提供更更⽅方便便的遷移、搬運與管理理。Container 就是利利⽤用 以上特性來來對軟體執⾏行行環境進⾏行行封裝並執⾏行行。
常⾒見見的虛擬化技術
三者差異異-全虛擬化(Full Virtualization) • 全虛擬化(Full Virtualization)是透過軟體來來模擬虛擬的硬體環境,所有硬 體資訊的溝通,都需要透過轉換的⽅方式來來運作,因此 Guest OS 不知道⾃自 ⼰己活在虛擬環境下。
• 優點:不需要修改作業系統核⼼心,因此可運作⼤大部分的作業系統種類。 • 缺點:透過⼆二進位轉譯會消耗較多的硬體資源。 • ex: Virtual PC 、VMWare、Virtual Box、KVM
三者差異異-半虛擬化(Para-Virtualization) • 半虛擬化(Para-Virtualization)簡單說就是指模擬⼀一半,因此 Guest OS 知 道⾃自⼰己是被模擬的環境,並且要遵守很多指令來來進⾏行行執⾏行行,但好處是 Host OS 不需要模擬
CPU,因此負荷低。 • 優點:此⽅方式虛擬化對於硬體資源消耗相對較少。 • 缺點:因為必須修改作業系統核⼼心,因此可於半虛擬化平台上運作的作業 系統種類較少。 • ex: Xen
三者差異異-作業系統層虛擬化(OS-Virtualization) • 作業系統層虛擬化(OS-Virtualization)只在 Host OS 上模擬⼀一個⾏行行程,所有的 CPU/RAM/IO 等資源,都共⽤用原⽣生的 Host OS,完全沒有模擬Hardware
的負 擔,所以跟在原機上執⾏行行的效能,幾乎⼀一樣,⼤大約只差1-3%的效能。 • 優點:虛擬化較輕量量,且效能最佳。 • 缺點:Host OS 與 Guest OS 必須使⽤用同⼀一種 Kernel,Linux 只能模擬 Linux OS,⽽而 Windows 只能模擬 Windows。 • ex: OpenVZ、Linux Container
Linux Container(LXC) 是 Linux Kernel 級別的軟體容器,⼀一種作業系統層虛擬化(OS–level virtualization)技術,它可將應⽤用軟體系統打包成⼀一個軟體容器,並內 含應⽤用軟體本⾝身程式,以及所需作業系統核⼼心和函式庫等。
Hypervisor vs Linux Container
Linux 容器使⽤用的 Linux Kernel 功能 • Namespaces(mnt, pid, net, ipc,
uts/hostname, user ids) • cgroups(cpu, memory, disk, i/o - resource management) • AppArmor, SELinux(security/access control) • seccomp(computation isolation) • chroot(file system isolation)
LXC Engine: A Hypervisor for Container
Docker Docker 是 Docker.inc(dotCloud) 於 2013 年年開源的專案,早期是 LXC 基礎 上進⾏行行封裝的⼯工具,從檔案系統、網路路與程序隔離等,都極⼤大簡化了了
Linux 容器的管理理,因此虛擬化更更為輕量量。 P.S. 最初實作是基於 LXC,從 0.7 以後開始去除 LXC,轉⽽而使⽤用⾃自⾏行行開發 的 libcontainer,從 1.11 開始,則進⼀一步演進為使⽤用 runC 和 containerd。
Virtual Machines Vs Docker
為什什麼使⽤用 Docker? 以下幾項好處: • 更更快速的交付和部署 • 更更有效率的虛擬化 • 更更輕鬆的遷移和擴展 •
更更簡單的管理理 • 對比傳統虛擬機總結 ->
為什什麼使⽤用 Docker? P.S. 詳細可參參考 Docker 官⽅方網站
Docker 導入狀狀況
邁入標準化 OCI
Docker 底層架構 基於 Linux 核⼼心的 cgroup, namespace,以及 AUFS 類的 Union
FS 等技術,對 處理理序進⾏行行封裝隔離,屬於 作業系統層⾯面的虛擬化技 術。
Docker 應⽤用架構 • 容器 (Docker Container) • 映像檔 (Docker Image)
• 倉庫(Docker Registry) • Dockerfile
容器 (Docker Container) 利利⽤用 Image 執⾏行行後的服務就稱 為⼀一個 container,可以想成是 VM 的實例例
(Instance) ,它在⼀一 個被隔離的⾏行行程中執⾏行行,這⾏行行 程共享主機的核⼼心。
映像檔 (Docker Image) Docker 映像檔就是⼀一個唯 獨的模版,其儲存系統當 下的狀狀態。
映像檔倉庫 (Docker Registry) 倉庫是集中存放映像檔檔案的場所 倉庫分為: • 公開倉庫 (Public) • 私有倉庫
(Private)
Dockerfile Dockerfile 讓使⽤用者可以透 過 Dockerfile 特有的語法, 來來描述⾃自定義的映像檔建置 過程。 如: 安裝
Apache 軟體.
Docker - Hello World # Install docker engine > curl
-fsSL https://get.docker.com/ | sh # Get one base Docker image > docker pull ubuntu # List Docker images available > docker images # Run hello world > docker run ubuntu:14.04 echo "Hello world" https://www.katacoda.com/courses/docker
Detached mode # Run hello world in detached mode (-d)
> docker run -d ubuntu sh -c "while true; do echo hello world; sleep 1; done" # Get container’s ID > docker ps # Stop/start/restart the container > docker stop <container-id>
Simple Dockerfile 下載 Dockerfile 範例例 # Build myapp image >
docker build -t kyle/ myapp:0.1.0 .
Problems with standalone Docker 在單個 Docker 主機上運作的⼀一組 Container 應⽤用程式叢 集,會受到單點故障問題影響
微服務架構的成形 單體架構(Monolithic Architecture)隨技術的發展,⽽而⾯面臨臨了了很⼤大的挑戰
應⽤用推展的過程中,程式碼 將越來來越龐⼤大,傳統單體架 構(Monolithic Architecture)的 服務會造成巨⼤大的不便便。 單體架構(Monolithic Architecture)
1.龐⼤大且複雜的程式碼 -除錯、新增功能與測試都包在⼀一起, 變得⼗十分複雜 2.容易易以低效率的開發⽅方式進⾏行行 – 利利⽤用新語⾔言和新框架將更更為 困難,因為搬移或更更動將耗費巨⼤大成本 3.不利利於敏捷開發 – 現今的服務幾乎是每天更更新,單體架構會
讓這件事變得很耗時間 4.可靠性低 – 單體架構是將所有的模組均建構在⼀一個程序 (process)內,當其中⼀一環有bug時,容易易牽⼀一髮動全⾝身 單體架構問題
微服務 (Microservices) 是⼀一種 軟體架構風格,它是以專注於單 ⼀一責任與功能的⼩小型功能區塊 (Small Building Blocks) 為基礎, 利利⽤用模組化的⽅方式組合出複雜的
⼤大型應⽤用程式,各功能區塊使⽤用 與語⾔言無關 (Language- Independent/Language agnostic) 的 API 集相互通訊。 微服務 (Microservices)
什什麼是 Kubernetes? 在 Docker 的單點故障與跨節點問題下,加上受到微服務興起,Kubernetes ⽬目前正夯中!
Kubernetes 是 Google 開源的容器(Container)分散式管理理系統,是 Google⼗十幾年年以來來⼤大規模應⽤用容器技術的經驗累積和昇華的⼀一個重 要成果,是建於 Docker(OCI標準容器)之上的容器叢集排程服務,簡 稱為k8s(‘k’ + 8
letters + 's')。
為什什麼使⽤用 Kubernetes? Kubernetes ⽬目標是管理理跨區域多個主機的容器節點(Docker),提供基本的部署,維 護以及運⽤用在各項應⽤用,擁有以下好處 : • 操作簡單,⽽而無需⽤用⼾戶進⾏行行複雜的設置⼯工作。 • 系統會⾃自動選取合適的⼯工作節點來來執⾏行行容器叢集排程處理理⼯工作。
• 易易遷移、擴展與升級服務。 • ⾃自動化的負載平衡、容錯機制。 • ⽀支持公有雲,私有雲,混合雲,以及多種雲平台。 • ⽀支援 Federation 與跨作業系統平台。
Kubernetes 架構 K8s 屬於分散式架構系統,主要元件有: • Master – ⼤大總管,可做為主節點 • Node(Minion)
– 主要⼯工作的節點,上⾯面運⾏行行了了 許多容器 • Masters和 Nodes組成叢集(Clusters)
Kubernetes 細部結構 https://github.com/GoogleCloudPlatform/kubernetes/blob/master/DESIGN.md
Kubernetes Master Kubernetes Master 包含了了四個基本組件: • Etcd: 是 CoreOS 團隊發起的⼀一個管理理設定資訊
和服務發現(service discovery)的專案。 • API Server:以 REST APIs 介⾯面⽅方式提供所有業 務邏輯CURD操作。 • Controller Manager Server:所有其他叢集級 功能都是透過控制管理理器(Controller Manager)來來 操作。 • Scheduler:負責整個分散式系統的資源排程。
Kubernetes Node(Minion) Kubernetes Node 包含了了四個基本組件: • Kubelet:負責管理理的映像檔、容器與資料 Volume等操作。也是連接 Master 的橋樑。
• Kube-proxy: 為了了解決外部網路路能夠群曲跨 機器叢集中容器提供的應⽤用服務⽽而設計。⽀支 援 TCP,UDP stream forwarding 或 round robin TCP,UDP forwarding。 • Container:基於 Docker engine 來來執⾏行行應⽤用 程式容器實例例。
Kubernetes 重要的三個概念念 • Pod • Service • Deployments (Replication Controller)
Kubernetes - Pod Pod 是 K8s 中最⼩小的部署單位,可以將⼀一個或多個容器組成⼀一個 Pod,Pod 所 包含的容器只會運⾏行行在同⼀一個
Host 上,並共享 network namespaces、IP port,每個 Pod的 network mapping 都是由 container pause 所封裝處理理的。
Pod 的特性 以下針對 Pod 的特性進⾏行行說明: 1. Pod 擁有不確定的⽣生命週期,這意味著不曉得任⼀一pod是否會永久保留留 2. Pod
內有⼀一個讓所有container共⽤用的Volume,這會與Docker不同 3. Pod 採取shared IP,內部所有的容器皆使⽤用同⼀一個Pod IP,這也與 Docker不同 4. Pod 內的眾多容器都會和Pod同⽣生共死,就像桃園三結義⼀一樣!
Kubernetes - Service Service是 pod 服務的抽象 層,俱有負載平衡的功 能,由於 pod 的數量量與IP
不會固定,可將⼀一群 pod 指派成 service 並給予⼀一個 固定IP (cluster IP),service 會將請求⾄至 cluster IP 的流 量量導入其對應 pod。
Service 的特性 以下針對 Service 的特性進⾏行行說明: 1. 每個 Service 包含著⼀一個以上的 Pod
2. 每個 Service 有個獨立且固定的IP地址 – Cluster IP 3. 客⼾戶端訪問 Service 時,會經由上述提過的 Proxy 來來達到負載平衡、與 各 Pod 連結的結果 4. 利利⽤用標籤選擇器(Label Selector),聰明地選擇那些已貼上標籤的 Pod
Kubernetes - Deployments Deployments(Replication Controllers)是部署群組 Pods,其會確保 K8s 系統 中指定數量量副本的 Pod
存 活, 也可以利利⽤用 Label 及 Rolling update 來來進⾏行行副本 的擴展或更更新。
Deployments 的特性 以下針對 Deployments 的特性進⾏行行說明: 1. Deployments 的設定檔(底下以YAML格式為例例),可以指定replica,並保 證在該replica的數量量運作 2.
Deployments 會檢查pod的狀狀態 3. Deployments 下可執⾏行行滾動更更新或者回滾
Kubernetes Quick Start
單機 Kubernetes 安裝 Mac OS X 安裝指令 # curl -Lo
minikube https://storage.googleapis.com/minikube/releases/v0.17.1/ minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/ bin/ Linux 安裝指令 # curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.17.1/ minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
簡單 minikube 指令 檢視版本資訊 # minikube version 檢查 k8s version
# minikube get-k8s-versions 確認 minikube 狀狀態 # minikube status 啟動與關閉 minikube # minikube start/stop Minikube 的儀表板 # minikube dashboard minikube docker env # minikube docker-env minikube ssh # minikube ssh
安裝 kubectl ⼯工具 Mac OS X 安裝指令 # curl -LO
https://storage.googleapis.com/kubernetes-release/release/v1.5.3/bin/ darwin/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/ Linux 安裝指令 # curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.5.3/bin/ linux/amd64/kubect && chmod +x kubectl && sudo mv kubectl /usr/local/bin/
簡單 kubelet 指令 檢視版本資訊 # kubectl version 叢集詳細資訊 # kubectl
cluster-info 取得 Node 狀狀態 # kubectl get node
建立⼀一個 Nginx applcation cluster ⾸首先下載 run-my-nginx.yaml 接著執⾏行行以下指令: $ kubectl create
-f run-my-nginx.yaml $ kubectl get po $ kubectl get deployments $ kubectl rollout status deployment/nginx- deployment $ kubectl describe deployments
建立⼀一個 Nginx applcation service ⾸首先下載 nginx-svc.yaml 接著執⾏行行以下指令: $ kubectl create
-f nginx-svc.yaml $ kubectl get svc my-nginx $ kubectl describe svc my-nginx # minikube ssh $ curl 10.0.0.76
建立⼀一個 NodePort service 修改 nginx-svc.yaml 加入以下內容: spec: type: NodePort ports:
- port: 80 targetPort: 80 protocol: TCP nodePort: 31000 selector: run: my-nginx
Kubernetes 進階 Demo
其他部署⼯工具 • kubeadm • kargo • Kops • Kube-aws •
Bootkube • Kismatic • Terraform • Supergiant • kubebox • LazyKube
Kubernetes 使⽤用案例例
【⼤大規模容器叢集實例例】雷亞遊戲借助Kubernetes,3⼈人搞定百萬玩家App底層維運 (1/3) http://www.ithome.com.tw/news/108748 How is 雷亞? 成立於2012年年的雷亞遊戲,截⾄至現今已經推出了了5款遊戲,在Google Play平臺上累積下載次數超過2,300萬,其遊戲已在23個國家中拿下付費排⾏行行榜 的第⼀一名。在2012年年年年底,雷亞遊戲推出⾳音樂遊戲Mandora 使⽤用Kubernetes的三⼤大優點
除了了技術決策的原因,鐘志遠也歸納其他Kubernetes的使⽤用優點。第⼀一是其開源的性質,只要使⽤用上碰到任何異異常,只要開啟它在GitHub專案的⾴頁 ⾯面,就可以了了解其運作原理理且進⾏行行除錯。 第⼆二則是Kubernetes⽀支援多區(Multi-zone)部署功能,在其1.2.4版本中,開發者可以在資料中⼼心內建置叢集外,叢集還可以分布在不同區間(Zone) 內,藉此提升應⽤用程式的可⽤用性。 最後則是其運⾏行行環境很容易易開發者進⾏行行除錯。鐘志遠舉例例,當開發者想要利利⽤用本機電腦連線⾄至遠端環境除錯時,開發者不需要透過重重的SSH連線、 建立VPN等步驟,只需要⼀一些基本指令,就可以對Container進⾏行行存取並且讀取其內部運⾏行行資料。
【⼤大規模容器叢集實例例】雷亞遊戲借助Kubernetes,3⼈人搞定百萬玩家App底層維運 (2/3) 但是⾏行行銷團隊經常構思不同的推廣⽅方案,像是在周六推出免費歌曲,此時系統請求就會暴暴增5倍,「這對⾏行行銷是好事,但是突然暴暴增的流 量量對⼯工程師非常有壓⼒力力。」鐘志遠表⽰示,由於此專案只有3位⼯工程師負責,並沒有專屬⼈人⼒力力時時監控系統流量量,因此,系統⾃自動⽔水平擴充 是他認為最重要的功能。⽽而在Kubernetes中,只需要⼀一組指令就可以完成⽔水平擴充功能。他舉例例,開發者可以⾃自⾏行行設定參參數,例例如當 CPU使⽤用率達到70%時,系統會⾃自⾏行行產⽣生新節點(Pod)。同時,也必須要對底層VM進⾏行行類似設定,讓系統在⾃自動產⽣生新節點時,提前 產⽣生可以容納節點的VM,「藉此就可以透過Kubernetes實現⽔水平擴充的功能。」 Auto Scaling
【⼤大規模容器叢集實例例】雷亞遊戲借助Kubernetes,3⼈人搞定百萬玩家App底層維運(3/3) 從今年年⼀一⽉月才開始使⽤用Docker及Kubernetes的雷亞遊戲,在短短半年年內就成功導入到正式環境。⽬目前VOEZ每⽇日的活躍使⽤用 者約有100萬⼈人,必須利利⽤用100個4核⼼心VM才能撐起叢集的運作,「⽽而Container及Kubernetes威⼒力力之處,就是讓我們在半年年 內,只靠三個⼈人就完成這樣的系統架構。
Kubernetes 在華為全球 IT 系統中的實踐(1/3) https://read01.com/kkg3ag.html 華為 IT 系統規模非常龐⼤大,部署在全球各個地區,業務量量⼤大, 應⽤用數量量急劇增長。隨著規模的愈發龐⼤大,問題也越來來越突出: 1.
資源利利⽤用率低,虛擬機增長過快,成本激增。 2. 跨區域多 DC 的部署維護無法拉伸,運維投入巨⼤大。 3. 系統重載、應⽤用伸縮周期長。 4. 難以⽀支持快速疊代,業務上線效率低。
Kubernetes 在華為全球 IT 系統中的實踐(2/3) 整體上是希望通過⼀一套核⼼心技術,去打通 IaaS 和 PaaS 平台,⼀一套技術⽀支撐多種業務場景。
Kubernetes 在華為全球 IT 系統中的實踐(3/3) 資源利利⽤用率提升了了 3 到 4 倍,當前的規模達到 2000
多個虛機。下⾯面重點講下近期的兩兩⼤大重點技術實踐: 1. Kubernetes 多集群聯聯邦 2. 應⽤用間的親和/反親和調度。
迎戰50倍爆量量夢魘!Pokémon遊戲打造GCE史上最⼤大Kubernetes叢集(1/2) http://www.ithome.com.tw/news/108719 遊戲上線當天,不斷湧入的玩家流量量,衝垮了了原先所有預期的設計,Niantic和Google Cloud旗下CRE、SRE、開發者、產品 ⼈人員、技術⽀支援團隊紛紛出動聯聯⼿手來來解決這個難題。 Pokémon GO遊戲後端其實是布建在Container應⽤用環境中。遊戲核⼼心程式都⽤用部署在Google容器服務GKE上的Kubernetes 叢集中。Niantic利利⽤用GKE來來打造⼀一個全球性架構(planetary-scale)的容器叢集,讓他們的開發團隊可以專⼼心於部署各項玩 家需要的即時更更新功能。Niantic還利利⽤用Google Cloud來來建立Pokémon
GO的後端單⼀一服務平臺,可以提供持續部署和改善。
迎戰50倍爆量量夢魘!Pokémon 遊戲打造 GCE 史上最⼤大Kubernetes叢集(2/2) 不過,單靠Google加持還不夠,Pokémon GO爆紅之後,不⽌止湧進⼤大量量玩家,也開始出現非⼈人玩家的爆量量存取,包括了了⼤大量量 第三⽅方程式、軟體機器⼈人等各式各樣的資料爬蟲程式,尤其8⽉月初在南美洲、巴⻄西等國推出時,非官⽅方程式的爆量量存取,更更讓 Pokémon GO被迫延後上市時間,因為服務幾乎快撐不住了了,後來來,Pokémon GO決定在8⽉月3⽇日開始封鎖那些「非⼈人」的特
殊查詢流量量,才讓遊戲服務恢復正常。Niantic執⾏行行長也在8⽉月4⽇日時在Pokémon GO官網解釋了了南美洲上市延後的原因。如下 圖所⽰示,在8⽉月3⽇日啟⽤用封鎖機制後,特殊查詢的流量量瞬間減少了了6、7成。 我之前⽤用 Docker 掛 PoKemon 也被鎖拉 !!!!!!!!!
TCP Cloud(1/2) http://www.ithome.com.tw/news/108748
Smart Conference at OpenStack Summit Austin TCP Cloud - Smart
Conference at OpenStack Summit Austin(2/2)
越來來越多廠商提供 Kubernetes 服務或與 Kubernetes 結合 ... 微軟、紅帽與IBM加入Google Kubernetes容器管理理開放源碼專案 瞄準容器混搭平臺,Kubernetes 1.5新版釋出,竟然開始⽀支援Windows
Server⾃自家容器 Google容器調度⼯工具Kubernetes正式登陸Azure Container服務 結合Docker與Kubernetes,紅帽打造企業級容器應⽤用程式平臺 CoreOS捨棄⾃自家調度⼯工具Fleet,將重⼼心轉移⾄至Kubernetes CoreOS推出新版容器管理理平臺Tectonic,讓Kubernetes能⾃自動更更新 Rancher正式推出1.0版本,同時可以建構Docker Swarm及Kubernetes叢集 Canonical加入容器調度戰局,推出⾃自家版本Kubernetes 推廣無伺服器新架構,⽤用Kubernetes加速企業上雲端 在 2013 年年推出以Container為主的GKE服務 後,⼀一直到今天,Google每周啟⽤用的 Container數量量超過了了20億個。
More Use Case Kubernetes User Case Studies Making OpenStack Production
Ready with Kubernetes and OpenStack Open Source IoT Platform based on OpenStack and Kubernetes
References • http://en.wikipedia.org/wiki/Virtualization • http://en.wikipedia.org/wiki/Hypervisor • http://en.wikipedia.org/wiki/LXC • http://www.cs.ucsb.edu/~rich/class/cs290-cloud/papers/lxc-namespace.pdf •
http://en.wikipedia.org/wiki/Cgroups • http://en.wikipedia.org/wiki/AppArmor • http://en.wikipedia.org/wiki/Security-Enhanced_Linux • http://www.lorien.ch/server/chroot.html • http://kubernetes.io • https://github.com/ramitsurana/awesome-kubernetes
www.inwinstack.com Thank You! 迎 棧 科 技 股 份 有
限 公 司