國家高速網路中心 - TWCC台灣AI雲

一、個案概要

為了解決台灣近年來高速計算以及儲存資源不足的問題,國網中心在政府的支持之下,推動與建置國家級人工智慧研發與雲端服務基礎建設,即為「台灣杉2號」或稱「TWCC台灣AI雲」,做為國內發展人工智慧的重要建設。此案在運算服務上分為三個部分,虛擬機、容器與HPC,儲存服務則為GPFS、Block Storage與Object Storage,網路服務整合了virtual network/load balancer/firewall/vpn,雙子星雲端整合了以上的運算、儲存與網路服務,幫助使用者以API介面直接取得其資源,來運行AI與大數據所需的服務。

Industry

財團法人 / 政府機構

Region

台灣

Use Case

  • 人工智慧/大數據運算
  • Nvidia Tesla V100、OpenStack、Kubernetes、Slurm、Singularity、Ceph、GPFS
  • 專屬型資源 (VM, container)、任務型資源(Job)與平台服務(資料庫、Hadoop, Kubernetes, etc)
  • Virtual network、Load balancer、防火牆、VPN
  • 雙子星雲端 API Gateway 與 Cloud Platform

二、痛點與挑戰

  • 需考量公有雲使用情境,但資源有限狀況
  • 高效能電腦容器化技術
  • 多種異質運算與儲存資源整合
  • 複雜的身份驗證、授權與計費
  • 需考量未來異地資源也能無痛介接

為了解決台灣近年來高速計算以及儲存資源不足的問題,國網中心在政府的支持之下,推動與建置國家級人工智慧研發與雲端服務基礎建設,即為此案「台灣杉2號」,做為國內產學研各界發展人工智慧與大數據發展的重要基礎建設。

由於此案是作為公有雲的方式對外進行服務,因此在身份驗證(Authentication)、授權(Authorization)、計費(Accounting)方面,都需要經過詳細的評估與檢驗。在驗證授權方面,必須整合各個子系統;在計價方面,也需要整合用戶在不同資源上使用的狀況,推送相應的資料到國網本身的系統內,以便對用戶扣除費用,以及提供帳單等資訊。架構面上也需要考慮異地資源整合,以便未來國網中心在不同地區的運算、儲存資源,都可以一併在此平台上被使用者取得。

三、架構設計特色

本案結合了高速運算超級電腦(HPC)、容器運算服務(Kubernetes、Docker)、虛擬機器運算服務(OpenStack、VM)、分布式軟體定義儲存系統(Ceph)、平行檔案儲存系統(GPFS),以及國網中心本身的帳號服務系統(iService),在使用情境上也需要做上述資源的整合,才能夠提供使用者以最簡便的方式取得其資源。

  • 提供 API Gateway 對外提供單一進入節點,單一帳號即可使用所有資源
  • 單一 PaaS 串接多樣性異質平台,包含運算與儲存
  • 提供軟體安裝模板,讓管理者可以上架使用者所需的軟體,使用者也可一鍵建立所需服務
National Center for High-Performance Computing

雙子星雲端在本案上主要提供 Gemini Open Cloud Platform與 Gemini API Gateway 兩個主要軟體層,同時也支援 HPC 當中 Slurm 與 Singularity部分,提供使用者以 API 或 CLI 的方式直接取得下層運算資源。而User Portal 部分則是直接使用雙子星提供的API 來進行串接,讓使用者不管使用 API 或 UI 都可以有一致的體驗。

在 Cloud Platform 部分,主要串接了 OpenStack 以及 Kubernetes 兩大雲計算開源軟體,分別管理 Virtual Machine 虛擬機跟 Container 容器等不同類型的虛擬化資源,來作為輔以 AI 人工智慧的周邊服務,例如資料預處理、推論等;另外也串接了 S3 儲存服務來根據不同帳號提供相關金鑰資訊,透過雙子星雲端的平台整合技術,讓大數據可以順利接軌人工智慧技術,進而提供端到端的完整服務。

API Gateway 則是串接了 GOC PaaS、國網 iService 帳號服務,以及提供容器的 Harbor 鏡像倉庫,讓使用者可以透過單一節點使用全服務。使用者也可以透過 API Gateway 的特性,創建出自己的次金鑰(Sub-Key),讓非本案平台的使用者,也可以透過金鑰很方便地串接到自己的軟體上。

為了讓高速運算主機可以最大程度的被使用者使用其資源,相關的軟體與服務需要盡量輕量化,因此使用的國際開源軟體 Slurm 以及 Singularity 作為資源調度軟體與容器化服務,最適用於超級計算機架構。雙子星雲端以 API 與 CLI 方式,支援使用者透過 Slurm 調度資源,並以 Singularity 包裝 AI運算所需的軟體框架,讓使用者可以在與 Docker 一樣的環境內,直接使用超級計算機的效能,快速地進行 AI 模型訓練。使用者以 Singularity 這種輕量級的容器化技術,幫助使用者運用超級電腦內的 GPU 資源進行 AI 人工智慧運算,此技術多使用在高速運算效能電腦(HPC)上,是國內少見的成功案例。

四、建置成果

商業轉型

  • 透過國網中心的高速網路,加上世界級的運算電腦,提供最佳的大數據與 AI 運算環境
  • 產學研界可用更有效益的方式取得運算資源,不用花費大量金錢自建運算環境
  • 透過公有雲營運方式,可望持續經營此平台,造福產學研技術發展

國網中心建置 TWCC(Taiwan Computing Cloud)平台,成功對外經營公有雲平台服務,提供台灣產學研界一個最佳的大數據與 AI 模型訓練環境。除了提供運算、儲存、安全的網路環境之外,此平台也將整合國內各界發展的 AI 程式模型與工具等,以及國內外重要的資料集,來促過國內 AI 人工智慧與大數據的發展,協助實現智慧台灣的願景。

IT 技術轉型

  • 開發人員可快速佈建開發環境,相較過往大幅增加工作效率
  • 跨節點的高速平行運算,相較現有服務可增加更高效能
  • 產學研界逐漸將 AI 模型訓練移植到此平台,加速國內相關技術發展

國網中心透過雙子星雲端團隊所提供的API,開發了專屬的 CLI介面,讓使用者可以直接透過CLI 來創建與刪除容器服務。而本案的Web 使用者介面,絕大多數功能均採用雙子星雲端提供的API來進行開發,因此使用者不管在何時使用CLI、Web UI或API,均可以得到一樣的資訊,包含虛擬機、容器、網路服務、儲存卷等。並提供多租戶環境,讓每個租戶之間的虛擬資源與子網路隔離,達到更安全的防護效果。

本案的軟、硬體陣容龐大,導入雙子星雲端後,已大幅降低需從零開始的時間,OpenStack、Kubernetes 等服務均微幅調整即可滿足需求。不同於其他類型的案子,本案所提供的運算服務與儲存服務種類甚多,還需要串接國網中心的帳號服務(iService),因此雙子星雲端團隊於本案提供大幅度客製化的內容,並從需求訪談、技術細節、教育訓練等,提供國網中心完整的專業服務。