主流云平臺(tái)介紹之—AWS

來(lái)源:知乎
作者:啊窩額
時(shí)間:2020-07-30
2157
本篇文章就給大家?guī)?lái)主流云平臺(tái)中的AWS平臺(tái)的相關(guān)介紹。

一、前言

目前云平臺(tái)逐漸火熱起來(lái),國(guó)內(nèi)如:阿里云、騰訊云、華為云等平臺(tái),國(guó)外如:AWS、Azure、Google GCP等平臺(tái),都有不少用戶,并在持續(xù)的增加中。

特別是在大數(shù)據(jù)領(lǐng)域,主流的云平臺(tái)均提供了相應(yīng)的解決方案,從分布式存儲(chǔ)到分布式計(jì)算,從批處理框架到流式計(jì)算,從ETL到數(shù)據(jù)管道,從BI分析到數(shù)據(jù)挖掘等等方面均有對(duì)應(yīng)的產(chǎn)品來(lái)解決企業(yè)的需求。

我們有必要對(duì)云平臺(tái)增加一定的了解,并最好能上手嘗試一番,對(duì)我們提升眼界思維有很大幫助。

本篇文章就給大家?guī)?lái)主流云平臺(tái)中的AWS平臺(tái)的相關(guān)介紹。

二、什么是AWS

官方介紹:

AWS全稱Amazon web service(亞馬遜網(wǎng)絡(luò)服務(wù)),是亞馬遜公司旗下云計(jì)算服務(wù)平臺(tái),為全世界各個(gè)國(guó)家和地區(qū)的客戶提供一整套基礎(chǔ)設(shè)施和云解決方案。

AWS面向用戶提供包括彈性計(jì)算、存儲(chǔ)、數(shù)據(jù)庫(kù)、物聯(lián)網(wǎng)在內(nèi)的一整套云計(jì)算服務(wù),幫助企業(yè)降低IT投入和維護(hù)成本,輕松上云

從概念是來(lái)看,AWS提供了一系列的托管產(chǎn)品,幫助我們?cè)跊](méi)有物理服務(wù)器的情況下,照樣可以正常完成軟件開(kāi)發(fā)中的各種需求,也就是我們常說(shuō)的云服務(wù)。

比如,

從存儲(chǔ)來(lái)說(shuō),AWS提供了S3作為對(duì)象存儲(chǔ)工具,可以幫助我們存儲(chǔ)大量的數(shù)據(jù),并且S3可以被AWS的其他服務(wù)所訪問(wèn)。

從服務(wù)器資源來(lái)說(shuō),AWS提供了EC2作為虛擬化的云服務(wù)器,提供各種類型的主機(jī),如計(jì)算型、通用型、內(nèi)存計(jì)算型、GPU計(jì)算型,等等來(lái)滿足業(yè)務(wù)對(duì)服務(wù)器的需要

在數(shù)據(jù)庫(kù)方面,AWS提供了如RDS(包含Mysql、MariaDB、Postgresql)作為關(guān)系型存儲(chǔ)以及分布式大型關(guān)系型數(shù)據(jù)庫(kù)Aurora,同時(shí)提供了多種Nosql數(shù)據(jù)庫(kù),如DynamoDB等,以及數(shù)倉(cāng)如RedShift

AWS在各個(gè)方面的業(yè)務(wù)需求上,都有對(duì)應(yīng)的產(chǎn)品或者整體的解決方案存在,并且這些產(chǎn)品或者方案都有一個(gè)特點(diǎn),就是全部不需要使用者有任何物理資源,所有的業(yè)務(wù)統(tǒng)統(tǒng)在AWS上運(yùn)行,使用者只需要有一天電腦去登錄AWS去進(jìn)行管理操作即可,同時(shí)也簡(jiǎn)化了許多運(yùn)維的工作量,比如監(jiān)控、報(bào)警等方面,AWS自身就已經(jīng)集成了很豐富的監(jiān)控報(bào)警功能。

三、AWS上提供的主要功能模塊

v2-c7277b282715d8aea5c343fb5d851aad_720w.jpg

v2-a5f495d805d0d2d765eed95f957239be_720w.jpg

如上兩個(gè)圖,我們可以看出,AWS提供了許許多多的功能模塊以對(duì)應(yīng)各種不同的業(yè)務(wù)需求

就以計(jì)算來(lái)舉例:

在AWS的計(jì)算模塊中,除了最常見(jiàn)的EC2(Elastic Compute Cloud),也就是云上的虛擬機(jī),除了EC2外,AWS提供了諸如:

LAMBDA:用于提供開(kāi)發(fā)ServerLess Application,支持Java、Python、Go等主流語(yǔ)言

ECR:Amazon Elastic Container Registry,用于管理容器鏡像的服務(wù),類似容器倉(cāng)庫(kù)的概念

ECS:Amazon Elastic Container Service,AWS自身提供的容器編排服務(wù)

EKS:Elastic Kubernetes Service,運(yùn)行在云上的,AWS提供的Kubernetes技術(shù)

Lambda:云上運(yùn)行代碼,無(wú)需顧慮服務(wù)器。只需要關(guān)系業(yè)務(wù)邏輯編寫(xiě)代碼即可,編寫(xiě)好之后提交給Lambda代碼可以直接運(yùn)行,不需要服務(wù)器,也不需要安裝環(huán)境

還有一些其他的計(jì)算模塊中的服務(wù),就不一一列舉了(國(guó)內(nèi)用不了)。

可以看出,AWS在每一個(gè)模塊下,都提供了很豐富的產(chǎn)品來(lái)供用戶選擇使用。

使用AWS可以做到,不依賴任何任何一臺(tái)物理服務(wù)器就能支撐起全公司所有的業(yè)務(wù)。

AWS是十分強(qiáng)大的,目前在全球云平臺(tái)的占有率也是處于No.1的序列,其相當(dāng)于引領(lǐng)著云平臺(tái)的定義。

我們主要挑選一些最常使用的服務(wù)來(lái)給大家介紹一下

四、AWS中一些常用服務(wù)介紹

計(jì)算-EC2:

v2-a023507e08ef779eb62b780eaa131e1e_720w.jpg

EC2可以說(shuō)是AWS平臺(tái)上最核心、最基礎(chǔ)的服務(wù)了,其全稱Elastic Compute Cloud:彈性云計(jì)算。

EC2簡(jiǎn)單來(lái)說(shuō),就是提供了云上的虛擬服務(wù)器,用戶可以按照需求選擇如:

1.內(nèi)存計(jì)算型(強(qiáng)調(diào)內(nèi)存性價(jià)比)

2.通用型(均衡性價(jià)比)

3.計(jì)算型(強(qiáng)調(diào)CPU性價(jià)比)

4.GPU計(jì)算型(提供高性能GPU)

5.存儲(chǔ)優(yōu)化型(強(qiáng)調(diào)存儲(chǔ)性價(jià)比)

v2-174ea355b9ba8d44b388798c46980594_720w.jpg

除了大類型上可以選擇,也可以選擇小類型(CPU、內(nèi)存配置),如下圖:

v2-1401a2d4264d7cc639dabecc45a91534_720w.jpg

提供了多種類型的CPU和內(nèi)存的組合供我們選擇

最高可以選擇到128vCPU核心,4TB內(nèi)存的級(jí)別

除了性能配置外,EC2同時(shí)支持選擇多種操作系統(tǒng)來(lái)部署,如:

v2-3403a37d042914a90f0243caaa11075b_720w.jpg

同時(shí),EC2也可以搭配如VPC(虛擬網(wǎng)絡(luò)),AMI(鏡像),快照,安全組(防火墻),負(fù)載均衡器等各種服務(wù)搭配使用

總的來(lái)說(shuō),EC2就相當(dāng)于一個(gè)云上的虛擬機(jī)軟件,可以幫我們創(chuàng)建服務(wù)器,部署操作系統(tǒng),管理網(wǎng)絡(luò),拍攝快照,配置防火墻等等工作。

存儲(chǔ)-S3

S3:Amazon Simple Storage Service,是一種云上的簡(jiǎn)單存儲(chǔ),是一種基于對(duì)象的存儲(chǔ)。我們可以把我們的數(shù)據(jù)作為一個(gè)個(gè)對(duì)象存儲(chǔ)在S3中。

并且,S3可以被AWS中其他的服務(wù)所訪問(wèn),甚至我們部署的Hadoop、Spark等程序都可以正常的訪問(wèn)S3的數(shù)據(jù)。

S3作為存儲(chǔ),和服務(wù)器進(jìn)行了隔離,原本我們做分布式存儲(chǔ)如HDFS,都是依賴具體的服務(wù)器硬件的,但是使用S3,就不再需要了,它就相當(dāng)于AWS提供的一款分布式、超大容量的網(wǎng)盤(pán)程序

?T1:使用S3,我們可以將存儲(chǔ)的計(jì)算資源進(jìn)行分離,比如我們可以在需要計(jì)算的時(shí)候,臨時(shí)創(chuàng)建幾個(gè)EC2,去加載S3數(shù)據(jù),運(yùn)行程序計(jì)算結(jié)果,得到結(jié)果后,就可以刪除EC2了,最大程度提供資源利用率,不需要計(jì)算的時(shí)候,讓計(jì)算資源不再閑置,或者說(shuō),需要計(jì)算資源的時(shí)候再去創(chuàng)建即可。

數(shù)據(jù)庫(kù)

RDS

RDS全稱:Amazon Relational Database Service,也就是亞馬遜關(guān)系型數(shù)據(jù)庫(kù)服務(wù)。是一種托管的云數(shù)據(jù)庫(kù),可以為我們提供云上的Mysql、Postgresql、MariaDB、Aurora(分布式關(guān)系型數(shù)據(jù)庫(kù))等多種關(guān)系型數(shù)據(jù)庫(kù)。使用RDS,用戶只需要關(guān)系去使用它即可,而無(wú)需關(guān)心如:安裝、部署、維護(hù)、監(jiān)控、報(bào)警等一系列操作。這些操作AWS全部幫我們自動(dòng)化完成,我們只需要關(guān)心業(yè)務(wù)邏輯去操作數(shù)據(jù)庫(kù)即可。

v2-884c7f412c4e8795412184042bbf0fc1_720w.jpg

DyanmoDB

DynamoDB是一款托管的NoSQL數(shù)據(jù)庫(kù),是Key-Value型的列式數(shù)據(jù)庫(kù),由AWS自行研發(fā),類似HBase。

其提供了多種語(yǔ)言的API幫助客戶開(kāi)發(fā)程序,同時(shí)將性能劃分為一個(gè)個(gè)容量單位,由預(yù)算來(lái)決定性能,最大限度節(jié)省預(yù)算。

同RDS一樣,使用托管的DynamoDB,客戶同樣只需要關(guān)心使用即可,而無(wú)需關(guān)心如維護(hù)、安裝、報(bào)警、監(jiān)控、部署等一系列操作。

v2-c9ff5333a96c144166962acf8e3b791b_720w.jpg

RedShift

RedShift是AWS提供的一款云上的托管的數(shù)據(jù)倉(cāng)庫(kù)產(chǎn)品。其底層基于Postgresql開(kāi)發(fā),兼容Postgresql的一些標(biāo)準(zhǔn),可以使用JDBC連接。

v2-4d08a6ea2f7b8b90bde1376d8bb6e5f3_720w.jpg

計(jì)算-LAMBDA

Lambda是一款神器,目前微服務(wù)十分流行,Lambda可以構(gòu)建復(fù)雜的微服務(wù)系統(tǒng)架構(gòu),同時(shí)也可以用來(lái)構(gòu)建ServerLess類型的Application

Lambda簡(jiǎn)單來(lái)說(shuō)就是,編寫(xiě)好代碼,提交給Lambda即可運(yùn)行,無(wú)需顧慮服務(wù)器。

v2-29de850b7cf9f8c8669c1770b82a7c4a_720w.jpg

聯(lián)網(wǎng)和內(nèi)容分發(fā)-API Gateway

Amazon API Gateway可幫助開(kāi)發(fā)人員創(chuàng)建和管理在Amazon EC2、AWS Lambda或任何可公開(kāi)尋址的Web服務(wù)上運(yùn)行的后端系統(tǒng)的API。利用Amazon API Gateway,您可以為您的API生成自定義客戶端SDK,以便將后端系統(tǒng)連接到移動(dòng)、Web和服務(wù)器應(yīng)用程序或服務(wù)

通俗來(lái)說(shuō),我們可以認(rèn)為API Gateway就是一款托管在云上的Nignx、Tomcat等中間件。

API Gateway可以配合上面提到的Lambda,來(lái)提供RESTful形式的接口。

v2-81fcafb04e8ed48b5f6f1d4f7de5cbec_720w.jpg

分析-EMR

EMR也是一款重磅產(chǎn)品,對(duì)我們大數(shù)據(jù)開(kāi)發(fā)人員意義重大,其可以幫助我們快速的構(gòu)建起一個(gè)大數(shù)據(jù)集群,只需要鼠標(biāo)點(diǎn)擊幾下即可創(chuàng)建。

v2-f1dcec1fbd22cff2ac5bcabc268cc382_720w.jpg

EMR提供兩種類型的集群:

1.步驟運(yùn)行集群

2.長(zhǎng)久運(yùn)行集群

對(duì)于步驟運(yùn)行集群,我們可以創(chuàng)建一個(gè)特定的集群,分配特定EC2來(lái)運(yùn)行集群,給定一個(gè)集群創(chuàng)建成功后的運(yùn)行步驟。那么在集群創(chuàng)建好之后,EMR會(huì)自動(dòng)運(yùn)行我們提供的步驟,運(yùn)行結(jié)束后,會(huì)自動(dòng)關(guān)閉此集群,刪除對(duì)應(yīng)的EC2資源。

比如:我們可以寫(xiě)一個(gè)Spark任務(wù),從S3讀取數(shù)據(jù),并將結(jié)果存放到S3中,那么可以將這個(gè)任務(wù)提交給EMR步驟運(yùn)行集群,那么其流程就是:

1.預(yù)配置:比如勾選需要多少個(gè)EC2,EC2是什么類型,Spark任務(wù)在哪里

2.預(yù)配置完成后,EMR就會(huì)創(chuàng)建對(duì)應(yīng)的EC2,然后在對(duì)應(yīng)EC2上部署集群

3.集群部署完成后,運(yùn)行我們提交的Spark任務(wù)

4.Spark任務(wù)運(yùn)行完成后,EMR關(guān)閉集群,刪除EC2

那么假設(shè)我們的任務(wù)運(yùn)行了2個(gè)小時(shí),提供了10個(gè)4核心8GB內(nèi)存的EC2,那么我們消耗的成本就只有這10臺(tái)EC2運(yùn)行2小時(shí)的金額。

而對(duì)于以前的機(jī)房集群來(lái)說(shuō),在不運(yùn)行任務(wù)的時(shí)候,其也在持續(xù)的消耗成本(房租、電、網(wǎng)、運(yùn)維等)

同時(shí)對(duì)于這樣的集群我們還可以動(dòng)態(tài)拓展其性能,我們勾選了10個(gè)EC2運(yùn)行了2小時(shí)完成,

那么一般來(lái)說(shuō)我們可以勾選20個(gè)EC2,來(lái)讓任務(wù)在1小時(shí)完成,那么成本和10個(gè)EC2 2小時(shí)完成是差不多的

這樣對(duì)于企業(yè)來(lái)說(shuō)可以最大限度的節(jié)省資金同時(shí)提高性能,

對(duì)于機(jī)房集群來(lái)說(shuō),擴(kuò)容是一個(gè)大事情,但是對(duì)于EMR來(lái)說(shuō),就非常輕松。

對(duì)于長(zhǎng)久運(yùn)行集群

EMR在創(chuàng)建好集群后,就讓集群一直運(yùn)行下去,除非我們手動(dòng)關(guān)閉,EMR不會(huì)自動(dòng)關(guān)閉集群刪除EC2

適合我們部署長(zhǎng)期運(yùn)行的服務(wù),如HBase等

EMR支持如下的大數(shù)據(jù)組件:

v2-7b6b38c6fa4958127aef3648c32f61db_720w.jpg

分析-Kinesis

Kinesis是AWS提供的一款流分析工具,可以基于Kinesis來(lái)完成相關(guān)流計(jì)算業(yè)務(wù),同時(shí)Kinesis也可以作為一款消息隊(duì)列來(lái)存在,用于削峰、解耦等

v2-f3b8d964b8bd506d3a69a6b0f320f0a5_720w (1).jpg

v2-1c5bba655541624f45722131d19130bb_720w.jpg

五、總結(jié)

AWS為我們提供了許許多多實(shí)用的產(chǎn)品和解決方案,可以讓業(yè)務(wù)不依賴任何一臺(tái)云服務(wù)器。

目前,上云是一句流行語(yǔ),也是一個(gè)大勢(shì),大家可以多了解了解云產(chǎn)品,開(kāi)拓眼界。

立即登錄,閱讀全文
原文鏈接:點(diǎn)擊前往 >
版權(quán)說(shuō)明:本文內(nèi)容來(lái)自于知乎,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開(kāi)掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家