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

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

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

云計(jì)算是什么樣玩的和KVM與K8S等這些名詞的意思及在云計(jì)算系統(tǒng)位置

工業(yè)互聯(lián)網(wǎng)前線 ? 來(lái)源:未知 ? 作者:易水寒 ? 2019-07-20 10:14 ? 次閱讀

云計(jì)算”這個(gè)詞,相信大家都非常熟悉。

作為信息科技發(fā)展的主流趨勢(shì),它頻繁地出現(xiàn)在我們的眼前。伴隨它一起出現(xiàn)的,還有這些概念名詞——OpenStack、Hypervisor、KVM、Docker、K8S...

這些名詞概念,全部都屬于云計(jì)算技術(shù)領(lǐng)域的范疇。

對(duì)于初學(xué)者來(lái)說,理解這些概念的具體含義并不是一件容易的事情。

所以,這篇文章將給大家做一個(gè)通俗易懂的介紹,解釋這些云計(jì)算概念以及它們之間的關(guān)系,希望對(duì)大家入門有所幫助。

01

什么是云計(jì)算

在介紹那些古怪名詞之前,先介紹一下云計(jì)算。

以前電腦被發(fā)明的時(shí)候,還沒有網(wǎng)絡(luò),每個(gè)電腦(PC),就是一個(gè)單機(jī)。

這臺(tái)單機(jī),包括CPU、內(nèi)存、硬盤、顯卡等硬件。用戶在單機(jī)上,安裝操作系統(tǒng)和應(yīng)用軟件,完成自己的工作。

后來(lái),有了網(wǎng)絡(luò)(Network),單機(jī)與單機(jī)之間,可以交換信息,協(xié)同工作。

再后來(lái),單機(jī)性能越來(lái)越強(qiáng),就有了服務(wù)器(Server)。人們發(fā)現(xiàn),可以把一些服務(wù)器集中起來(lái),放在機(jī)房里,然后讓用戶通過網(wǎng)絡(luò),去訪問和使用機(jī)房里的計(jì)算機(jī)資源。

再再后來(lái),小型網(wǎng)絡(luò)變成了大型網(wǎng)絡(luò),就有了互聯(lián)網(wǎng)(Internet)。小型機(jī)房變成了大型機(jī)房,就有了IDC(Internet Data Center,互聯(lián)網(wǎng)數(shù)據(jù)中心)。

當(dāng)越來(lái)越多的計(jì)算機(jī)資源和應(yīng)用服務(wù)(Application,例如看網(wǎng)頁(yè),下電影)被集中起來(lái),就變成了——“云計(jì)算(Cloud Computing)”。無(wú)數(shù)的大型機(jī)房,就成了“云端”。

云計(jì)算

是不是覺得太簡(jiǎn)單?別急,開始深入。

云計(jì)算的道理是簡(jiǎn)單的,說白了,就是把計(jì)算機(jī)資源集中起來(lái),放在網(wǎng)絡(luò)上。但是,云計(jì)算的實(shí)現(xiàn)方式,就非常復(fù)雜了。

舉個(gè)例子,如果你只是在公司小機(jī)房擺了一個(gè)服務(wù)器,開個(gè)FTP下載服務(wù),然后用于幾個(gè)同事之間的電影分享,當(dāng)然是很簡(jiǎn)單的。

如果是“雙11”的淘寶購(gòu)物節(jié),全球幾十億用戶訪問阿里巴巴的淘寶網(wǎng)站,單日幾十PB(1PB=1024TB=1024×1024GB)的訪問量,每秒幾百GB的流量……這個(gè),就不是幾根網(wǎng)線幾臺(tái)服務(wù)器能解決的了。

這時(shí),需要設(shè)計(jì)一個(gè)超大容量、超高并發(fā)(同時(shí)訪問)、超快速度、超強(qiáng)安全的云計(jì)算系統(tǒng),才能滿足業(yè)務(wù)平穩(wěn)運(yùn)行的要求。

這才是云計(jì)算的復(fù)雜之處。

剛才說了,我們把計(jì)算機(jī)資源放在云端。這個(gè)計(jì)算機(jī)資源,實(shí)際上分為好幾種層次:

第一層次,是最底層的硬件資源,主要包括CPU(計(jì)算資源),硬盤(存儲(chǔ)資源),還有網(wǎng)卡(網(wǎng)絡(luò)資源)等。

第二層次,要高級(jí)一些,我不打算直接使用CPU、硬盤、網(wǎng)卡,我希望你把操作系統(tǒng)(例如Windows、Linux)裝好,把數(shù)據(jù)庫(kù)軟件裝好,我再來(lái)使用。

第三層次,更高級(jí)一些,你不但要裝好操作系統(tǒng)這些基本的,還要把具體的應(yīng)用軟件裝好,例如FTP服務(wù)端軟件、在線視頻服務(wù)端軟件等,我可以直接使用服務(wù)。

這三種層次,就是大家經(jīng)常聽到的IaaS、Paas、SaaS。

SaaS: Software-as-a-Service(軟件即服務(wù))

PaaS: Platform-as-a-Service(平臺(tái)即服務(wù))

IaaS: Infrastructure-as-a-Service(基礎(chǔ)設(shè)施即服務(wù))

再補(bǔ)一張圖,可能更直觀:

目前主流的云計(jì)算服務(wù)提供商,例如亞馬遜AWS、阿里云、華為云、天翼云、騰訊云,說白了,都是為大家提供以上三個(gè)層次的云資源。你想要什么,它們就提供什么。你想要多少,它們就提供多少。

這么多樣化多層次的云計(jì)算服務(wù),阿里、華為們又是怎么提供的呢?

難道說,是人工安排?——

如果你要八核CPU、16GB內(nèi)存、500GB硬盤的服務(wù)器,阿里臨時(shí)安排工程師幫你組裝?如果你要裝CentOS 7.2(一種類Linux操作系統(tǒng)),MySQL 5.5.60(一種數(shù)據(jù)庫(kù)系統(tǒng)),阿里也臨時(shí)讓工程師幫你安裝配置?

這顯然是不可能的,耗不起人力,也等不起時(shí)間。

于是,就有了各種軟件和平臺(tái),負(fù)責(zé)對(duì)資源進(jìn)行快速調(diào)用和集中管理。

02

什么是虛擬化

如果要對(duì)物理資源進(jìn)行管理,第一步,就是“虛擬化”。

虛擬化是云計(jì)算的基礎(chǔ)。簡(jiǎn)單來(lái)說,虛擬化就是在一臺(tái)物理服務(wù)器上,運(yùn)行多臺(tái)“虛擬服務(wù)器”。這種虛擬服務(wù)器,也叫虛擬機(jī)(VM,Virtual Machine)。

從表面來(lái)看,這些虛擬機(jī)都是獨(dú)立的服務(wù)器,但實(shí)際上,它們共享物理服務(wù)器的CPU、內(nèi)存、硬件、網(wǎng)卡等資源。

物理機(jī),通常稱為“宿主機(jī)(Host)”。虛擬機(jī),則稱為“客戶機(jī)(Guest)”。

誰(shuí)來(lái)完成物理資源虛擬化的工作呢?

就是大名鼎鼎的Hypervisor。

Hypervisor,漢譯過來(lái)是“超級(jí)監(jiān)督者”,也叫做VMM(Virtual Machine Monitor,虛擬機(jī)監(jiān)視器)。它不是一款具體的軟件,而是一類軟件的統(tǒng)稱。

Hypervisor分為兩大類:

第一類,hypervisor直接運(yùn)行在物理機(jī)之上。虛擬機(jī)運(yùn)行在hypervisor之上。第二類,物理機(jī)上安裝正常的操作系統(tǒng)(例如Linux或Windows),然后在正常操作系統(tǒng)上安裝hypervisor,生成和管理虛擬機(jī)。

像VMware、KVM、Xen、Virtual Box,都屬于Hypervisor。

VMware大家應(yīng)該很熟悉,就是VMware Workstation。學(xué)習(xí)Linux的話,很多人都是在windows系統(tǒng)下安裝WMware,然后創(chuàng)建Linux虛擬機(jī)。

但是,真正厲害的,是KVM(kernel-based virtual machine,基于Linux內(nèi)核的虛擬機(jī))。它是目前最熱門最受追捧的虛擬化方案。

KVM這樣的Hypervisor軟件,實(shí)際上是提供了一種虛擬化能力,模擬CPU的運(yùn)行,更為底層。但是它的用戶交互并不良好,不方便使用。

于是,為了更好地管理虛擬機(jī),就需要OpenStack這樣的云管理平臺(tái)。

關(guān)于OpenStack,它有點(diǎn)像個(gè)商店,負(fù)責(zé)管理商品(計(jì)算資源、存儲(chǔ)資源、網(wǎng)絡(luò)資源等),賣給用戶,但它本身不制造商品(不具備虛擬化能力),它的商品,來(lái)自于KVM。當(dāng)然,如果不用KVM,也可以用Xen等其它hypervisor。

OpenStack的管理界面,比命令行好多了吧?

請(qǐng)記住,上面所說的幾個(gè)概念,包括VM、KVM、OpenStack等,都主要屬于IaaS(基礎(chǔ)設(shè)施即服務(wù))。這個(gè)不難理解吧?

03

什么是容器

那么,容器是什么呢?大佬們經(jīng)常說的Docker和K8S,又是什么呢?

前面我們介紹了虛擬化。人們?cè)谑褂锰摂M化一段時(shí)間后,發(fā)現(xiàn)它存在一些問題:

不同的用戶,有時(shí)候只是希望運(yùn)行各自的一些簡(jiǎn)單程序,跑一個(gè)小進(jìn)程。為了不相互影響,就要建立虛擬機(jī)。如果建虛擬機(jī),顯然浪費(fèi)就會(huì)有點(diǎn)大,而且操作也比較復(fù)雜,花費(fèi)時(shí)間也會(huì)比較長(zhǎng)。

而且,有的時(shí)候,想要遷移自己的服務(wù)程序,就要遷移整個(gè)虛擬機(jī)。顯然,遷移過程也會(huì)很復(fù)雜。

有沒有辦法更靈活快速一些呢?

有,這就引入了“容器(Container)”。

容器也是虛擬化,但是屬于“輕量級(jí)”的虛擬化。它的目的和虛擬機(jī)一樣,都是為了創(chuàng)造“隔離環(huán)境”。但是,它又和虛擬機(jī)有很大的不同——虛擬機(jī)是操作系統(tǒng)級(jí)別的資源隔離,而容器本質(zhì)上是進(jìn)程級(jí)的資源隔離。

虛擬化 VS 容器

而大家常聽說的Docker,就是創(chuàng)建容器的工具,是應(yīng)用容器引擎。

Docker的中文意思,就是碼頭工人。而它的LOGO,就是一只鯨魚背著很多貨柜箱。

相比于傳統(tǒng)的虛擬機(jī),Docker的優(yōu)勢(shì)很明顯,它啟動(dòng)時(shí)間很快,是秒級(jí),而且對(duì)資源的利用率很高(一臺(tái)主機(jī)可以同時(shí)運(yùn)行幾千個(gè)Docker容器)。此外,它占的空間很小,虛擬機(jī)一般要幾GB到幾十GB,而容器只需要MB級(jí)甚至KB級(jí)。

除了Docker對(duì)容器進(jìn)行創(chuàng)建之外,我們還需要一個(gè)工具,對(duì)容器進(jìn)行編排。

這個(gè)工具,就是K8S。

K8S,就是Kubernetes,中文意思是舵手或?qū)Ш絾T。Kubernetes這個(gè)單詞很長(zhǎng),所以大家把中間8個(gè)字母縮寫成8,就成了K8S。

K8S是一個(gè)容器集群管理系統(tǒng),主要職責(zé)是容器編排(Container Orchestration)——啟動(dòng)容器,自動(dòng)化部署、擴(kuò)展和管理容器應(yīng)用,還有回收容器。

簡(jiǎn)單來(lái)說,K8S有點(diǎn)像容器的保姆。它負(fù)責(zé)管理容器在哪個(gè)機(jī)器上運(yùn)行,監(jiān)控容器是否存在問題,控制容器和外界的通信,等等。

通過下面這張K8S系統(tǒng)結(jié)構(gòu)圖,就能夠看出K8S和容器之間的關(guān)系。

除了K8S之外,還有很多種容器管理平臺(tái),例如Compose,Marathon,Swarm,Mesos等。

Docker和K8S,關(guān)注的不再是基礎(chǔ)設(shè)施和物理資源,而是應(yīng)用層,所以,就屬于PaaS。明白了吧?

正如文章開頭所說,今天主要是介紹KVM、Hypervisor、OpenStack、Docker、K8S這些名詞的意思,它們?cè)谠朴?jì)算系統(tǒng)中的位置,以及它們之間的關(guān)系。云計(jì)算涉及到大量的需求。同一個(gè)需求,會(huì)有很多不同的技術(shù)來(lái)實(shí)現(xiàn)。同一個(gè)技術(shù),往往又有多個(gè)不同的廠家互相競(jìng)爭(zhēng)。所以,概念和名詞就會(huì)特別多,發(fā)展變化也會(huì)很快。

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

    關(guān)注

    39

    文章

    7854

    瀏覽量

    137698
  • 互聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    54

    文章

    11184

    瀏覽量

    103666
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9294

    瀏覽量

    85855

原文標(biāo)題:云計(jì)算原來(lái)是這樣玩的......

文章出處:【微信號(hào):IndustryIOT,微信公眾號(hào):工業(yè)互聯(lián)網(wǎng)前線】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何理解計(jì)算

    計(jì)算的工作原理是什么? 計(jì)算和傳統(tǒng)IT技術(shù)的區(qū)別? 華納如何幫助您實(shí)現(xiàn)
    發(fā)表于 08-16 17:02

    什么是計(jì)算 計(jì)算的定義

    什么是計(jì)算 計(jì)算的定義計(jì)算是分布式計(jì)算技術(shù)的一
    發(fā)表于 11-18 17:23

    計(jì)算之:計(jì)算的20個(gè)定義

    "盡管人們對(duì)計(jì)算(cloud computing)仍然沒有統(tǒng)一的定義, Enterprise IT 界,至少有20種關(guān)于計(jì)算的聲音: 
    發(fā)表于 07-13 14:23

    計(jì)算”到底算計(jì)什么?

    。用戶電腦里沒有常見的應(yīng)用程序,甚至連操作系統(tǒng)也欠奉,但是卻有一系列的軟硬件某個(gè)地方為用戶提供服務(wù),其服務(wù)能力大的像“”,亦遠(yuǎn)在云端,這就算是
    發(fā)表于 07-13 14:25

    什么是計(jì)算?

    ,較大的數(shù)據(jù)須通過有關(guān)管理技術(shù)得到高效管理。其中Google計(jì)算的數(shù)據(jù)技術(shù)管理系統(tǒng)中占據(jù)著主導(dǎo)地位。 虛擬化技術(shù):
    發(fā)表于 08-09 10:26

    全面提升,阿里Docker/Kubernetes(K8S) 日志解決方案與選型對(duì)比

    能力,同時(shí)提供了網(wǎng)絡(luò)、文件系統(tǒng)的抽象與管理,所以對(duì)于已有應(yīng)用上k8s或者基于k8s部署應(yīng)用十分便捷。但這里有一部分令開發(fā)和運(yùn)維人員比較頭疼--日志采集。難點(diǎn)分析基于VM或者物理機(jī)部署
    發(fā)表于 02-28 12:49

    計(jì)算原理與技術(shù)簡(jiǎn)介

    計(jì)算概述計(jì)算的起源計(jì)算的定義對(duì)一般用戶而言:
    發(fā)表于 06-30 07:02

    計(jì)算原理與實(shí)踐相關(guān)資料分享

    1、計(jì)算是一種新興的共享基礎(chǔ)框架的方法,可以將巨大的系統(tǒng)池連接在一起以提供各種IT服務(wù)。2、“計(jì)算”一詞最早被大范圍的傳播應(yīng)該是
    發(fā)表于 06-30 08:11

    計(jì)算原理與技術(shù) 相關(guān)資料推薦

    一、計(jì)算是什么?對(duì)一般用戶而言:計(jì)算是指通過網(wǎng)絡(luò)以按需、易擴(kuò)展的方式獲得所需的服務(wù)。即隨時(shí)隨地只要能上網(wǎng)就能使用各種各樣的服務(wù),如同錢莊、銀行、發(fā)電廠
    發(fā)表于 07-06 07:54

    計(jì)算原理及應(yīng)用技術(shù)

    1、計(jì)算概述  計(jì)算:對(duì)一般用戶而言,計(jì)算是指通過網(wǎng)絡(luò)以按需、易擴(kuò)展的方式獲得所需的服務(wù)。
    發(fā)表于 07-07 06:08

    什么是計(jì)算?其原理是什么?

    接下來(lái)這幾篇將給大家介紹KVM的相關(guān)知識(shí),講到KVM之前我們先了解一下計(jì)算,這也是自己在網(wǎng)上找的一些知識(shí)總結(jié)。給大家參考一下。一、
    發(fā)表于 07-07 06:47

    什么是計(jì)算

    計(jì)算是一種基于互聯(lián)網(wǎng)的計(jì)算模式,它允許用戶通過互聯(lián)網(wǎng)訪問可擴(kuò)展的計(jì)算資源,而無(wú)需直接控制這些資源。
    發(fā)表于 04-21 10:45

    未來(lái)的計(jì)算和邊緣計(jì)算是什么樣?

    對(duì)于許多組織來(lái)說,冠狀病毒疫情持續(xù)蔓延期間,計(jì)算和邊緣計(jì)算對(duì)維持其業(yè)務(wù)運(yùn)營(yíng)至關(guān)重要。
    的頭像 發(fā)表于 03-08 15:55 ?1721次閱讀

    k8s是什么意思?kubeadm部署k8s集群(k8s部署)|PetaExpres

    ),Kubernetes提供了應(yīng)用部署,規(guī)劃,更新,維護(hù)的一種機(jī)制。 Kubernetes中,我們可以創(chuàng)建多個(gè)容器,每個(gè)容器里面運(yùn)行一個(gè)應(yīng)用實(shí)例,然后通過內(nèi)置的負(fù)載均衡策略,實(shí)現(xiàn)對(duì)這一組應(yīng)用實(shí)例的管理、發(fā)現(xiàn)、訪問,而這些細(xì)節(jié)都不需要運(yùn)維人員去進(jìn)行復(fù)雜的手工配置和處理。
    發(fā)表于 07-19 13:14 ?1138次閱讀

    混合部署k8s集群方法有哪些?

    混合部署k8s集群方法是首先需本地與公有分別建立K8s集群,并確保網(wǎng)絡(luò)連接。接著,配置kubeconfig文件連接兩集群,并安裝
    的頭像 發(fā)表于 11-07 09:37 ?172次閱讀