Google Cloud 上的 Python 2 支援

Python 社群已宣布將於 2020 年 1 月 1 日淘汰 Python 2,並鼓勵所有開發人員盡快升級至 Python 3。考量到客戶可能需要更多時間從 Python 2 遷移至 Python 3,Google Cloud 客戶在 2020 年 1 月 1 日後,仍可執行 Python 2 應用程式,並使用現有的 Python 2 用戶端程式庫

在 2020 年 1 月 1 日之後,App Engine 等代管運算服務仍會提供 Python 2 執行階段。Python 2 用戶端程式庫仍可供下載,但日後的主要版本只會支援 Python 3。

本頁面將摘要說明 Google Cloud 對 Python 2 和 3 的支援情形,並提供有助於遷移至 Python 3 的資源。我們會持續更新這個頁面,提供最新資源和資訊。

Python 2 支援狀態

Google Cloud Python 用戶端程式庫

2020 年 1 月 1 日後發布的 Python 用戶端程式庫新主要版本,將不再支援 Python 2.7。您仍可下載先前的重大版本,存取現有的服務端點,並支援目前使用 Python 2.7 開發的使用者。

如果舊版程式庫或舊版程式庫的程式庫依附元件中偵測到安全漏洞,我們不會發布修補程式。

App Engine Python 2.7 執行階段

我們致力於長期支援 App Engine Python 2.7 執行階段,持續提供支援,協助您以自己的步調邁向未來。

為長期支援 Python 2.7 執行階段,我們將逐步進行下列變更:

  • 盡可能將執行階段還原為未分叉的開放原始碼狀態。 我們必須大幅限制及修改部分執行階段,才能在資料中心安全地執行您的應用程式。我們將變更資料中心執行階段的運作方式,長期為這些執行階段提供安全且可擴充的環境。

  • 新增支援套件存放區、原生元件建構和資產存放區的完整建構系統。

如要進一步瞭解 App Engine Python 2.7 執行階段的長期支援服務,請參閱 App Engine 長期支援計畫。如需更多遷移資訊,請參閱遷移至 Python 3 標準執行階段

Google Cloud CLI

Google Cloud CLI 274.0.0 版開始支援 Python 3。舊版 gcloud CLI 仍可供下載,但建議使用 274.0.0 以上版本,並盡快遷移至 Python 3。

如要瞭解如何設定 gcloud CLI 使用 Python 3,請參閱「使用 Python 3」一文。

Google Cloud CLI 隨附的 gcloud CLI 以外的 Python 工具,仍需搭配 Python 2.7 解譯器。詳情請執行: gcloud topic startup

Deployment Manager 範本

我們預期大多數 Deployment Manager 範本會繼續與 Python 3 搭配運作。如果您在範本中使用其他 Python 程式碼 (例如輔助指令碼或範本模組),請確認這些程式碼與 Python 3 相容。

如要瞭解從 Python 2.7 轉換至 3.x 時會遇到什麼情況,請參閱 Deployment Manager 說明文件

Dataflow

自 2020 年 10 月 7 日起,Dataflow不再支援 Python 2 管道。由於產業趨勢轉變,加上 Apache Beam 停止支援 Python 2,Dataflow 無法保證長期提供 Python 2 服務的功能支援或維護。

您可以使用最新版 Apache Beam SDK,在 Python 3 上執行現有的 Python 批次和串流管道。建議您按照「將 Python 2 程式碼移植到 Python 3」說明文件,確認管道程式碼與 Python 3 相容。

如要瞭解與 Apache Beam Python 3 遷移作業相關的已知問題,請參閱 BEAM-1251 追蹤工具上的常見問題。如要進一步瞭解 Apache Beam 2.x SDK 的支援狀態,請參閱 SDK 版本支援狀態頁面