全球協作下的 節點選型,重點是三鏈對齊:GeoDNS 與實際 SSH 落地、遠端 Mac 往返、以及從製品庫拉鏡像是否跨洋。先把量測寫死,架構圖才有依據。
DNS 策略對照表
一頁紙決策矩陣;「延遲驗收」請與下一節 ping/mtr 輸出一併存檔。
| 策略 | 典型行為 | 優點 | 風險/成本 | 延遲驗收(建議閾值) |
|---|---|---|---|---|
| GeoDNS(依來源國家/ASN) | 同一 FQDN,不同地區解析到不同 A/AAAA | 與就近 SSH 一致;可細到辦公室出口 | TTL、多權威一致性、VPN 誤導 | 解析結果與實際 SSH 目標同區;ICMP p50 與 PoP 標稱差異 ≤15% |
| Anycast(同 IP 多 PoP 宣告) | 邊界路由吸流量,最近 PoP 終止 | 對客戶端透明;抗攻擊與切換較優 | 除錯難;需 BGP;長連遷移要小心 | 各辦公室探針 RTT 階梯合理、無異常繞路 |
手動分區域名(例:jp.ssh.example.com) |
人選區域,不依賴智慧解析 | 除錯直覺;適合小團隊 | 治理成本高;易全連美西 | 新人域名須先過延遲腳本 |
常見做法:GeoDNS → 區域 jump → 遠端 Mac,金鑰與稽核集中在跳板。節點規格與計費請對照 價格方案。
ping/Traceroute/mtr 基線步驟
請在每位成員的實際出口(含 VPN)各跑一輪並存檔,作為「SSH 卡」對照組。
1)ICMP
# 連續 ping,觀察 p50/尾延遲;把 HOST 換成各區 jump 或 Mac 的解析結果
ping -c 100 -i 0.2 HOST
2)路徑
# UDP traceroute(部分網路對 ICMP 限速,可改用 -P udp)
traceroute -n -q 5 -w 2 HOST
# 若已安裝 mtr,建議 600 秒報表(需 Ctrl+C 結束後看尾部分布)
mtr -rwc 600 -n HOST
3)SSH 握手(比 ping 貼近體感)
# verbose 觀察 KEX/主機金鑰階段耗時;加 -vv 可對照演算法協商
time ssh -o ConnectTimeout=8 -o BatchMode=yes HOST exit
延遲驗收(內部 SLO 參考):東亞連東京/首爾/香港/新加坡 PoP,ICMP p50 常見 25–80 ms;同城卻穩定 >120 ms 先查繞路/錯區。美西↔東亞直連多 130–190 ms,此時應把建置與製品庫跟人在同側,而非硬磨 SSH 打字感。同單附上 dig +trace FQDN 與 curl -w '%{time_connect}\n' -o /dev/null -s https://製品庫 可區分 DNS/傳輸/TLS。
與製品庫同區域部署
建置物回源決定遠端 Mac 編譯下限:Runner 在東京卻從美東拉數 GB xcarchive,RTT 與 TCP 窗口仍會掐脖子。常見對齊:
- 區域桶+複寫:寫入主區,非同步複寫到日韓港新美西;Runner 只讀同區端點。
- Pull-through cache:與 遠端 Mac 同 VPC 放 registry/binary cache。
- 產物就近晉級:
rclone sync或儲存複寫,各區只讀桶承接高峰。
逐區驗收:① 該區 Mac curl 到製品庫 TCP p95;② 大物件是否觸發跨洲計費;③ 重試是否誤回落遠區 endpoint。流程文件見 說明與支援中心。
容災切換閾值 FAQ
Q:何時切備援區?
A:勿只看 ping。例:10 分鐘內 mtr 丟包 >2% 且 ssh 逾時 >20%,並有第二區探針健康——三取二可啟動只讀切換。
Q:GeoDNS TTL?
A:常見 60–300 s;並縮短 jump 上 ControlMaster 黏連,利於感知切換。
Q:日韓港新美西怎麼分?
A:東亞互動/日構放東京、首爾、香港、新加坡(一主一備);美洲 nightly/大上傳掛美西。跨洲勿單一 golden Mac;兩區對稱+Git/製品庫同步。延伸閱讀:遠端 Mac 實戰案例。
| 區域 | 建議主場景 | 延遲/頻寬驗收備註 |
|---|---|---|
| 日本(東京) | 東北亞使用者主入口、低抖動互動 | 與首爾備援時避免 DNS 乒乓 |
| 韓國(首爾) | 遊戲/影音客戶端近源構建 | 跨國 ICMP/UDP 策略不一,以 SSH 計時為準 |
| 香港 | 大灣區團隊、跨國企業中性匯聚點 | 高峰看 mtr 尾延遲,勿只看 ping |
| 新加坡 | 東南亞、澳洲方向的折中 PoP | 離美西遠,大 artifact 必開區域桶 |
| 美西 | 美洲協作者、與美系 SaaS 低延遲對接 | 東亞互動 SSH 不硬承諾;用串流或區域副本 |