999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Docker技術在氣象云平臺服務中的研究

2020-10-21 12:12:00楊永毅趙芳趙思亮
機械制造與自動化 2020年5期
關鍵詞:服務系統

楊永毅,趙芳,趙思亮

(重慶市氣象信息與技術保障中心,重慶 401147)

0 引言

近年來重慶市氣象局開始進行虛擬資源池建設,截至目前為止,已創建并分配虛擬機300多個,多個氣象業務平臺由物理服務器移植到虛擬機。虛擬資源池的建設,實現了硬件資源的集中式管理、集約化分配,提高了資源的利用率。

當前出現了多種虛擬化技術,包括VMware vSphere、KVM、Docker等。其中VMware vSphere是一個虛擬化平臺,將CPU、存儲和網絡資源等聚合為一個虛擬資源池,并使用統一的軟件,創建和運行虛擬機和虛擬設備[1]。然而隨著虛擬資源池規模的不斷擴大,VMware vSphere性能損耗高,體量占用大,遷移擴展復雜等弊端逐漸凸顯。KVM是一個開源軟件,基于內核的虛擬化技術,實際是嵌入系統的一個虛擬化模塊,虛擬機使用Linux自身的調度器進行管理[2]。KVM與Linux內核集成,運行速度快,但KVM需要CPU中虛擬化功能的支持,只可在具有虛擬化支持的CPU上運行[3],對硬件環境要求較高。而Docker技術將應用程序與基礎架構分離,以管理應用程序相同的方式來管理基礎架構。本文擬使用Docker技術中的容器發現發布、進程隔離、彈性伸縮,計算環境遷移等功能,解決氣象云平臺服務中遇到的虛擬化問題。

本文通過對Docker技術的深入剖析,結合重慶市氣象局實際業務環境,提出了Docker技術在氣象云平臺服務中的應用方法。并根據提出的方法,搭建了一個MySQL數據庫容器,實現了Docker技術在氣象服務中的應用。

1 Docker技術研究

Docker是2013年由美國dotCloud公司開源的一個基于LXC的高級容器引擎,其源代碼托管在Github上。Docker使用go語言開發,并遵從Apache2.0協議開源。Docker容器引擎讓開發者可以打包應用及依賴包到可移植容器中,容器可發布到任意版本的Linux服務器上,容器是完全使用沙箱機制,相互之間沒有任何接口[4-7]。

1.1 Docker與虛擬機技術比較

傳統方式的虛擬機是在硬件層面實現虛擬化,需要有額外的虛擬機管理應用和虛擬機操作系統層。每套虛擬系統都需要配置,軟件環境也需逐一安裝部署,缺乏靈活性。Docker容器是在操作系統層面上實現虛擬化,直接復用本地主機的操作系統。從資源占用上來說,更加輕量級;從應用上來說,針對容器的虛擬移植性更強,靈活性更高[8]。Docker與傳統虛擬機技術的區別如圖1所示。

圖1 傳統虛擬方式與Docker對比

1.2 Docker架構研究

Docker采用的是Client/Server架構,客戶端向服務器發送請求,服務器負責構建、運行和分發容器??蛻舳撕头掌骺梢赃\行在同一個Host上,客戶端也可以通過socket或REST API與遠程服務器通信。Docker機制包括Image(鏡像)、Container(容器)和Repository(倉庫)。Docker鏡像類似于虛擬機鏡像,為只讀模板,包含了文件系統。容器是從鏡像創建的運行實例,可啟動、開始、停止、刪除,而容器間是相互隔離,獨立進程的。鏡像是創建容器的基礎,倉庫是Docker集中存放鏡像文件的場所[9-10]。Docker架構如圖2所示。

圖2 Docker系統架構

2 Docker在氣象云平臺中的應用研究

根據氣象云計算的資源共享層次,氣象云平臺可以劃分為3層:IaaS(基礎設施即服務)、PaaS(平臺即服務)和SaaS(軟件即服務),如圖3所示。IaaS的發展以虛擬機為最小粒度資源調度單位,PaaS在IaaS基礎上發展而來[11]。隨著氣象業務越來越復雜,出現了資源浪費、調度困難、標準不統一等問題,而容器技術可以解決以上問題。本課題依托重慶市氣象局現有的信息環境,提出Docker技術在重慶氣象云平臺的應用方法。

圖3 IaaS、PaaS、SaaS分類

2.1 Docker在氣象微服務中的應用

重慶市氣象局從2007年開始建立重慶市氣象信息共享服務接口系統,采用SOA架構,通過服務接口的方式提供數據共享服務,同時規定新建氣象信息系統必須遵循SOA標準。

Docker非常適合SOA的微服務架構,每一個單獨的Dockerfile代表一個微服務,這些微服務與SOA架構的傳統服務不同。傳統的服務通常是整體性的,模塊化和重用化困難,微服務則專注于體量小、重用性高的組件,盡可能與運行環境獨立。Docker提供服務的隔離,可以部署在多種環境執行微服務。基于Docker容器的部署,可以進一步深化SOA的氣象微服務架構,提高整個系統架構的可移植性、可擴展性、可編排性。

2.2 Docker在氣象系統開發環境中的應用

在重慶市氣象局實際的氣象系統開發中,大多是基于虛擬機來完成。開發測試環境以及生產環境需要多次安裝與部署,包括應用服務器、數據庫服務器、中間件服務器等。配置工作重復繁瑣,需要花費大量時間。同時,由于配置的一致性問題,開發環境搭建失敗的案例時有發生。

基于Docker的虛擬化技術,可將氣象開發環境虛擬成多個鏡像,集中管理。同時可以定制各種開發所需的個性鏡像及容器。Docker的快速部署能力,降低了環境部署的時間消耗,縮短了系統開發周期。輕量級的容器部署,減少了系統資源的消耗,同時又充分保證了不同開發環境的獨立。

2.3 Docker在氣象系統彈性部署中的應用

在實際業務中,氣象系統的彈性部署大多依賴于人工。系統管理員根據氣象系統的資源使用率、并發量、系統性能等監控信息,進行氣象系統的橫向擴展。這種被動的系統擴張,容易造成資源的浪費,并且隨著系統規模的不斷增長,系統間的復雜度不斷增加,氣象系統維護的工作量激增。

基于Docker的容器虛擬化技術,具有輕量級、靈活、啟動快速的優點,非常適合氣象系統的彈性部署。結合Kubernetes等調度和編排技術,使得Docker集群易于部署、維護和擴展。Docker提高了系統資源的使用率,增加了系統并發處理能力,從而實現了氣象系統的彈性伸縮。

2.4 Docker在氣象云多租戶中的應用

提供氣象業務多租戶服務是氣象云平臺最重要的功能。使用Docker,可為租戶應用層的多個實例創建隔離環境。將虛擬機和Docker技術相結合,可以增強不同租戶、不同安全需求容器間的隔離性,同時避免強隔離帶來的性能損失。租戶租用容器云平臺的資源,用以氣象應用服務的托管、開發、部署運維。容器云平臺為租戶提供服務注冊、服務發現、服務配置、監控、預警告警、負載均衡等功能。

3 測試分析

為了驗證Docker技術在氣象云平臺服務中的可行性,本文選用氣象服務中最常用的數據服務作為測試用例,使用Docker技術在云資源中搭建一個MySQL容器,提供氣象數據服務。與傳統虛擬機提供的數據服務相比較,測試基于Docker技術的氣象數據服務的性能。

本文使用兩個CPU16核,內存32G的虛擬機進行測試,一個直接在系統中安裝MySQL數據庫,一個在系統中安裝Docker容器,然后在容器中安裝MySQL數據庫,Docker的搭建流程如圖4所示。

圖4 Docker搭建流程

Docker搭建的具體步驟如下:

1) 在虛擬機中安裝Centos 7.0系統,為Docker的運行提供環境支持。安裝完成后,進行環境變量的設置。

2) 配置yum源倉庫,通過yum源下載Docker安裝包。yum源倉庫配置如下:

[dockerrepo]

name=Docker Repository

baseurl=https://yum.dockerproject.org/repo/main/centos/7/

enabled=1

gpgcheck=1

gpgkey=https://yum.dockerproject.org/gpg

yum源倉庫配置完成后,執行#yum install docker-engine命令,進行Docker的安裝。

3) 啟動Docker,運行命令service docker start,測試Docker是否正常運行,運行命令docker run hello-world,正常運行情況如圖5所示。

圖5 Docker運行示例

4) 連接Docker公共倉庫下載MySQL鏡像,Docker公共倉庫默認為Docker Hub鏡像倉庫。使用命令進行鏡像的搜索和下載:

#docker search mysql

#docker pull mysql

5) 下載鏡像后,檢查本機安裝的鏡像和本機運行的容器,使用命令:

#docker s

#docker ps -a

6) 啟動MySQL容器,本文在1臺虛擬機上啟動了2個MySQL容器,用以測試容器的性能,2個容器的啟動命令如下:

#docker run --name mysqltest1 -v /home/mysqltest1/conf/my.cnf:/etc/my.cnf -v /home/mysqltest1/logs:/logs -v /home/mysqltest1/data:/mysql_data -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

#docker run --name mysqltest2 -v /home/mysqltest2/conf/my.cnf:/etc/my.cnf -v /home/mysqltest2/logs:/logs -v /home/mysqltest2/data:/mysql_data -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

啟動容器后,使用#docker ps查看容器運行狀態。

完成Docker容器搭建后,本文分別向虛擬機上的MySQL實例和Docker容器中的MySQL數據庫寫入氣象自動站小時觀測數據,寫入數據量為10萬條和100萬條。測試結果如表1所示。

表1 Docker容器寫入測試結果

通過測試,可以發現基于輕量級數據庫,Docker容器和虛擬機的入庫效率相當,而Docker資源利用率更高,系統啟動速度更快,移植性更高,更適合氣象云平臺的服務要求。

4 結語

本文引入的Docker容器在操作系統層面上實現了虛擬化,復用本地主機的操作系統,更加輕量級。實驗證明,與虛擬機相比,容器在啟動速度、復雜度、并發性、資源利用率等方面均優于虛擬機。在氣象云服務平臺建設中,可以根據實際業務確定適用場景,將虛擬機和容器有機地結合起來,有效提高平臺的可用性、可靠性以及伸縮性。后期氣象云服務平臺會逐漸形成數量龐大且關系復雜的容器集群,可以使用Kubernetes容器編排技術進行容器集群的資源管理、調度以及負載均衡,進一步提高氣象云服務平臺的計算服務能力。

猜你喜歡
服務系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
半沸制皂系統(下)
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
主站蜘蛛池模板: 好久久免费视频高清| 欧美成人综合在线| 草逼视频国产| 欧美性爱精品一区二区三区| 国产精品永久不卡免费视频| 亚洲国产欧美自拍| 日本精品视频一区二区| 亚洲伊人久久精品影院| 天天爽免费视频| 亚洲精品无码AV电影在线播放| 国产欧美视频综合二区| 国产精品成人免费视频99| 国产在线97| 99人体免费视频| 国产免费黄| 国产尤物在线播放| 精品人妻一区二区三区蜜桃AⅤ| 日本高清免费不卡视频| 色婷婷综合在线| 99视频精品全国免费品| 中文字幕一区二区人妻电影| 67194在线午夜亚洲| 精品国产一区二区三区在线观看| 久久婷婷人人澡人人爱91| 色亚洲激情综合精品无码视频| 日韩欧美中文字幕一本| 日韩在线2020专区| 久久久久国产精品嫩草影院| 无码高清专区| 一本大道香蕉中文日本不卡高清二区| 91亚洲精品国产自在现线| 精品黑人一区二区三区| 欧美日韩午夜| 欧美色伊人| 国产丝袜无码一区二区视频| 九色在线视频导航91| 成人午夜天| 中文字幕欧美日韩| 国产日韩欧美精品区性色| 中文字幕久久亚洲一区| 国产亚洲成AⅤ人片在线观看| 亚洲中久无码永久在线观看软件 | 国产精品久久自在自线观看| 国产精品免费p区| 国产精品女同一区三区五区| 免费国产一级 片内射老| 激情六月丁香婷婷| 亚洲视频在线青青| 拍国产真实乱人偷精品| 黄色免费在线网址| 亚洲第一成人在线| 国产在线视频自拍| aaa国产一级毛片| 国产jizz| 岛国精品一区免费视频在线观看| 免费人欧美成又黄又爽的视频| 91精品国产一区| 亚洲 欧美 日韩综合一区| jizz在线观看| jijzzizz老师出水喷水喷出| 欧洲亚洲欧美国产日本高清| 在线欧美日韩国产| 精品人妻无码中字系列| 亚洲熟女中文字幕男人总站| 国产视频大全| 中文字幕在线永久在线视频2020| 国产情侣一区二区三区| 国产一级α片| 国产精品香蕉在线| 国产成人调教在线视频| 九色在线视频导航91| 亚洲欧洲日韩国产综合在线二区| 精品色综合| 亚洲无码高清免费视频亚洲| 亚洲AV无码乱码在线观看裸奔| 国产精品综合久久久| 亚洲中文字幕精品| 精品福利视频导航| 在线播放91| 青青草国产在线视频| 久久亚洲高清国产| 亚洲欧美日韩动漫|