0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

請問Docker和傳統(tǒng)虛擬機有什么區(qū)別呢?

小林coding ? 來源:小白debug ? 2024-03-29 15:54 ? 次閱讀

我有一個程序員朋友,他每年情人節(jié)都要送女朋友一臺服務(wù)器。

他說:“誰不想在過節(jié)當(dāng)天收到一臺4核8g的服務(wù)器呢?”

“萬一對方不要,我還能留著自己用。” 給他一次過節(jié)的機會,他能把浪漫玩的明明白白。

所以今年情人節(jié),他自己一個人過。

太痛了,是那種布洛芬都不知道他哪里痛的痛。

雖然人跑了,但起碼還有服務(wù)器陪著他,但屏幕前依然單身的你呢?你連服務(wù)器都沒有。那么問題就來了,你買過服務(wù)器嗎?看著云廠商各種產(chǎn)品是不是有點懵。

你知道 ecs,vps,docker 容器 是什么嗎?它們有啥區(qū)別呢?

我們今天來聊聊這個話題。

物理服務(wù)器是什么?

我的柜子里有一臺大學(xué)時候用的廢棄電腦,自帶 cpu、 內(nèi)存等硬件操作系統(tǒng),根據(jù)一些教程視頻,是可以做成服務(wù)器的。

像這樣一臺看得見摸得著的機器,其實就是云廠商頁面里提到的物理服務(wù)器物理機。不同廠商叫法不同,有的廠商叫它獨立服務(wù)器。

跟家里電腦不一樣的是,云廠商的機器性能更好,核數(shù)更高,還有專業(yè)的機房和空調(diào)伺候著。那既然這樣,是不是就不需要買云廠商的服務(wù)器呢?

糊涂啊,一臺家用電腦跑起來 50 瓦,一年下來電費都好幾百,還得花精力伺候著不讓它關(guān)機,還真不如買別人家的劃算。

但問題又來了,云廠商的物理服務(wù)器一般都是核數(shù)較高,很多時候我們根本不需要這么高配的機器。怎么辦呢?這一點云廠商當(dāng)然也考慮到了。

vps 和 ecs 是什么

云廠商一般會將一臺物理服務(wù)器分割成多個虛擬機。它跟我們在 windows 用VMware,VirtualBox建的虛擬機其實是一回事。每個虛擬機都擁有獨立的操作系統(tǒng)、資源(比如 CPU、內(nèi)存、存儲空間)和公網(wǎng) IP 地址。然后對外出售,這樣的虛擬機就是所謂的VPS(Virtual Private Server,虛擬專用服務(wù)器)。

c1a089e0-ed9b-11ee-a297-92fbcf53809c.jpg

VPS

但傳統(tǒng) VPS 有個缺點,不支持用戶自主升降級,它的資源是預(yù)先分配的,不易動態(tài)調(diào)整。舉個例子,假設(shè)你買了1c1g的服務(wù)器,想在頁面上點點兩下升級成2c2g,這在傳統(tǒng) VPS 里是不支持的。如果給 VPS 加入自主升降級的功能,那它就成了ECS(Elastic Compute Service,彈性計算服務(wù))

c1b4671c-ed9b-11ee-a297-92fbcf53809c.jpg

ECS支持自主升降級

用戶可以根據(jù)需要隨時調(diào)整 CPU、內(nèi)存、磁盤和帶寬,主打一個彈性。我們可以利用 ecs 學(xué)習(xí) linux 命令,部署個人博客,做私人云盤存儲,甚至可以將自己做的游戲部署到 ecs 上邀請朋友來玩。

c1c4f6d6-ed9b-11ee-a297-92fbcf53809c.jpg

ecs的用途

docker 容器 是什么

買了 ecs 后,我們一般會開始部署自己的軟件應(yīng)用。機器少的時候手動部署問題不大,機器多了后各種問題就來了,其中最明顯的就是,ecs 之間,如果底層操作系統(tǒng)不同,比如有些是ubuntu,有些是centos,部署應(yīng)用的時候就會有各種環(huán)境問題。如果能讓軟件帶著操作系統(tǒng)環(huán)境一起去部署就好了,最簡單的方案是將軟件和操作系統(tǒng)一起打包成虛擬機部署在ecs中。但這樣就成了在 ECS(也就是虛擬機)中再運行一個完整的虛擬機,太重了。有解法嗎?

c1c8edc2-ed9b-11ee-a297-92fbcf53809c.jpg

虛擬機上再運行一個虛擬機

有。既然多加一個操作系統(tǒng)太重,那我就只打包軟件和系統(tǒng)依賴庫加配置就好了。然后將這部分系統(tǒng)文件掛到 ecs 的操作系統(tǒng)下,利用一個叫Namespace的能力讓它看起來就像是一個獨立操作系統(tǒng)一樣。再利用一個叫Cgroup的能力限制它能使用的計算資源。這就省掉了一層笨重的操作系統(tǒng),同時還讓軟件輕松跑在各類操作系統(tǒng)上。這就是我們常說的Docker 容器技術(shù)。

c1cc8662-ed9b-11ee-a297-92fbcf53809c.jpg

Docker容器是什么

總的來說就是,物理服務(wù)器上跑 ecs,ecs 跑 Docker 容器。多個 Docker 容器共享一個 ecs 實例 操作系統(tǒng)內(nèi)核。

c1d6b3bc-ed9b-11ee-a297-92fbcf53809c.jpg

ecs和docker容器的關(guān)系

服務(wù)器怎么選

現(xiàn)在我們了解完他們的區(qū)別了,但服務(wù)器款式那么多,我們怎么選?如果你是小公司老板或個體創(chuàng)業(yè)者,想要好一點的物理機又不想自建機房,那可以考慮買獨立服務(wù)器。

如果你是像我一樣的個人開發(fā)者,或者是學(xué)生,那無腦沖云服務(wù)器 ecs。有了它,我們可以很方便的在上面部署 docker 容器,平時做做實驗,部署博客,完全夠用了。

c1e9b14c-ed9b-11ee-a297-92fbcf53809c.jpg

容器里跑應(yīng)用

這時候問題很多的小明就要問了,為什么不選擇大廠商的云服務(wù)器?是用不起嗎?喂喂喂,怎么說話呢?不是大廠云服務(wù)器用不起,而是小廠商的更有性價比。就以同樣是香港 1 核 1g 的 ecs 為例,小廠商一個月只要 1 碗紅燒牛肉面。大廠商則要 3 碗。

同樣是 24 核物理服務(wù)器,小廠商千把塊搞定,大廠商就是它的好幾倍。

這省下來的錢,能買多少份19 塊 95條的南極人內(nèi)褲?

這時候問題很多的小明就又要問了,為什么要選香港服務(wù)器?大陸的不是更便宜嗎?

那是因為香港服務(wù)器沒有備案的煩惱,而且大陸也能輕松訪問,有時候一些熱點技術(shù)一出來,比如時下火熱的 ai 技術(shù),網(wǎng)站越快上線就能越早拿到搜索引擎排名,備案得等個把月,這一等就白白錯失了很多成為下一個馬總的機會。

最后

好了,如果你覺得這期文章對你有幫助,記得轉(zhuǎn)發(fā)給你那不成器的兄弟。

最后遺留一個問題, docker 大概是什么你是了解了,那你知道它的內(nèi)部架構(gòu)嗎?



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6689

    瀏覽量

    123142
  • 虛擬機
    +關(guān)注

    關(guān)注

    1

    文章

    905

    瀏覽量

    28022
  • ECS
    ECS
    +關(guān)注

    關(guān)注

    0

    文章

    48

    瀏覽量

    20088
  • VMware
    +關(guān)注

    關(guān)注

    1

    文章

    292

    瀏覽量

    21553
  • Docker
    +關(guān)注

    關(guān)注

    0

    文章

    453

    瀏覽量

    11792

原文標(biāo)題:面試官:Docker和傳統(tǒng)虛擬機有什么區(qū)別?

文章出處:【微信號:小林coding,微信公眾號:小林coding】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    請問QTE可以同幾種JAVA虛擬機集成

    《嵌入式linux應(yīng)用開發(fā)完全手冊》第500頁中有講:“QTE可以同幾種JAVA虛擬機集成。JAVA程序可以基于QTE的工作平臺上運行,提供同源程序相同的效果”我就是想請問,是否那個版本的QTE是
    發(fā)表于 05-24 05:45

    FPGA和單片什么區(qū)別

    到底FPGA和單片什么區(qū)別?根據(jù)我的經(jīng)驗,可以用下面進行概述。
    發(fā)表于 02-11 08:00 ?4.3w次閱讀

    Docker監(jiān)控實戰(zhàn)分析

    的「輕」也只是相對于傳統(tǒng)虛擬機而已。傳統(tǒng)虛擬機Docker 的對比如圖: 從圖中可以看出 Dock
    發(fā)表于 10-13 17:05 ?2次下載
    <b class='flag-5'>Docker</b>監(jiān)控實戰(zhàn)分析

    Linux容器和虛擬機之間的區(qū)別差異分析

    自從Linux上的容器變得流行以來,了解Linux容器和虛擬機之間的區(qū)別變得更加棘手。本文將向您提供詳細信息,以了解Linux容器和虛擬機之間的差異。
    的頭像 發(fā)表于 12-27 13:52 ?9010次閱讀

    什么是 DockerDocker傳統(tǒng)虛擬機什么區(qū)別?

    Docker 容器將軟件以及它運行安裝所需的一切文件(代碼、運行時、系統(tǒng)工具、系統(tǒng)庫)打包到一起,這就保證了不管是在什么樣的運行環(huán)境,總是能以相同的方式運行。就好像 Java 虛擬機一樣,“一次編寫
    的頭像 發(fā)表于 03-16 14:28 ?5.2w次閱讀
    什么是 <b class='flag-5'>Docker</b>?<b class='flag-5'>Docker</b>與<b class='flag-5'>傳統(tǒng)</b>的<b class='flag-5'>虛擬機</b><b class='flag-5'>有</b><b class='flag-5'>什么區(qū)別</b>?

    Docker是什么它和虛擬機到底什么區(qū)別

    Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,也可以實現(xiàn)虛擬化。容器是完全使用沙盒機制,相互之間不會有
    的頭像 發(fā)表于 12-29 11:37 ?3893次閱讀

    Docker容器與虛擬機區(qū)別

    我曾經(jīng)將Docker容器視為輕量級,精簡的虛擬機。 進行這種比較是有道理的,因為至少在Docker的最初市場中,總是將其與虛擬機進行比較-例如,"
    的頭像 發(fā)表于 05-03 17:17 ?7629次閱讀

    虛擬機是什么,具體是做什么的?

    虛擬機簡單來講就是一款虛擬的機器,并不是真實存在的物體,在已經(jīng)安裝過系統(tǒng)的電腦或者其他設(shè)備上,可以通過一些軟件模擬出一款虛擬機,然后就可以在虛擬機上安裝一些系統(tǒng)應(yīng)用,通過軟件模擬能夠擁
    的頭像 發(fā)表于 10-23 17:23 ?1.6w次閱讀

    容器、Docker、虛擬機區(qū)別

    移植的系統(tǒng)。它不僅簡化了打包應(yīng)用的流程,也簡化了打包應(yīng)用的庫和依賴,甚至整個操作系統(tǒng)的文件系統(tǒng)能被打包成一個簡單的可移植的包,這個包可以被用來在任何其他運行Docker的機器上使用。 容器和虛擬機具有相似的資源隔離和分配方式,容器虛擬
    的頭像 發(fā)表于 11-05 09:41 ?2935次閱讀

    裸機服務(wù)器與虛擬什么區(qū)別

    虛擬化設(shè)置是裸機服務(wù)器的主要替代品。一些修改決定了商業(yè)環(huán)境的價值。首先,讓我們描述虛擬機,然后說明裸機服務(wù)器與虛擬什么區(qū)別? 就云實例而
    的頭像 發(fā)表于 02-24 16:42 ?3159次閱讀

    如何區(qū)分虛擬機Docker

    首先,大家需要明確一點,Docker容器不是虛擬機。 2014年,當(dāng)我第一次接觸Docker的時候,我把它比做一種輕量級的虛擬機。這樣做無可厚非,因為
    的頭像 發(fā)表于 02-14 11:36 ?1057次閱讀
    如何區(qū)分<b class='flag-5'>虛擬機</b>與<b class='flag-5'>Docker</b>

    XR虛擬拍攝和傳統(tǒng)綠幕拍攝什么區(qū)別

    XR虛擬拍攝和傳統(tǒng)綠幕拍攝什么區(qū)別 隨著科技的不斷發(fā)展,電影和電視劇的制作技術(shù)也在不斷升級。XR虛擬拍攝和
    的頭像 發(fā)表于 06-25 16:57 ?683次閱讀

    Docker虛擬機區(qū)別

    Docker虛擬機是兩種不同的虛擬化技術(shù),它們在實現(xiàn)方式、資源消耗、運行性能等方面存在許多差異。本文將會詳細介紹它們的區(qū)別。 一、實現(xiàn)方式 1.1
    的頭像 發(fā)表于 11-23 09:37 ?9085次閱讀

    docker虛擬機區(qū)別

    整個Docker由客戶端、服務(wù)端和倉庫構(gòu)成
    的頭像 發(fā)表于 12-06 10:08 ?613次閱讀
    <b class='flag-5'>docker</b>和<b class='flag-5'>虛擬機</b><b class='flag-5'>有</b>何<b class='flag-5'>區(qū)別</b>?

    虛擬機和模擬器哪些異同點和區(qū)別

    虛擬機和模擬器哪些異同點和區(qū)別? 虛擬機和模擬器是計算機領(lǐng)域中常用的技術(shù),它們可以在一臺計算機上同時運行多個操作系統(tǒng)或環(huán)境。虛擬機和模擬器
    的頭像 發(fā)表于 12-27 16:26 ?2571次閱讀