雲端運算介紹 - daniel-qa/Network GitHub Wiki

雲端運算介紹

  • NIST

美國訂定國際一些技術的標準,比如全世界的標準時間,就是由 NIST 這個單位來提供

  • NIST 訂定雲端運算,應該要有這5個特徵
  1. 大量使用者存取

  2. 快速又彈性

  3. 可量測的服務:因為是租的概念,它要很明確的量測我使用多少服務,才能收多少錢,及提供報告,我才能知道目前機器負載是否太重,需要加大機器

  4. 依需求自我服務: 可用 console,滑鼠來操作

  5. 雲端是個很龐大的資源池:你要多少,有多少,你要多少台,它都能給你

  • 雲端有 3 種服務模式

Saas,Pass,Iaas

  • 雲端有4種服務模型

公有雲,私有雲,混合雲,社群雲

使用雲端,它沒有初期的建置成本,所以很多新創的公司,都偏好使用公有雲

社群雲,比如:教育雲

  • 雲端運算的安全架構

Iaas: 可以選擇 OS, 和決定要安裝哪些應用程式,就是給你一台機器,讓你可以使用,除了硬體,網路方面,由雲端負責,其他都是你的責任。所以使用雲端,是一種責任共擔模型

     可能是你的責任,可能是雲端的責任。

Paas: 有些人想要降低自己想承擔的責任,他就會選擇使用 Paas, 比如我需要一個網站,你就純粹給我一個網站就好,我只負責網站上面程式碼的開發,和儲放資料

      其他的部分,全部由雲端來負責,這樣我只要把網站和資料做好,其他的部分,雲端都會幫你管的好好的

      Paas 雖然聽起來很好,但是有優點,就會有缺點,雖然我不用更新維護這個作業系統,但是我也沒有辦法在這個作業系統上裝軟體

      比如我想在這個作業系統上,裝一個 DNS Server, 裝一個 MySQL Databases, 使用 Paas 就沒辦法,但是使用 Iaas 可以。

Saas : 那什麼是 Saas,連這個網頁的程式碼,都是由雲端來提供,我們只是純粹使用人家的服務,比如 Facebook, Facebook 的網頁程式,

       是由 Facebook 這家雲端來開發,我們只是純粹使用它的服務,那這個就稱 Saas
  • 雲端服務商

    (就是 Iaas,Paas)

    目前最大的雲端服務商是 AWS,再來是 Azure, 第三大是 google GCP

  • 雲端運算的三種服務模式(一)

  • 雲端運算的三種服務模式(二)

  • 範例

  • 雲端運算的三種服務模式(三)

透過瀏覽器就可以直接使用

  • 雲端運算的安全架構

雲端是一種責任共擔模型,它負責的愈少,我們自己就負責的愈多

灰色是由雲端來負責,灰色的部分愈少,藍色的部分,我自己要負責的就愈多,私有雲就是全部都是藍色,全部都由我自己負責,包含下面的硬體和上面的軟體

Saas, 比如 facebook,全部都由它來負責,連同網頁的程式碼,也都是 facebook來開發,我只是用它的服務

  • 垂直放大,水平放大

垂直放大,有兩個問題,因為它要換一台新的機器給你,所以中間可能會斷線;第二,當機器放大到最大的硬體規則,它就沒有辦法再放大

這時候,我就可以抓取水平放大,當第一台機器不夠,我就再加第二台,第二台機器不夠,我就加第三台,水平放大的優點,中間都不會斷線

因為我至少一有台在提供服務,第二,水平放大它沒有最大的限制,它可以讓你一直往下加,除此之外,它還可以設定自動擴展 Auto Scale

我們可以設定一個條件,比如 CPU使用率 10分鐘超過 75%,這時候,你就幫我加一台,但全部不能超過5台

另外,CPU 連續10分鐘小於25%,你就幫我減一台,但是減到最後,最少要保留一台

每天,每個月,網路的流量都是大大小小,

網路的使用尖峰,比如春節網路訂票的流量,假如使用的是傳統機房,這時候,我們就要決定

我們這台機器要買多大,綠色線是機器的使用大小,為了春節這個時段,我買了這麼大一台機器,

但是平常都沒有在用,這台機器都在浪費

假如使用雲端,我這台機器,就可以隨時根據流量放大與縮小

放大是為了臨時暴增的流量,縮小是為了減少雲端使用的費用

  • 雲端服務特色

這裡的圓圈,是AWS 的資料中心,電子商店可以依據客戶最多的地區,在該地區的資料中心架設電子商店,這樣子,該地區的使用者距離最近,使用速度最快

假如您的客戶是分佈在全世界,也可以站台架在不同的資料中心,而且它的可用性,可以保證在 99.99%, 資料持久性,可以保證 99.999999999%

資料幾乎不可能丟失,

在作機器學習時候,可能需要大量的硬體支援,甚至加入多片 GPU 卡,這時候,我們就可以水平、垂直放在雲端主機,甚至加入 GPU 卡,

等機器學習完,我們就可以縮小雲端主機,做模型的預測,另外,我可能有開發一些 IoT 的設備, 供全世界使用,

這時候,我們就可以利用雲端全球資料中心的主機,去收集全球物聯網設備收集的資料

這個大樓,就是雲端的資料中心,你可以想像是一個超級大的機房

  • REGON

比如新加坡,就是一個區域,首爾,日本的東京,都是一個 REGON

比如日本東京,他就有3個 AZ

Availability Zone (AZ), 一個 AZ 裡面,可能有一棟或多棟的資料中心

AZ 和 AZ 之間的距離,要求要幾十公里以上,並且透過多條高速光纖串接

為什麼資料的持久性,它可以做到 11 個 9 ? 幾乎要好幾萬年才會丟掉一個檔案,原因是,我只要在一個 AZ 放一個檔案

它會同步到3個不同的 AZ, 即使發生大地震,整個大樓跨了,我的同一個資料,下面還有兩分,

當它發現少一分,它就會再同步到不同的 AZ,永遠保留3分,就是因為它有這種設計,它的資料持久性

才能到達11個9,機器壞掉沒有關係,因為到處都有機器,只要換一台機器就好,機器壞掉沒有關係,只要重啟一台新的機器,把機器連上就 OK

雲端的機框,就是擺放一台一台的伺服器

我們來看其中一台伺服器

一台伺服器的硬體,除了有 CPU, 記憶體,網路跟磁碟之外,還會安裝 Hypervisor 這個軟體

假設這台 Server 它有 128 核心,256G 的記憶體,Hypervisor 可以讓我們在這台 Server 上,建立一台一台的虛擬器,

假如我在這台 Server 架設一台,16核心,32G 的記憶體,的虛擬機,來架設網站,同樣的,別人也在這台 Server 架設另一台虛擬器,

虛擬機和虛擬機之間,可以做到互相隔離,完全獨立,比如,我第一台虛擬機當掉,第二台完全不受影響

Hypervisor 這個軟體,它還可以做到

比如我這台實體的 Server, 它只有一片網卡,它可以做到,裡面每一台虛擬機,都有一片獨立的虛擬網卡,再模擬出1台虛擬的 Switch

把每一片虛擬的網卡,再把它串接起來,接著,透過實體的網卡,接到實體的 Switch, 再對外連接

資料中心中的一個走道,其中一個機櫃,大概是這個樣子

機櫃裡面,會有一台一台的 Server, 每一台 Server 都會有兩片網路,兩條網路線,接到這兩台藍色的 Switch

兩片的好處,即使一片網卡壞掉,我還有一片,即使一條網路線壞掉,我還有一條,即使整台 Switch 壞掉,我還有另一台 Switch, 它可以做到容錯,

接著,再把每台機櫃的 Switch ,透過網路線,串接到走道末端的 Switch

這樣,我就可以保證,任何兩台虛擬機的連線,不超過 3 台 Switch,因為經過愈少 Switch 的話,就可以降低網路的延遲,

  • 為什麼會驅動我們想使用雲端

假如我們要在地端架一個網站,我要評估我要採購多大的機器,再去採購,採購回來,我還要安裝作業系統,還要作更新,

再安裝應用軟體,假如使用雲端的話,我連評估都不用,反正直接上線,機器太小,我再做放大,機器太大,我再做縮小

我用滑鼠點一點,一台機器,3~5分鐘,就可以使用,因為迅速與彈性,就可以提升我們的生產力,

使用雲端,它可以做到 4個9,11個9,這是我們很難達到的品質,

你可能會想,我自己買一台 8 核心的機器用3年,比在雲端租一台8核心的機器三年,還要便宜,這樣子的話,使用雲端,它怎麼會降低成本?

這裡講的成本,指的是 Total 的成本,買一台機器,要不要請工程師維護,要不要付工程師薪水,假如沒有維護好

公司的網站,人家常常連不進來,損失的是公司的信譽,那公司的信譽,價值多少?

那我想要做到 4 個 9,11個 9,要花多少成本,才能達到這種規模?

在雲端,我租一台 1核1g , linux 的虛擬器,一個月台幣 3~4百塊,我就可以擁有這個規模,

這才是這邊它講降低成本的含義

p.s 可用性 99.99%

p.s 資料持久性 99.999999999%