公有雲雲端架構

GCP的Shared VPC是什麼?有什麼用?好用嗎?

GCP有VPC和Shared VPC,VPC是針對單一一個專案的,Shared VPC可以跨專案,像我們公司大概有20~30個專案,有很多要在同一個VPC裡面,就要用Shared VPC。VPC是Virtual Private Cloud(虛擬私有雲)的縮寫。

Shared VPC介紹

首先要介紹這個就要介紹VPC,簡單一點講就是在雲端做一個區域網路的概念了(當然有點差異但最快速的理解就是這樣)。

雲端區域網路有什麼好處,可以擋掉外部的攻擊針對有些要保護的服務,比如Cloud SQL。如果Port對外的話一天會有40~80萬次的嘗試密碼登入攻擊,但藏在VPC裡面我們現在還沒有被攻擊過任何一次。

但VPC如果只有在一個專案,那就很不實用,因為Cloud SQL可能跟Cloud Run是在不同專案。

所以就有Shared VPC,建立一個VPC的Host,然後其他的專案作為服務專案連結到這個VPC裡面共享一個網段。

Serverless VPC Connector

這個是比較麻煩的地方,因為Serverless沒有一個固定的私有IP,因此連接VPC的時候,要透過Serverless VPC Connector創建最少2~3個VM來做轉接。

這個當然就要額外的費用了。

但Serverless的好處是很多,所以多一點費用我覺得也值得,因為可能無伺服器架構省下的成本高過太多倍的Connector成本。

Cloud SQL私有IP

Cloud SQL在Shared VPC裡面就可以勾私有IP的選項,如果一開始沒有選擇,就要重建一個執行個體。

所以最好在一開始就規劃好是否要用VPC或Shared VPC。

然後Cloud SQL可以直接擋掉所有網際網路的流量。

只有當需要資料庫操作的時候,開自己的IP通過就好了,也不用用什麼VPN。

Cloud Run設定

Cloud Run設定要記得在連線的部分選擇要連接的Connector,不然是會連不到私有IP的。

Connector初期用E2的執行個體就夠了,費用說真的不是太高。

如果Cloud Run對外要有固定IP,就一定要用Shared VPC,然後用Cloud Router再設定Cloud NAT,這個太麻煩了我不是太想在這邊解釋。

改天有空再寫一篇。

Shared VPC設定的重點

記得有些服務帳戶要給Host它的權限,不然會在這邊卡關很久。

服務帳戶會隱藏,有一個Checkbox要勾顯示所有帳戶,不然也會卡關很久。

這些都是經驗談。

希望大家能了解一點Shared VPC是什麼東西。

What's your reaction?

Excited
-1
Happy
0
In Love
0
Not Sure
0
Silly
0

Comments are closed.