1. 程式人生 > >Spring系列學習之Spring Cloud Kubernetes容器編排應用管理

Spring系列學習之Spring Cloud Kubernetes容器編排應用管理

英文原文:https://spring.io/projects/spring-cloud-kubernetes

目錄

概述

kubernetes

Kubernetes 特點

Kubernetes 元件

快速開始

學習

文件


概述

kubernetes

kubernetes,簡稱K8s,是用8代替8個字元“ubernete”而成的縮寫。是一個開源的,用於管理雲平臺中多個主機上的容器化的應用,Kubernetes的目標是讓部署容器化的應用簡單並且高效(powerful),Kubernetes提供了應用部署,規劃,更新,維護的一種機制。 [1] 

傳統的應用部署方式是通過外掛或指令碼來安裝應用。這樣做的缺點是應用的執行、配置、管理、所有生存週期將與當前作業系統繫結,這樣做並不利於應用的升級更新/回滾等操作,當然也可以通過建立虛擬機器的方式來實現某些功能,但是虛擬機器非常重,並不利於可移植性。

新的方式是通過部署容器方式實現,每個容器之間互相隔離,每個容器有自己的檔案系統 ,容器之間程序不會相互影響,能區分計算資源。相對於虛擬機器,容器能快速部署,由於容器與底層設施、機器檔案系統解耦的,所以它能在不同雲、不同版本作業系統間進行遷移。

容器佔用資源少、部署快,每個應用可以被打包成一個容器映象,每個應用與容器間成一對一關係也使容器有更大優勢,使用容器可以在build或release 的階段,為應用建立容器映象,因為每個應用不需要與其餘的應用堆疊組合,也不依賴於生產環境基礎結構,這使得從研發到測試、生產能提供一致環境。類似地,容器比虛擬機器輕量、更“透明”,這更便於監控和管理。

Kubernetes是Google開源的一個容器編排引擎,它支援自動化部署、大規模可伸縮、應用容器化管理。在生產環境中部署一個應用程式時,通常要部署該應用的多個例項以便對應用請求進行負載均衡。

在Kubernetes中,我們可以建立多個容器,每個容器裡面執行一個應用例項,然後通過內建的負載均衡策略,實現對這一組應用例項的管理、發現、訪問,而這些細節都不需要運維人員去進行復雜的手工配置和處理。

Kubernetes 特點

  • 可移植: 支援公有云,私有云,混合雲,多重雲(multi-cloud)

  • 可擴充套件: 模組化, 外掛化, 可掛載, 可組合

  • 自動化: 自動部署,自動重啟,自動複製,自動伸縮/擴充套件

Kubernetes 元件

  • 1Master 元件

    • 1.1kube-apiserver

    • 1.2ETCD

    • 1.3kube-controller-manager

    • 1.4cloud-controller-manager

    • 1.5kube-scheduler

    • 1.6外掛 addons

    • 1.6.1DNS

    • 1.6.2使用者介面

    • 1.6.3容器資源監測

    • 1.6.4Cluster-level Logging

  • 2節點(Node)元件

    • 2.1kubelet

    • 2.2kube-proxy

    • 2.3docker

    • 2.4RKT

    • 2.5supervisord

    • 2.6fluentd

本文介紹了Kubernetes叢集所需的各種二進位制元件。

https://baike.baidu.com/item/kubernetes/22864162?fr=aladdin

快速開始

使用Spring Initializr引導您的應用程式。

學習

文件

每個Spring專案都有自己的; 它詳細解釋瞭如何使用專案功能以及使用它們可以實現的功能。

2.1.0 RC1 PRE CURRENT Reference Doc. API Doc.
1.0.0 RC2 PRE CURRENT Reference Doc. API Doc.