區域
區域會控制 platform 環境的執行位置、託管資料庫的位置,以及 Observability 資料的儲存位置。區域在建立環境時即固定,之後無法變更。
Mastra platform 目前提供 us 與 eu 兩個資料駐留分區,並由 Railway 上的特定運算區域支援。資料庫與 Observability 會自動跟隨環境的區域。
選擇區域「選擇區域」的直接連結
建立環境或第一次部署至環境時,請傳入 --region:
mastra deploy --env production --region eu
mastra env create staging --region us
mastra deploy --region 與 mastra env create --region 均可接受 us / eu 簡寫,或下表所列的標準 Railway 區域碼。建議使用簡寫。
未傳入區域時,預設為 us,會解析為 pdx(奧勒岡州波特蘭)。
可用區域「可用區域」的直接連結
資料駐留選擇器提供橫跨兩個分區的四個 Railway 區域。us 與 eu 簡寫會解析為各分區標示為預設的區域。
| 分區 | Railway 區域碼 | 地點 |
|---|---|---|
us | pdx(預設) | 奧勒岡州波特蘭 |
us | iad | 維吉尼亞州阿什本 |
us | sfo | 加州舊金山 |
eu | ams(預設) | 荷蘭阿姆斯特丹 |
若要將環境固定於特定資料中心,請直接傳入 Railway 區域碼。傳入 us 會選取 pdx,傳入 eu 則會選取 ams。
部署管線中另有其他 Railway 區域(例如新加坡 sin),但資料駐留選擇器尚未提供,因為託管資料庫與 Observability 在美國和歐盟以外尚無本機佈建。傳入無法辨識的區域時會回退至美國預設值,而不會固定於該區域。
託管資料庫位置「託管資料庫位置」的直接連結
附加環境範圍資料庫時,platform 會選擇最靠近環境的 Provider 區域。這由伺服器決定,因此 mastra env db create <env> 上明確指定的 --region 會被忽略。環境的區域才是唯一依據。
| 環境區域 | Turso 區域 | Postgres (Neon) 區域 |
|---|---|---|
pdx | sjc(聖荷西) | aws-us-west-2(奧勒岡) |
iad | iad(阿什本) | aws-us-east-1(北維吉尼亞) |
sfo | sjc(聖荷西) | aws-us-west-2(奧勒岡) |
ams | ams(阿姆斯特丹) | aws-eu-central-1(法蘭克福) |
專案範圍資料庫(由各環境共用)不綁定單一環境,因此可接受明確的 --region。請為旗標使用 Provider 區域 ID,而非 us / eu 簡寫:
mastra env db create --kind turso --region fra
mastra env db create --kind neon --region aws-us-east-1
Turso 提供 20 多個區域,而 Postgres (Neon) 在美國、歐盟與亞太地區的 AWS 和 Azure 區域均可使用。完整清單請參閱 Turso 區域清單與 Neon 區域清單。傳入 Provider 未提供的區域碼時,附加作業會失敗並顯示 Provider 的錯誤。
Observability 共置「Observability 共置」的直接連結
Observability 資料擷取目前在兩個區域執行:美國(愛荷華州,us-central1)與歐盟(阿姆斯特丹)。每個環境的 Trace、記錄與指標都會路由至符合其資料駐留分區的擷取區域:
| 環境區域 | Observability 區域 |
|---|---|
pdx、iad、sfo、us 簡寫 | 美國(愛荷華州) |
ams、eu 簡寫 | 歐盟(阿姆斯特丹) |
運算和資料庫可佈建於比 Observability 更多的 Railway 與 Provider 區域,因此並非所有組合都能完全共置。us 分區環境一律將遙測資料傳送至美國擷取區域,eu 分區環境則一律傳送至歐盟擷取區域,即使底層 Railway 區域是擷取端點未直接支援的特定城市亦然。資料駐留會維持在分區層級,eu 環境的遙測資料絕不會跨至美國。