欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來到云服務器

云技術

基于模板引擎的容器部署框架

在大家使用容器的過程中,都會有一種經歷,容器配置項眾多大概有四五十項,且需要一定技術背景才能理解。部署過程中,用戶常常會因為對于配置參數缺乏理解,導致容器啟動,應用部署或者升級時遇到各種各樣的問題。用戶如何加快對不同參數的理解并且能夠根據不同的應用類型和場景,做相應擴展,本文將重點要探討和解決這些問題。

容器創建或者應用部署配置繁雜且存在變數,為了保證系統靈活性和復用性,決定以模板引擎為核心,構建統一的容器部署框架。本文重點講述如何構建模板引擎以及以模板引擎為核心構建容器部署框架的運行原理。模板引擎中,符合一定格式規范的文件是基礎,對于可能有變化或者根據部署流程需要變化的位置,使用參數標識站位。模板文件結尾追加參數標識的定義,用來執行參數標識語義轉化。模板或者參數標識的具體內容,可以通過特定配置文件讀取或者接收客戶端請求參數。

模板引擎

模板引擎由模板定義,模板解析,模板轉換,模板執行四個模塊組成。模板定義依賴于容器集群的管理框架,是非可執行的文件。模板解析器負責把模板一分為二:一部分形成非可執行的部署模板;一部分形成部署模板中參數的定義說明,參數定義說明通過唯一的站位標識符與部署模板中的站位標識符一一對應。模板轉換器接受參數值,香港云服務器 美國云主機,結合解析器中生成的部署模板,參數值標識與模板中占位標識關聯,參數值通過占位標識替換,生成可執行文件。模板執行器負責根據模板創建對象,一般有調度框架或者容器引擎承擔。

模板引擎的執行原理如圖1所示:

基于模板引擎的容器部署框架

圖1  模板引擎的執行原理

模板定義

模板定義包括兩類信息:部署模板;參數標識。

以kubernetes的部署模板為例,部署模板涉及到4種不同類型定義,分別是:資源、版本、信息說明、數據配置。

1.資源:表示kubernetes中定義的對象類型。

2.版本:表示對象的版本

3.信息說明:包括對象名稱,標簽,注釋等,為對象查找或者調度提供索引。

4.數據配置:負責定義容器處于運行態遵循的標準,包括端口、環境變量、資源、調度、健康檢查等。

參數標識由6個屬性組成,分別是parameters、name、description、displayname、value、type。

1.parameters:參數定義起始標志

2.description:參數的提示信息

3.displayname:具體語義信息

4.name:與引用參數名稱對應,表示描述信息為對應的引用參數

5.value:參數默認值

6.type:代表不同的樣式,客戶端根據type類型,呈現具體樣式

以kubernetes中的namespace對象為例,模板的完整定義如下代碼所示:

基于模板引擎的容器部署框架

由上述代碼中,包含兩部分內容:部署模板,參數說明。

部署模板如下代碼塊所示:

部署模板定義對象創建的所有內容,模板中字段含義描述如下:

1.apiVersion:通用選項,定義版本信息

2.Kind:定義對象類型,區別不同的對象

3.Metadata:定義部署時指定的參數鍵值對

4${}:表示參數的引用值,即可替代參數

參數標識,定義了客戶端動態獲取參數后的展現形態,下面代碼示例參數標識定義:

基于模板引擎的容器部署框架

參數標識定義統一的格式。通過語義轉化,把繁雜的配置轉變為用戶易于理解的方式。客戶端讀取到Parameters標識,通過模板解析器抽象可輸入參數,展示需要的Form表單,提供用戶輸入的功能。

模板定義由對Kubernetes或者Docker熟悉的專業人員編寫。可以根據具體的業務場景,進行實時和動態調整,保證部署的靈活性和擴展性。同時,系統根據不同的對象,提供基礎模板。用戶在具備一定知識背景的基礎上同樣可以進行模板制作和維護。

模板解析器

通過輸入輸出流獲取模板中參數標識,進行語義轉化,得到易于理解的配置參數。模板解析器的工作原理如下圖2所示:

基于模板引擎的容器部署框架

圖2  模板解析器的工作原理

客戶端發起創建對象請求,服務端收到請求以后,會根據請求的對象類型自關聯基礎模板。通過文件流的方式,讀取基礎模板,讀取過程中以Parameters標志為起始點,獲取參數描述信息。解析完成,參數以Json串的方式返回客戶端,客戶端根據Json串,動態生成需要用戶填寫的表單,用戶根據表單內容完成參數輸入操作。

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國外vps服務器租用 夢飛云服務器租用 版權所有 ? 粵ICP備11019662號

主站蜘蛛池模板: 宜丰县| 鄂托克前旗| 若尔盖县| 靖远县| 平塘县| 荣昌县| 佛冈县| 韶关市| 田东县| 黎川县| 黄山市| 清新县| 望都县| 兴文县| 松江区| 沙雅县| 普兰店市| 聂荣县| 右玉县| 康马县| 沙河市| 孟州市| 九寨沟县| 茶陵县| 南部县| 佛教| 张家口市| 青田县| 洛宁县| 赞皇县| 健康| 利辛县| 常德市| 苏尼特左旗| 九寨沟县| 婺源县| 新平| 西昌市| 汝州市| 同仁县| 岑溪市|