在前面練習了這麼多的AWS服務,是該來試著建置一個常見的應用系統網路架構了。
一樣先進到VPC首頁,點選左邊的「Subnet」
一開始會有一些預設的,但可以直接點選左上角的「Create subnet」
依序建立4個subnet(Public subnet 1, Public subnet 2, Private subnet 1, Private subnet 2)
Public subnet 1
Public subnet 2
Private subnet 1
Private subnet 2
記得Public subnet 1及Private subnet 1要選擇同一個AZ(我統一使用us-east-1a),反之 Public subnet 2及Private subnet 2也要同一個(我使用us-east-1b)。
過程中大概可能會有疑問,怎麼沒有地方選擇是Public 還是Private subnet呢?
其實差別就是在於subnet內中有沒有NAT Gateway,有的話就代表是Public subnet。
一樣先進到VPC首頁,點選左邊的「NAT Gateway」
選擇右上角的「Create NAT gateway」
輸入一個可以辦識的name, Subnet需要選擇剛剛建立的Public subnet,但因為二個Public subnet都要有NAT Gateway,所以會建立二次。
並且也記得要Allocate Elastic IP,才會有一個固定IP。
都成功後回到對應的Public subnet內中的Route Table就可以看到有igw了
在建立完Subnet及NAT Gateway後,需要先設定好當Private Subnet的Route Table,這樣當Web Instance有連外網的需求的,才能正確的透過NAT Gateway轉導出去。
一樣先進到VPC首頁,點選左邊的「Route Table」
進到條列頁後,點選左上角的「Create route table」
輸入對應的name, 及選擇創建的VPC,但因為二個Private subnet都要設定,所以會設定二次。
都建立成功後在清單頁應該是會看到剛剛建立的二筆
接著需要設定二個Route Table的Routes,先選擇第一個Route Table後,切到「Routes」分頁,並點下「Edit routes」
新增一條Route後,Destination輸入「0.0.0.0/0」,Target選擇對應的NAT Gateway。
ithome-private-subnet-1a-route-table選擇ithome-nat-gateway-1a。
ithome-private-subnet-2b-route-table選擇ithome-nat-gateway-2b。
Destination輸入「0.0.0.0/0」代表當不符合其它規則時,都會統一將需求拋給NAT Gateway。
建立public subnet route table, 並指向Internet Gateway
並且Associations public subnet
如此一來就設定完成了。