在AWS上有很方便的計算成本工具
相對的在GCP也有這樣子的工具
https://cloud.google.com/products/calculator/
使用方式有點與AWS不同
但還是大同小異,有需要的可以使用一下計算成本
再評估是否要使用GCP喔
在AWS上有很方便的計算成本工具
相對的在GCP也有這樣子的工具
https://cloud.google.com/products/calculator/
使用方式有點與AWS不同
但還是大同小異,有需要的可以使用一下計算成本
再評估是否要使用GCP喔
這個問題在AWS上遇過,但是AWS即使使用AMI啟動
也是會替換成IP開頭的hostname
而在GCP上則是會沿用上一次壓成的Image
例如我原本使用 web-01的hostname 壓成Image
在使用這個Image啟動後的server還會是web-01
造成做一個就要連線修改一次
這時拿出AWS的經驗,先找出如何呼叫instance的metadata
再使用腳本替換掉,寫了一隻shell
#!/bin/bash
name=`curl “http://metadata.google.internal/computeMetadata/v1/instance/name” -H “Metadata-Flavor: Google”`
hostnamectl set-hostname $name
systemctl restart rsyslog.service
再啟動instance時,在開機啟動碼中填入即可
如果有其他的指令需要開機啟動,可以寫成一隻boot.sh
在壓成image時放入,然後再啟動instance時
一樣使用開機啟動碼去執行
例如,開機替換hostname並拉取web 的設定檔等指令
我寫完shell之後搭配變數使用,可以下 web 就拉取web設定檔
設定 ap 就拉取 ap設定檔等
減少手動部署時間
前陣子在修改架構時,要將目前的架構加入HA的概念
所以負載平衡是少不了的,但看了一下教學
都是從頭開始做的,現有的Server要加入有點麻煩
所以自己嘗試了一下,順手就寫一下文章
首先在需要加入的Server中,點選新建個體群組
修改名稱,其餘設定不變,在port的命名跟port號填上需要設定的
注意,如果server有分兩個az,則兩台的個體群組需要分開設定
如asia-a有web-01 但 asia-b 有web-02 ,則要設定兩組
預設的個體就會直接被套用進去,之後按建立即可
兩個個體群組都建立完成後
選擇網路服務->負載平衡
選擇HTTP(S)負載平衡,這裡有地方需要注意,如果對外服務port不是80、8080的話,只能使用TCP負載平衡,如8443這種port
名稱設定打上自己需要設定的,之後設定後端server群組,建立後端服務
如果是靜態服務的項目,如圖片檔,可以直接指向Bucket(Cloud Storage)
port不用設定,如果在設定個體群組有設定的時候,選擇個體群組就會跳出顯示
可以直接套用進去
設定可以使用CPU負載或是連線的要求數量去決定,這裡先用預設
之後新增健康檢查
這裡需要注意FW規則需要加入google檢查的IP網段
130.211.0.0/22,35.191.0.0/16 否則會永遠偵測不到存活,因為連不到
預設先用http 80 去get /
這裡有一個問題,如果你的地區有3個az,連續檢查兩次存活的話
那每次監測就是3*2=6次get,如果有一些防禦機制的話要留意
接著主機與路徑規劃不需特別設定,除非有不同的PATH要導向不同的個體群組
如 /web 給後端web群組 /member 給後端會員群組 這樣
接著設定前端,IP通常是設定一組,不是設定臨時
PORT只有80、8080可以選
完成後點選建立
最近新工作都是使用GCP在環境的建置上
由於摸熟了AWS的規則,切換過來發現GCP的不同
為了快速的新增這些設定,CLI的指令就比較好用
然後一行一行塞又覺得很慢,所以寫偷懶的shell
會出現一個shell的視窗
這時就可以執行CLI指令了,但一行一行下太麻煩
所以我用shell的方式執行
vi fw.sh
塞了兩行,如果需要大量產生FW規則的話
就以此類推,例如
#!/bin/bash
a=123.123.123.123
b=111.111.0.0/16
c=111.222.111.111
d=222.222.222.222
#設定aIP可以連接
#gcloud compute firewall-rules create allow-proxy-to-b –allow tcp:8080,tcp:8443 –source-ranges=$a –target-tags=allow-a
#開放snmp給c監控
gcloud compute firewall-rules create allow-snmp –allow udp:161 –source-ranges=$c
#開放健康檢查使用
gcloud compute firewall-rules create allow-ha-check –allow all –source-ranges=$b
#開放公司內部IP
gcloud compute firewall-rules create allow-office –allow all –source-ranges=$d –target-tags=office
之後離開
chmod +x fw.sh
sh fw.sh
就可以快速塞FW規則進GCP專案了
© 2024 Kila's IT Home
Theme by Anders Norén — Up ↑
近期留言