Google计算引擎

**Google 計算引擎**（Google Compute Engine，**GCE**）是一項 Google 雲端平台的基礎設施即服務（IaaS）組成部分，它基於驅動 Google 搜尋引擎、Gmail、YouTube 和其他服務的全球基礎設施。Google 計算引擎可使用戶按需啟動虛擬機器（VM）。虛擬機可通過標準鏡像或用戶創建的自定義鏡像啟動。GCE 用戶必須先在啟動虛擬機前通過基於 OAuth 2.0 的認證。Google 計算引擎可通過開發者控制台、RESTful API 或命令行界面（CLI）訪問。

## 歷史

Google 於 2012 年 6 月 28 日的 Google I/O 大會上宣布了仍處於預覽模式的計算引擎。2013 年 4 月，計算引擎首先向擁有黃金支持（Gold Support Package）的用戶提供。2013 年 2 月 25 日，Google 宣布 RightScale 為首個代理商。在 2013 年的 Google I/O 大會上，官方宣布了許多特性，如按時計費、共享核心實例類型、更大的持久存儲硬碟、基於網絡能力的增強 SDN 和 ISO/IEC 27001 證明等。GCE 於 2013 年 5 月 15 日正式向所有用戶開放。第三層的負載均衡於 2013 年 8 月 7 日起可用。最終在 2013 年 12 月 2 日，Google 宣布 GCE 已普遍可用。同時官方也擴展了作業系統支持、啟用虛擬機動態遷移、提供 16 核實例、更快速的持久存儲硬碟並降低了標準實例的價格。

在 2014 年 3 月的 Google 雲端平台直播上，技術基礎設施的高級副總裁烏爾斯・霍澤爾宣布了持續的用量減免、對 Microsoft Windows Server 2008 R2、雲端 DNS 和雲端部署管理的支持。2014 年 5 月 28 日，Google 宣布了對 LXC 容器優化和一系列虛擬機實例中對 Docker 容器的動態調度。

## Google 計算引擎單元

Google 計算引擎單元（GCEU，讀作 GQ）是一個計算資源抽象。據 Google 所言，2.75 個 GCEU 表示一個 Sandy Bridge 平台邏輯核心（一個硬體超執行緒）的最小計算能力。

## 持久存儲硬碟

每個 Google 計算引擎實例均使用名為持續存儲硬碟的硬碟資源啟動。持續存儲硬碟為實例提供存儲空間並包含自實例啟動時的根文件系統。持續存儲硬碟可作為原始塊設備使用。默認情況下，Google 計算引擎使用 SCSI 接入持續存儲硬碟。持續存儲硬碟以一致、可靠的價格提供直接、一致且可靠的存儲空間，同時移除了對本地臨時磁碟的需求。持續存儲硬碟需要在啟動實例前創建。一旦其接入實例，硬碟即可被原生文件系統格式化。單一持續存儲硬碟可以只讀模式接入多個實例。每塊持續存儲硬碟最多可擴大到 10TB。Google 計算引擎使用 AES-128-CB 加密持續存儲硬碟，這種加密方式在數據離開虛擬機監控尚未到達硬碟前即被應用。Google 總是啟用硬碟加密且這一過程對 Google 計算引擎用戶透明。持續存儲硬碟的完整性通過 HMAC 方案保證。

2014 年 6 月 18 日，Google 宣布了對 SSD 持續存儲硬碟的支持。SSD 最多可傳遞每 GB 30 次 IOPS，相比標準的持續存儲硬碟的寫入 IOPS 提高了 20 倍，而讀取 IOPS 更是快了 100 倍。

## 鏡像

鏡像是包含作業系統和根文件系統的持續存儲硬碟，對於啟動實例來說至關重要。在創建實例或創建根持續存儲硬碟時必須選中鏡像。默認情況下，Google 計算引擎在根據在根持續存儲硬碟上定義的進行安裝根文件系統。Google 計算引擎提供 CentOS 與 Debian 作為標準 Linux 鏡像。而 Red Hat Enterprise Linux（RHEL）和 Microsoft Windows Server 2008 R2 鏡像需要額外費用才能使用。Google 計算引擎同時支持基於 Chromium OS 的輕量級 Linux 作業系統 CoreOS。

## 機器類型

Google 計算引擎使用 KVM 作為管理程序，同時支持 Linux 於 Windows 的客戶鏡像用於啟動基於 64 位 x86 架構的虛擬機。虛擬機從有著根文件系統的持續存儲硬碟中啟動。虛擬機支持的虛擬 CPU 數、內存大小基於所選擇的機器類型。

## 計費及折扣

一旦實例運行了超過 25% 的計費周期時長，價格將開始下降：

* 一旦實例在一個月中使用了 50%，用戶將收到 9 折的按需收費折扣
* 一旦實例在一個月中使用了 75%，用戶將收到 8 折的按需收費折扣
* 一旦實例在一個月中使用了 100%，用戶將收到 7 折的按需收費折扣

## 機器類型對比

Google 提供以下機型：

* 標準：每個虛擬 CPU 享有 3.75GB 內存
* 高內存：每個虛擬 CPU 享有 6.5GB 內存
* 高處理器：每個虛擬 CPU 享有 0.9GB 內存
* 共享核心：客戶之間共享 CPU 和內存
* 兆內存：擁有大量內存，且內存 /vCPU 比高於高內存機器類型

下方列出的計費標準基於運行標準 Debian 或 CentOS 作業系統的 Linux 虛擬機。運行專有作業系統的虛擬機將會更貴。

## 資源

計算引擎連接多個稱之為資源的實體作為部署過程之一。每個資源擁有不同的功能。當虛擬機實例啟動時將創建一個使用其他資源的實例資源，如磁碟資源、網絡資源與鏡像資源。例如，一個磁碟資源將作為虛擬機的數據存儲，就像物理硬碟一樣；而網絡資源調節進出實例的流量。

### 鏡像

一個鏡像資源包含作業系統與對啟動實例至關重要的根文件系統。Google 維護並提供現成的鏡像，用戶也可以使用自定義鏡像來創建實例。需求不同，用戶也可以將鏡像應用至持續存儲硬碟並使用持續存儲硬碟作為根文件系統。

### 機型

實例的機器類型決定了核心數、內存及由實例所支持的 I/O 操作。

### 磁碟

持續存儲硬碟獨立於虛擬機且比實例的壽命更長。任何存儲在持續存儲硬碟上的信息均在寫入物理介質前被加密，且密鑰被 Google 嚴格把控。

每個實例僅可接入特定數量的持續存儲硬碟空間（大多數實例上最多可有 64TB 存儲空間）與特定數量的獨立持續存儲硬碟（大多數實例上最多可接入 16 個獨立的持續存儲硬碟）。

### 快照

持續存儲硬碟快照使得用戶可從已有的持續存儲硬碟上複製數據並拷貝到新的硬碟上。這對備份持續存儲硬碟的數據以防遭遇意外損壞與區域維護是及其有用的。

### 實例

一個 Google 計算引擎實例是一個運行 Linux 或微軟 Windows 作業系統的虛擬機。用戶可選擇更改實例的硬體、作業系統、磁碟及其他配置。

### 網絡

網絡定義所有連接至實例的地址範圍與網關地址。它定義了可相互通信、可與其他網絡通信和可與外界通信的實例數量。每個實例屬於單一網絡且任何介於不同網絡的實例必須通過公共 IP 位址通信。

您的雲端平台控制台可包含多個網絡，且每個網絡可擁有多個使用此網絡的實例。您可定義實例網絡的網關 IP 及網絡範圍。默認情況下，Google 提供每個項目有著預設配置及防火牆規則的默認網絡。您可通過添加或移除規則自定義默認網絡，或您可在項目中創建新網絡。通常情況下，雖然用戶默認情況下可最多擁有五個網絡，但大多數用戶實際上只需要一個網絡。

一個網絡僅由一個項目擁有，且每個實例僅可屬於一個網絡。所有的計算引擎網絡均使用 IPv4 協議。計算引擎當前不支持 IPv6 協議。然而，Google 是主要的 IPv6 支持者且認為 IPv6 是重要的未來走向。

### 地址

當創建實例時，默認情況下將自動分配實例一個臨時外部 IP。此地址在使用實例時被自動接入，一旦關閉實例則將被自動斷開。GCE 同時也提供為虛擬機保留靜態 IP 位址的機制。臨時外部 IP 可轉入靜態 IP 位址。

### 防火牆

一個防火牆資源包含允許進入實例的一個或多個規則。每個防火牆資源僅可與一個網絡關聯。用戶無法將防火牆與多個網絡相關聯。除非防火牆允許網絡流量進入實例，否則將不允許與任何實例通信，甚至是對於處在相同網絡的實例而言。

### 路由

Google 計算引擎提供管理特定 IP 區間的路由表。與區域網的物理路由器類似，所有的出站通信將與路由表對比並在出站包符合路由表中規則時被正確轉發。

## 區域和地區

區域指 Google 基礎設施的地理位置。用戶可根據需求選擇部署資源在其中一個可用地區。截止 2018 年 8 月 13 日，Google 計算引擎可用於美洲、歐洲與亞太區域。

地區指區域內的獨立位置。在相同區域的不同地區之間有著高帶寬、低延遲的網絡連接。為了部署有著高可用性的容錯程序，Google 推薦在不同區域的多個地區部署應用。這可防止用戶在一個地區內遭遇組件故障。截止 2018 年 8 月 13 日，Google 計算引擎可用於俄勒岡州、愛荷華州、南卡羅來納州、北維吉尼亞、蒙特婁、聖保羅、倫敦、比利時、法蘭克福、荷蘭、孟買、新加坡、台灣、東京、雪梨地區。

## 資源範圍

所有 GCE 的資源均在全球、區域或地區範圍內可用。全球資源可被所有區域與地區訪問。例如，鏡像就是一項用戶可用於啟動任何區域內虛擬機的全球資源。但地址是僅可用於啟動於相同區域中一個地區虛擬機的區域資源。在特定地區中啟動的實例需要指定地區以作為對該實例發送的所有請求的一部分。

下表總結了 GCE 資源範圍：

## 特性

### 計費與定價模型

Google 至少向虛擬機收取 10 分鐘的費用。在第 10 分鐘結束時，實例將以 1 分鐘為增量單位計費，並四捨五入到最近的分鐘。基於價格的持續用量將基於月用量給予用戶折扣。用戶無需在獲取定期、按期計價折扣前支付承諾費。

### 虛擬機性能

計算引擎虛擬機可在 30 秒內開機，相比競爭對手的開機速度快了 4 至 10 倍。

### 磁碟性能

計算引擎的持續存儲硬碟可提供持續的高 IOPS。由於 IOPS 計費包含在存儲計費內，所以用戶無需為 IOPS 單獨付費。

### 全球範圍鏡像及快照

鏡像及磁碟快照屬於全球範圍，意味著它們可用於 Google 雲端平台的所有區域與地區。這防止了需要在區域間導入導出快照的行為。

### 透明維護

在 Google 數據中心的預計維護期間，計算引擎可在無需用戶操作的情況下將自動轉移虛擬機從一台主機至另外一台。這為程序提供了更好的正常運行時間。

## 參考文獻

## 外部連結

* 官方網站
* YouTube 上的 Google I/O 2012 - 介紹 Google 計算引擎