tech

k8s

使用 Bitnami/Discourse 的心得與注意事項

Discourse 是一個現代化的開源論壇軟體,Bitnami 提供的 Docker 鏡像使其在 Kubernetes 或 Docker 環境中的部署更加方便。然而,過程中有一些細節需要特別留意,以下是我的實際使用經驗與解決方法。 1. Persisting 儲存的路徑 Discourse 的 Bitnami 鏡像需要持久化數據來確保論壇的穩定運行,尤其是 PostgreSQL 資料庫的數據存儲。 * Persisting 儲存路徑: Bitnami/Discourse 預設將 PostgreSQL 的數據儲存在 /bitnami/postgresql,這是需要持久化的關鍵目錄。 * 解決方案: 配合 NFS 或其他外部存儲解決方案,可以確保數據的持續性和高可用性。 2. 搭配 NFS Provider 使用 NFS Subdir External Provisioner 是一種高效的方法,能確保 Discourse

By Tim Chiagn

zh

GCE Instances with multiple network interfaces

建立多個 interfaces ,Google 本身的設定會只能夠從第一張網卡進出。即使有第二張以上的網卡和 external IP,依然是不可通的情況,封包進得去出不來。 這時,可參考文件 [1] 敘述在 VM 輸入以下指令。 1sudo ifconfig NIC IP_ADDRESS netmask NETMASK broadcast IP_ADDRESS mtu 1430 2echo "1 rt1" | sudo tee -a /etc/iproute2/rt_tables 3sudo ip route add GATEWAY src IP_ADDRESS dev NIC table

By Tim Chiagn

gcp

無法將instance group 加入到 external LB

Background: 使用兩個 LB 對應到相同 VM 但是不同的 Port。因需要對應到相同的 VM,所以需要使用 unmanaged instance group 如果使用下列架構 ex-lb-1 -> unmanaged-instance-group-1(vm-1, vm-2) ex-lb-2 -> unmanaged-instance-group-2(vm-1, vm-2) 在建立第二個 LB 時會出現此錯誤訊息:Operation type [patch] failed with message "Validation failed for instance 'projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME'

By Tim Chiagn

gcp

GCP IP range

您可以查看文件 [1],有提供兩個文件可供參考。第一個文件 [2] 是 Google 自己使用的網段內,第二個文件 [3] 是全球或地域性的 IP 範圍 for Google Cloud 的資源。另外,我們也發現 Github 上有個 repository [9] 幫忙列出所有 IP range from Google (Cloud & GoogleBot)。 URL 的部分,這邊為您收集以下常見之服務的 Service endpoint。 GCE API: https://compute.googleapis.com [4] GKE API: https://container.googleapis.com [5]

By Tim Chiagn