Rancher概述

概述


What’s Rancher?

Rancher是一套容器管理平臺,它能夠幫助組織在生產環境中輕鬆快捷的部署和管理容器。 Rancher能夠輕鬆地管理各類環境的Kubernetes,知足IT需求併爲DevOps團隊提供支持。node

Kubernetes不只已經成爲的容器編排標準,它也正在迅速成爲各種雲和虛擬化廠商提供的標準基礎架構。Rancher用戶能夠選擇使用Rancher Kubernetes Engine(RKE)建立Kubernetes集羣,也可使用GKE,AKS和EKS等雲Kubernetes服務。 Rancher用戶還能夠導入和管理現有的Kubernetes集羣。linux

Rancher支持各種集中式身份驗證系統來管理Kubernetes集羣。例如,大型企業的員工可使用其公司Active Directory憑證訪問GKE中的Kubernetes集羣。IT管​​理員能夠在用戶,組,項目,集羣和雲中設置訪問控制和安全策略。 IT管​​理員能夠在單個頁面對全部Kubernetes集羣的健康情況和容量進行監控。nginx

Rancher爲DevOps工程師提供了一個直觀的用戶界面來管理他們的服務容器,用戶不須要深刻了解Kubernetes概念就能夠開始使用Rancher。 Rancher包含應用商店,支持一鍵式部署Helm和Compose模板。Rancher經過各類雲、本地生態系統產品認證,其中包括安全工具,監控系統,容器倉庫以及存儲和網絡驅動程序。下圖說明了Rancher在IT和DevOps組織中扮演的角色。每一個團隊都會在他們選擇的公共雲或私有云上部署應用程序。docker

Rancher Platform

What’s New?

早期的Rancher1.X版本是基於Docker以Cattle爲調度引擎的容器管理平臺。在Rancher1.X成功和經驗的基礎上,基於Kubernetes基礎上從新設計Rancher2.0版本。 Rancher2.0保留了1.6版的友好功能,如UI和應用商店。可是,2.0包含許多新功能,例如:shell

  • 內置CI/CD;
  • 告警和日誌收集;
  • 多集羣管理;
  • Rancher Kubernetes Engine (RKE);
  • 與雲Kubernetes服務(如GKE,EKS和AKS)集成;

1 - 架構設計


本節介紹Rancher如何與Docker和Kubernetes進行交互。數據庫

Docker

Docker是容器打包和runtime標準。開發人員從Dockerfiles構建容器鏡像,並從Docker鏡像倉庫中分發容器鏡像。Docker Hub是最受歡迎的公共鏡像倉庫,許多組織還設置私有Docker鏡像倉庫。Docker主要用於管理各個節點上的容器。後端

Note:雖然Rancher 1.6支持Docker Swarm集羣技術,但因爲Rancher2.0基於Kubernetes調度引擎,因此Rancher2.0再也不支持Docker Swarm。api

Kubernetes

Kubernetes已成爲容器集羣管理標準,經過YAML文件來管理配置應用程序容器和其餘資源。Kubernetes執行諸如調度,擴展,服務發現,健康檢查,密文管理和配置管理等功能。瀏覽器

一個Kubernetes集羣由多個節點組成:安全

  • etcd database

一般在一個節點上運行一個etcd實例服務,但生產環境上,建議經過3個或5個(奇數)以上的節點來建立ETCD HA配置。

  • Master nodes

主節點是無狀態的,用於運行API Server,調度服務和控制器服務。

  • Worker nodes

工做負載在工做節點上運行。

默認狀況下Master節點也會有工做負載調度上去, 可經過命令設置其不加入調度瞭解詳情

Rancher

大多數Rancher2.0軟件運行在Rancher Server節點上,Rancher Server包括用於管理整個Rancher部署的全部組件。

下圖說明了Rancher2.0的運行架構。該圖描繪了管理兩個Kubernetes集羣的Rancher Server安裝:一個由RKE建立,另外一個由GKE建立。

Architecture

在本節中,咱們將介紹每一個Rancher Server組件的功能:

Rancher API服務器

Rancher API server創建在嵌入式Kubernetes API服務器和etcd數據庫之上。它實現瞭如下功能:

  • Rancher API服務器

Rancher API server管理與外部身份驗證提供程序(如Active Directory或GitHub)對應的用戶身份

  • 認證受權

Rancher API server管理訪問控制和安全策略

  • 項目

項目是集羣中的一組多個命名空間和訪問控制策略的集合

  • 節點

Rancher API server跟蹤全部集羣中全部節點的標識。

集羣控制和Agent

集羣控制器和集羣代理實現管理Kubernetes集羣所需的業務邏輯:

  • 集羣控制器實現Rancher安裝所需的全局邏輯。它執行如下操做:

    • 爲集羣和項目配置訪問控制策略

    • 經過調用如下方式配置集羣:

      • 所需的Docker machine驅動程序
      • 像RKE和GKE這樣的Kubernetes引擎
  • 單獨的集羣代理實例實現相應集羣所需的邏輯。它執行如下活動:

    • 工做負載管理,例如每一個集羣中的pod建立和部署

    • 綁定並應用每一個集羣全局策略中定義的角色

    • 集羣與Rancher Server之間的通訊:事件,統計信息,節點信息和運行情況

認證代理

該認證代理轉發全部Kubernetes API調用。它集成了身份驗證服務,如本地身份驗證,Active Directory和GitHub。在每一個Kubernetes API調用中,身份驗證代理會對調用方進行身份驗證,並在將調用轉發給Kubernetes主服務器以前設置正確的Kubernetes模擬標頭。Rancher使用服務賬戶與Kubernetes集羣通訊。

2 - 相關術語


1、全局層

全局層主要對Rancher Server自身的基礎配置,好比Rancher Server URL、登陸認證等。

  1. 集羣

    全局層的集羣菜單,用於列出集羣中全部的K8S集羣。

  2. 主機驅動

    用於與三方雲平臺API對接的中間件程序。

  3. 應用商店-全局

    全局層的應用商店,負責應用商店的開關與添加。

  4. 用戶

    添加或者刪除用戶,或者修改用戶的權限。

  5. 系統設置

    全局下系統的基礎配置,好比系統默認鏡像倉庫。

  6. 安全

    • 角色

      一組權限的集合

    • Pod安全策略

      Pod安全設置

    • 登陸認證

      用戶的登陸訪問認證

2、集羣層

  1. 集羣

    顯示當前集羣的資源配置狀況,各系統組件的健康狀態;2.2以前,集羣儀表盤顯示當前集羣的資源預留狀態(並不是實際資源使用);

  2. 主機

    當前集羣中添加的全部主機

  3. 存儲

    • 存儲類
    • 持久卷
  4. 項目與命名空間

    此集羣擁有的項目和命名空間

  5. 集羣成員

  6. 工具

    • 告警

    • 通知

    • 日誌

    • CI/CD

3、項目層

  1. 工做負載

    • 工做負載服務

    • 負載均衡

    • 服務發現

    • 數據卷

    • CI/CD

  2. 應用商店-項目

  3. 資源

    • 告警

    • 證書

    • 配置映射

    • 日誌收集

    • 鏡像庫

    • 密文

  4. 命名空間

  5. 項目成員

4、其餘 (右上角登陸菜單)

  1. API Keys

  2. 主機模板

  3. 喜愛設定

3 - 快速入門


注意:本入門指南的目的是讓您快速的運行一個Rancher2.0環境,它不適用於生產。有關更全面的說明,請查閱Rancher安裝.

本教程將指導您完成:

  • 安裝Rancher v2.0 ;
  • 建立第一個集羣;
  • 部署一個應用程序,如Nginx;

1、入門須知

  • 熟悉Linux基礎命令;
  • 瞭解SSH使用方法,瞭解公鑰/私鑰工做原理;
  • 熟悉Docker基本使用方法及基礎命令,好比:容器日誌查看;
  • 瞭解SSL證書使用方法;
  • 瞭解負載均衡工做原理(L4/L7);
  • 瞭解域名解析原理;
  • 瞭解K8S基本概念

2、配置Linux主機

經過配置Linux主機開始建立自定義集羣。您的主機能夠是:

  • 雲主機
  • 本地虛擬機
  • 本地物理機

注意:在使用雲主機時,您須要容許TCP/80和TCP/443入站通訊端口。請查閱您的雲主機文檔以獲取有關端口配置的信息。有關端口要求的完整列表,請查閱端口需求.

根據如下要求配置主機:

  • Ubuntu 16.04 +(64位)
  • Centos/RedHat Linux 7.5+(64位)
  • RancherOS 1.3.0+(64位)

Ubuntu操做系統有Desktop和Server版本,選擇安裝server版本.

一、硬件需求:

  • CPU: 2C
  • 內存: 4GB

注意:此配置僅爲知足小規模測試環境的最低配置。如用於生產,請參考基礎配置要求

二、軟件需求:

  • 軟件: Docker

  • 支持的Docker版本:

    • 17.03.x
    • 18.06.x
    • 18.09.x

注意:有關Docker安裝說明,請訪問其文檔。軟件需求要應用於全部節點。

主機的更詳細配置說明,請查看基礎環境配置

3、安裝Rancher

要想在主機上安裝Rancher,須要先登陸到主機上,接着進行如下步驟:

  1. 經過shell工具(例如PuTTy或遠程終端鏈接)登陸到主機

  2. 在shell中執行如下命令:

    sudo docker run -d --restart=unless-stopped -v <主機路徑>:/var/lib/rancher/ -p 80:80 -p 443:443 rancher/rancher:stable

4、登陸Rancher

登陸並開始使用Rancher。登陸後,您將進行一些一次性配置。

  1. 打開瀏覽器,輸入https://<server_ip>,server_ip替換爲運行Rancher容器主機的ip;

  2. 由於是自動使用的自簽名證書,在第一次登陸會提示安全授信問題,信任便可;

    image-20180703152812587

  3. 設置管理員密碼

    第一次登陸會要求設置管理員密碼,默認管理員帳號爲: admin

    若是沒有設置密碼而要求輸入當前密碼,能夠輸入密碼: admin

    image-20180703152943118

  4. 設置Rancher Server URL

    Rancher Server URL是agent節點註冊到Rancher Serverd的地址,須要保證這個地址可以被agent主機訪問,不要設置爲127.0.0.1或者localhost

5、建立K8S集羣

如今建立第一個Kubernetes集羣,可使用自定義選項。您能夠添加雲主機、內部虛擬機或物理主機做爲集羣節點,節點能夠運行任何一種或多種主流Linux發行版:

  1. 頁面右下角能夠切換語言;

    image-20180703155306568

  2. 在全局視圖下,點擊菜單中的集羣 , 並點擊添加集羣;

    image-20180703155455417

  3. 選擇 Custom,並設置集羣名稱,其餘參數可不用修改,點擊下一步;

    image-20180703155616051

  4. 選擇節點運行的角色

    默認會勾選Worker角色,根據須要能夠一次勾選多種角色。好比,假設我只有一個節點,那就須要把全部角色都選擇上,選擇後上面的命令行會自動添加相應的命令參數;

    image-20180703160014756

  5. 若是是雲主機,須要添加主機的內網地址和對應的公網地址,若是是沒有公網的雲主機,能夠跳過這步;

  6. 其餘參數保持默認,點擊命令行右側的複製按鈕,複製命令參數

    image-20180703160307674

    若是是多臺主機,根據角色的不一樣,須要複製屢次

  7. 登陸預添加集羣的主機,執行以上覆制的命令;

    image-20180703160635845

  8. 在主機上執行完命令後,最後點擊完成;

  9. 回到全局視圖,能夠查看集羣的部署狀態;

    image-20180703160909299

  10. 點擊集羣名稱,進入集羣視圖

    image-20180703161000127

    image-20180703161032371

  11. 點擊菜單欄主機按鈕

    image-20180703161122349

  12. 集羣建立完成

    image-20180703161220346

  13. 集羣建立完成後,默認會生成Default項目,點擊Default切換到項目視圖;

    image-20180703161314995

6、部署工做負載

工做負載是一個對象,包括pod以及部署應用程序所需的其餘文件和信息。咱們以nginx做爲例如:

  1. 在Default視圖下,點擊工做負載—部署服務

    image-20180703161702320

  2. 在部署工做負載頁面,設置工做負載名稱、副本數量、鏡像名稱、命名空間、端口映射,其餘參數保持默認,最後點擊啓動;

    image-20180703162317366

  3. 部署完成

    image-20180703162503157

  4. 經過31174端口去訪問nginx服務。

4 - 功能列表


Rancher v2.1.0功能列表

對比內容 分類 描述 
K8S集羣管理 多集羣管理 容器平臺能同時對多個Kubernetes集羣進行管理,包括建立集羣、刪除集羣、集羣搜索、爲集羣添加主機等。每一個集羣有本身獨立的管理視圖,包括控制面板、主機視圖、容器視圖、應用視圖,可圖形化顯示其所包含的節點狀態和容器運行狀態,並能夠對節點和容器操做。每一個集羣上運行的應用和其餘集羣隔離。
集羣基礎設施管理和部署 容器雲平臺可以指定Kubernetes集羣的部署角色,包括etcd數據節點、API Server、Controller Manager控制節點、worker計算節點等。不一樣集羣可以指定不一樣的容器網絡模式,靈活支持目前社區主流的容器網絡解決方案,包括flannel、Calico、Canal等。平臺可以提供自動化部署工具,快速靈活的部署kubernetes集羣。
集羣管理權限設定 可設定每一個集羣的用戶角色和權限,除默認內置角色外,支持在圖形界面進行細粒度的RBAC權限自定義和角色建立。管理員能夠建立自定義角色,指定對平臺內各類資源對象(包括但不限於Cluster、Pod、Deployment、ConfigMap等)的建立、刪除、編輯、枚舉等各類細粒度的操做權限。
導入外部Kubernetes集羣管理 容器雲平臺必須可以導入外部Kubernetes集羣並進行管理的功能,以知足對各類Kubernetes集羣統一納管的需求。導入的Kubernetes集羣可以經過容器雲平臺界面進行統一的角色管理,應用部署等各類操做。
Kubernetes多版本支持 支持Kubernetes目前的主要穩定開源版本,包括1.九、1.十、1.十一、1.12。用戶在部署Kubernetes集羣時能夠根據須要選擇相應的版本進行部署。
集羣升級 經過平臺建立的Kubernetes集羣,集羣的系統軟件,如Kubernetes版本、網絡等系統服務軟件,可經過圖形界面在線升級或回退,不影響集羣環境中業務的使用。
Windows 集羣支持 可管理 Windows Kubernetes 集羣主機。
多租戶功能 基於獨立集羣的多租戶支持 容器雲平臺支持基於獨立集羣的多租戶隔離,能夠爲不一樣租戶建立並使用獨立的Kubernetes集羣。各集羣能夠按需配置獨立的管理員、用戶及自定義角色,彼此之間徹底隔離。
基於共享集羣的多租戶支持 容器雲平臺應支持集羣內部的多租戶隔離,集羣內租戶支持設置管理員、用戶及自定義RBAC角色,以知足權限管理需求。當基於單個集羣實現多租戶隔離時,同一個集羣內部的租戶應用彼此隔離,單個租戶內部的用戶僅能查看和管理本身租戶內部的應用,且不一樣租戶應用容器之間須要實現網絡隔離。
 租戶權限管理 支持租戶內用戶角色的管理和設置,支持RBAC自定義建立租戶內用戶角色和權限,以實現靈活的權限管理。
容器主機管理 納管虛擬機 支持以圖形界面在線添加虛擬機主機,新的主機被添加成功後將會顯示活動狀態,並可在圖形界查看主機的具體配置信息,包括但不限於主機名,IP地址,docker引擎版本號,操做系統版本,CPU/內存/磁盤配置信息等。
納管物理機 支持以圖形界面在線添加物理機主機,新的主機被添加成功後將會顯示活動狀態,並可在圖形界面看到主機的具體配置信息,包括但不限於主機名,IP地址,docker引擎版本號,操做系統版本,CPU/內存/磁盤配置信息等。
內置Docker Machine驅動管理 內置Docker Machine驅動,能夠對各種Docker的machine drivers進行配置和管理,方便用戶對接各種雲平臺、vSphere環境、OpenStack環境等。
主機分組管理 支持對不一樣的主機進行分組管理,可使用標籤(或相似方式)標識,如按物理區域、安全區域、組織架構、項目、應用劃分打標籤邏輯分組,支持多標籤。
查看主機性能狀態信息 系統提供便捷的圖形化界面,以實現對容器主機相關性能和狀態信息的監控和查看。能夠查看的主機性能信息包括,CPU、內存、網絡和磁盤,容器分配狀況、端口使用狀況、標籤、存儲等關鍵信息。
驅散容器功能 在對主機進行維護時,例如升級內核,硬件維護等,這個功能首先會禁止新的容器調度到這個節點,而後會對該節點上的容器有規則的進行驅散。完成主機維護後,能夠恢復節點功能。
容器主機故障自動檢測和自動應用漂移 當某個主機故障時,沒法和管理節點時間正常通訊時,則該主機將被表示爲不可用狀態,並在圖形界面顯示。該狀態下管理節點將視圖重連該主機,同時會將該主機上運行的容器自動漂移到其餘正常主機節點,以保證該狀況下相關容器的服務訪問正常。
容器調度與管理 容器生命週期管理 平臺提供便捷操做容器服務圖形化界面,能夠編輯容器信息,能夠啓動、重啓、中止、刪除、克隆容器。
並可在圖形界面上展現容器的信息和運行狀態,包括健康狀態,容器名、IP地址、所在主機、鏡像和命令等
查看容器狀態和性能 管理平臺能夠經過圖形界面查看容器關鍵性能和配置信息,能夠查看標籤、存儲卷、端口映射、實時監控信等關鍵信息,包括但不限於: CPU、內存、網絡和磁盤、容器IP、Image、所使用主機等狀況。
容器控制檯 圖形化界面能夠直接調出該容器控制檯,管理界面能夠操做容器的CLI,方便後臺控制人員執行命令行操做容器。
查看容器日誌 管理平臺圖形化界面能夠直接展現容器日誌信息,並實時刷新。
指定容器運行的主機 支持標籤或其它方式惟一限定容器運行主機。系統提供圖形化界面,設置容器編排調度規則。支持親和性/反親和性容器調度設置,系統提供圖形化界面,設置容器編排調度規則,支持基於標籤的親和性/反親和性調度,支持所有知足/部分等過濾條件。
容器應用管理 容器應用堆棧管理 支持使用應用模板一鍵建立容器應用棧。能夠從應用集合,服務集合的角度對容器進行集中的管理和配置。
應用管理視圖 支持以不一樣方式查看、展示應用容器。至少支持根據命令空間Namespace、應用分類、容器運行節點、列表等方式展現容器列表。
經過上傳編排文件直接部署應用 支持經過上yaml編排 文件,一鍵部署和啓動應用。極大提升部署效率,下降部署難度和時間。
查看、下載編排配置文件 支持實時查看kubernetes編排文件配置內容。支持下載和保存kubernetes編排文件,方便配置編輯、保存、從新部署和故障恢復。
統一調用非容器化服務或系統 管理平臺可方便的實現容器訪問外部的應用和服務,容器能夠訪問如不適合進行容器化的大型應用(如MySQL/Oracle數據庫)。支持經過圖形界面建立相應的服務發現記錄,包括外部IP地址、外部主機名、DNS別名等多種方
容器管理 項目管理功能 項目是一個或多個 namespace 集合,集羣管理員和項目管理員能夠從項目層級設置配額。能夠配置該項目的CPU,內存,存儲,Pod數量等等的配額。同時,在每一個項目裏,管理員也能夠對每一個namespace的配額進行控制。
容器服務健康檢查 系統內置對容器服務的健康檢查功能,支持在圖形界面進行如下健康檢查設置,包括: 
• 能夠設定基於HTTP的健康檢查。
• 能夠設定基於TCP的健康檢查。
• 能夠設定基於命令行命令的健康檢查。
• 能夠設定健康檢查的顆粒度,如檢查次數、間隔、超時時間等。
支持經過圖形界面對容器設置不一樣的Liveness Check和Readniess check規則。
容器服務伸縮 提供圖形界面,能夠便捷手動進行容器擴容和收縮。還提供容器基於CPU、內存等資源使用率狀態數值觸發的自動擴容縮容。
容器升級和回滾功能 提供圖形界面,能夠便捷實現容器的升級和回滾操做。部署應用時能夠設置應用的升級策略,包括新舊容器啓停順序、批量大小、最小就緒時間等等。
支持灰度發佈 能夠實現灰度升級,升級過程當中服務不中斷。升級後,圖形界面提供UI回滾到以前版本。當部署以前包括多個版本時,可提供多個版本進行回滾選擇。
伴隨容器服務 能夠爲主容器提供伴隨容器服務,在進行復雜應用部署時,能夠提供支持。支持經過圖形界面建立伴隨容器。
1.能夠爲主容器建立伴隨容器。
2.伴隨容器能夠和主容器同時啓動和同時關閉。
3.伴隨容器能夠和主容器共享容器數據卷和容器網絡。
容器可用性保障機制 能夠設定服務容器的須要保證的有效數量,當系統故障時,平臺可保證有效的的容器數量。能夠保證應用服務維持必定的容器數量,用來保證服務正常。服務故障時能夠從新建立容器,保證服務正常。
容器網絡管理 容器網絡訪問策略控制 容器網絡支持多租戶隔離和策略控制,同集羣內部的不一樣租戶能夠實現網絡的隔離和限制。
支持容器基本網絡模式 支持容器共享主機網絡方式,能夠在管理界面上設置容器網絡爲主機共享網路模式,容器共享主機網絡namespace,使用主機網卡進行容器內外部通訊。
支持高級網絡模式 支持多種網絡模式,容器平臺提供網絡插件,實現對容器IP和容器網絡的管理,支持容器網絡IP的自定義和跨主機容器網絡互訪。至少同時支持Flannel/Calico、Canal主流網絡技術。
負載均衡服務 內置負載均衡服務 內置容器負載均衡服務。經過圖形界面建立負載均衡,能夠進行端口指定、服務指定、SSL證書、會話保持、自定義負載均衡配置、標籤及調度等各項功能。
可定義負載均衡會話保持策略 內置負載均衡服務能夠配置能夠配置並使用基於cookie的會話保持功能。
支持SSL終結功能 內置負載均衡服務能夠配置能夠配置並使用基於HTTPS的SSL終結功能。
負載均衡後端支持 提供圖形界面,負載均衡後端同時支持Kubernetes Service對象和Pod直連,以支持話保持設置。
支持高級訪問路由功能 提供圖形界面,能夠配置負載均衡高級路由功能,實現根據URL頭信息、Domain name、訪問路徑等不一樣實現七層信息的轉發。
容器存儲服務 存儲類型支持 容器雲平臺應支持Kubernetes社區版本內置支持的全部存儲類型,包括FC、iSCSI、Ceph、Cinder、GlusterFS、AzureDisk、AWS EBS、ScaleIO等等。
方案提供方應該可以提供自主產權且開源的分佈式塊存儲方案,以知足業務上對持久化存儲的要求
Persistent Volume支持 支持經過圖形界面建立Persistent Volume,支持的類型包括上述所列Kubernetes標準版本內置的存儲類型。用戶能夠經過圖形界面方便的設置相關存儲參數。PV建立後能夠在應用部署時經過圖形界面建立PVC使用。
Storage Class支持 支持經過圖形界面建立Storage Class以知足存儲動態自動建立需求,支持的類型包括上述所列Kubernetes標準版本內置的存儲類型。用戶能夠經過圖形界面方便的設置相關存儲參數。Storage Class建立後能夠在應用部署時經過圖形界面使用。
超融合存儲支持 提供超融合存儲解決方案,支持基於容器集羣宿主機本地磁盤構建存儲池並與容器集羣進行集成。容器可利用本集羣內部的存儲池實現數據的持久化和高可用。
系統監控及日誌 系統監控 支持集羣和集羣內部租戶不一樣層級的監控設置,監控內容至少應包括: 
• 系統組件健康狀態,如etcd、API Server等
• 系統部署事件,如建立Deployment、Service對象等。
• 主機資源利用率,如CPU、內存等
• 應用可用狀態,如Deployment中可用容器低於必定比例等。
系統告警 • 須要提供系統內建的告警系統
• 告警系統支持經過圖形界面設置告警目標,不一樣告警規則可按需設置告警目標。告警目標應支持多種企業級集成,至少要同時支持對電子郵件、Slack、PageDuty系統的支持。同時須要提供 Webhook擴展方式,實現對其餘告警方式的支持和擴展。
• 告警規則支持臨時暫停、恢復,初始發送延遲、發送間隔等高級設置,以按需控制告警信息的發送。
系統日誌 平臺提供日誌收集代理,支持自動收集容器和應用程序日誌。
• 日誌系統可以在集羣層面、項目層面分別對應不一樣的日誌平臺,以知足用戶部門對日誌功能使用的靈活性,以知足不一樣應用場景需求。
日誌平臺集成 • 日誌代理應支持業內主流日誌平臺集成,能夠同時支持對ElasticSearch、Kafka、Splunk和Syslog的對接,用戶在圖形界面便可設置與上述平臺的自動化集成對接。
• 日誌系統可以在集羣層面、項目層面分別對應不一樣的日誌平臺,以知足用戶部門對日誌功能使用的靈活性
應用商店管理 容器應用商店 容器平臺支持容器化應用商店,實現容器應用的模板化展現和快速部署。應用商店應支持Kubernetes社區的Helm Charts模板。
企業級應用商店展現、組織及管理 提供圖形界面,能夠查看應用商店、實現應用模板的組織和管理。支持搜索和分類選擇展現。
支持用戶交互的參數配置 在應用商店配置頁面中可配置模板版本和自定義參數,在配置過程當中能夠經過界面進行自定義配置。在啓動應用過程當中,進行交互的參數能夠自定義。同時不一樣的應用能夠定義不一樣的參數。支持在應用商店模板中定義參數的類型、提示信息、默認值等相關設置,應用部署展現UI可根據參數定義動態生成並展現相關頁面。
支持應用發佈版本管理 能夠在應用商店中選擇應用的不一樣發佈版本,並啓動運行。應用商店出現該應用的新版本時,可自動提示正在運行的應用實例有新版本能夠升級。
支持部署私有隔離的應用商店 管理平臺能夠設置不一樣的應用商店路徑。每一個路徑均可以指向一個獨立的應用商店,能夠設置多個應用商店,應用能夠放在不一樣的應用商店中進行隔離管理。
 系統管理及安全 認證方式 容器雲平臺支持多種認證集成方式,除本地認證外,需支持主流的認證系統如微軟活動目錄、OpenLDAP、Github、Keycloak等,支持自定義認證插件實現集成認證。
容器安全策略 容器雲平臺支持設置容器安全策略,對建立的容器進行安全管控,例如限制啓動特權容器、限制容器使用主機IPC模式、主機網絡模式,限制容器能夠映射的主機數據卷路徑等。容器安全策略應當支持綁定到特定集羣和集羣內部的多租戶隔離實現。
API祕鑰管理 容器雲平臺支持爲不一樣用戶建立獨立的API祕鑰,API祕鑰僅當首次建立時可查看。且支持進行API祕鑰自動過時設置,以確保系統安全。
配置映射(configmap) 提供圖形化界面,配置configmap以供服務調用。
密文管理(secret) 提供圖形化界面,配置secret以供服務調用。
證書管理 平臺提供圖形界面,能夠對SSL證書進行管理。包括導入證書、刪除證書等。證書可用於應用訪問SSL加密。
鏡像庫功能 對接外部私有鏡像倉庫 提供圖形界面,設置鏈接外部的鏡像倉庫,可設置外部倉庫的認證信息實現認證集成。能夠設置默認鏡像庫,設置鏡像庫白名單等。
項目管理 支持公有和私有項目類型: 
• 公有: 公有項目中的鏡像全部用戶均有下載權限;
• 私有: 私有項目中的鏡像只有項目內的成員有相應的操做權限;
新建項目: 每當新建一個用戶時,系統都會默認建立一個以該用戶的用戶名爲項目名稱的私有項目;系統管理員能夠建立新的項目,項目詳情頁,可查看鏡像和訪問控制列表。
搜索項目: 支持輸入關鍵字進行項目搜索;
鏡像生命週期管理 鏡像生命生命週期主要功能以下所示: 
鏡像下載: 若鏡像爲私有鏡像,用戶至少要得到對應項目的下載權限才能成功下載鏡像;
鏡像上傳: 用戶首先要擁有對應項目的提交權限才能在該項目下上傳鏡像;
鏡像修改: 用戶能夠修改鏡像的描述信息,以及dockerfile;
鏡像複製: 實現鏡像在不一樣項目間的複製,用戶至少必須同時擁有源項目與目標項目的提交權限;
鏡像刪除: 在鏡像列表能夠選擇刪除鏡像的某個版本,也能夠直接刪除整個鏡像。
異地鏡像倉庫同步 支持設置好同步關係,而且多鏡像倉庫之間鏡像自動同步。鏡像同步的最小顆粒度是容器項目。
系統集成支持 支持經過純命令行方式進行配置和管理 容器平臺提供命令行管理工具,能夠經過命令行對容器管理平臺進行配置和管理。 方便運維人員開發自動化運維腳本。
提供API接口 容器雲平臺應支持Restful API調用,以方便的與內部系統進行集成。API接口需求以下: 
*支持頁面直接展示API調用內容
*全部頁面上的操做都能經過API支持
支持基於多租戶API調用的訪問受權。
針對不一樣的用戶,均可以生成Access key和Secret key祕鑰對,在獲取正確的祕鑰對後方能對API接口進行訪問。
容器操做系統 容器雲廠商在提供容器平臺的同時,還擁有知名的自主品牌的容器化操做系統平臺,以實現容器宿主機的快速建立和部署,下降系統資源消耗和受攻擊面。
CI/CD功能 同時支持多源碼管理 CI/CD支持公有Github、Gitlab和私有Gitlab代碼庫的對接。
自動部署鏡像 打通了從代碼提交,自動測試,自動構建鏡像,自動部署鏡像的全流程。
與應用商店集成 打通與應用商店的集成,可根據CI/CD的產物動態更新應用商店中的配置文件,應用商店提示有更新可用。
靈活的流程控制 能夠在最初的設置階段配置符合某既定要求的表達式或標籤,而系統會在執行階段根據執行狀況自動跳過不符合該表達式或標籤的階段或步驟。如此一來,不一樣的代碼分支能夠自動匹配不一樣的CI流程,從而支持較爲複雜的流程控制。
相關文章
相關標籤/搜索