一零四資訊科技資深架構師蘇曜祥 (左二 ) 、系統服務處處長 蔡吉明 (右二) 及 SUSE 服務團隊

成立於1996年的一零四資訊科技,是國內人力銀行的領導品牌,有鑒於高齡少子化趨勢,已將經營觸角從職涯延伸至兒童與銀髮,訂定「幼有所長」、「壯有所用」及「老有所終」三大願景使命,期盼幫孩子找到天賦,幫求職者找出方向,也幫健康長者發揮價值。

為實踐上述策略目標,一零四持續發展眾多服務,以致在內部形成數十個開發團隊、匯聚逾300位工程師人力,彼此關注的產品特性、技術棧互異。為滿足多元開發需求,於2016年啟用公有雲服務,盼能擴大資源調度基礎,讓開發者自由無拘地探索與實驗各種新技術、新想法。

爾後開發同仁為增進開發與測試效率,開始擁抱Docker技術。同時間維運團隊也亟思打造Container/Kubernetes 運⾏環境來提⾼私有雲內虛擬機器的利⽤率與集縮比,降低資本⽀出之餘,亦想利用容器映象檔的Immutable特性來實現應⽤程式的跨雲地部署與搬遷。由於開發與維運團隊皆對容器有所需求,為避免兩邊各玩各的、衍生管理漏洞與管理風險,一零四技術管理階層於2021年啟動Kubernetes(K8s)專案,力求弭平雲地落差、讓應用程式具有可遷移性,因而著手設計一致性部署與管理流程。

在專案執行過程,一零四有感於K8s成為內部相當重要的應用程式平臺,於是決定結合K8s商業夥伴來加速推動進程。2022年期間基於輕量化、快速安裝等原則遴選Kubernetes Distribution,確定由SUSE Rancher Prime雀屏中選;後續為強化容器環境資安控管,再追加部署SUSE NeuVector方案。

  • 輕量化+快速安裝,使 Rancher Prime 獲得青睞

一零四資訊科技資深架構師蘇曜祥指出,K8s專案蘊含幾個關鍵思考脈絡。譬如讓導入K8s不會淪為單⼀團隊的責任,而是由開發與維運團隊共同參與,綜整各⾃視⾓來設計最適化的應⽤程式部署與⾃動化管理流程;此外亦需滿⾜不同產品線的功能需求,並迎合InfoSec團隊對應⽤程式的⾼安全標準。另一方面,一零四亟欲透過此專案實現應用程式跨越公私雲部署的目標,顯見K8s專案團隊需要做的事情甚多。首先借鑑雲服務的統⼀命令列⼯具概念,開發 GitOps Application Manager ⼯具,統⼀開發/維運團隊執⾏各種任務的作法。

蘇曜祥表示,開發團隊欲建立新應⽤程式時,通常都委由維運團隊協助撰寫相關設定檔,但因需要等待,難免影響開發速度。若由開發團隊自行撰寫又難以掌握設定檔涉及的許多 K8s 平台知識和細節。所以一零四採折衷做法,透過提供公版Helm Chart 將複雜細節隱藏起來,讓開發團隊在此基礎上調整⾃定義參數,便可簡單快速地⽣成合規的K8s Manifest。

此外專案團隊推動了幾項重要工作,像是推動既有應用程式的容器化;Leverage公私雲、實現動態資源管理;推動K8s容器調度流程自動化,並將K8s部署流程與公司既有流程整合。歸納此專案順利推進的關鍵,在於專案團隊一開始就清楚界定想要實現的部署流程與配套工具。

「無論如何,要想快速執行開發、測試,除須依靠完整配套措施外,更需要好的容器管理工具,否則在測試過程中勢必遭遇更多阻礙與延遲,」蘇曜祥說,一零四選擇與SUSE合作,導入Rancher Prime這套具市場領先地位的K8s叢集管理工具,道理便在於此。

他透露在過去一零四曾評估過多個K8s平臺,發現有些產品需要消耗較多運算資源,可能導致同仁無法利用個人的開發環境完成測試工作。於是一零四意識到必須唯有尋求輕量化、易於安裝設定的工具標的,才能順利推動各項K8s叢集安裝與管理任務,因而選擇導入Rancher Prime。

  • 借助 NeuVector,實現更細緻的容器資安管理

Rancher Prime蘊含諸多優點,首先在於搭配的RKE,不僅安裝便利且容易設定;其次推出k3d/k3s⼯具,成為專案同仁在開發測試Argo CD、多叢集部署…等相關流程的好幫⼿;再來更重要的是輕量化,以往用它牌工具時,須準備內含至少32GB記憶體的機器,才能建立測試環境,如今轉換至Rancher Prime,記憶體需求驟降至數百MB即可,意謂人人都能輕易建構完整測試環境。另外Rancher Prime整合多個公有雲API,讓專案同仁輕易透過Rancher Prime打造雲端叢集,並納管到一零四採用的Argo CD內(用於同步應⽤程式狀態、部署應⽤程式)。因此一零四得力於Rancher Prime,僅需1~2小時便可建立K8s叢集並完成應⽤程式安裝;同樣的工作落在前一代工具,則須耗時半天到一天。

目前一零四在AWS、GCP及On-Premises環境,共計建立逾10座叢集,利用Rancher Prime作為統⼀管理介⾯,集中監測所有叢集設定、實施管理任務;維運團隊無需針對雲地不同環境分頭建立多套管理工具,即可集中控管,且讓應用程式在不同環境間遷移、10秒內⾃動完成使⽤者流量切換。

導入Rancher Prime約半年後,一零四引進SUSE NeuVector⼯具。蘇曜祥說,原本利用K8s網路政策來控管容器環境安全性,但它在Egress連線規則上並不符合一零四管理政策所需。如今借助NeuVector網路安全功能,即可跳脫傳統以IP為基礎的管理框架,針對叢集內的特定機器或應用單獨設定防火牆規則,達到細緻控管,充分滿足一零四的期望。

展望今後,一零四對於K8s運行環境尚有持續精進的規劃,比方說要利用Rancher Prime快速開發與部署特性,產出更多開發者自助服務,進一步減輕維運團隊的Routine工作負擔。另外InfoSec 團隊有鑒於市面上K8s安全防護資源相對稀缺,對NeuVector產生莫大興趣,現正研擬相關配套措施,打算全面啟用NeuVector的所有功能,不限於現已啟用的網路安全。

千里之行始於足下,歡迎加入 104 一同參與令人收穫滿滿的旅程:https://www.104.com.tw/job/75t5t

熱門新聞

Advertisement