DevOps F5 NGINX Kubernetes BIG-IP BIG-IQ

F5逐步搭建整合控管平台 降低Dev與Ops之間隔閡

Nginx為容器添負載平衡 銜接資安防護保安全

2019-09-12
隨著數位化應用需求興起所驅動的變革,傳統維運者較熟悉的ADC設備近年來亦隨之演進,幫助跨技術領域結合的DevOps團隊彼此之間降低隔閡,增進協作與溝通效率的同時,亦可把擅長的資安防護能力納入Pipeline流程,為原生雲端應用把關。

 

F5 Networks台灣區資深技術顧問陳廣融指出,維運人員熟悉的F5網路設備解決方案,搭配日前併購取得知名開源網頁及應用程式伺服器Nginx公司,可藉此整合Docker與Kubernetes容器環境,以提供負載平衡、API管理等機制,進而為Pipeline流程提升效率。

摒除過往成見Dev與Ops攜手合作

過去瀑布式的開發週期如今大幅縮短,主要影響到需求、開發、測試的流程,在持續整合(CI)階段,Nginx可輔助Jenkins執行單元測試、程式碼安全檢測等機制;持續發布(CD)時期則為既有F5的BIG-IP與BIG-IQ可發揮之處。

若要達到持續整合、持續發布,除了工具輔助以外,DevOps團隊必須要持續不斷地學習與改善流程,讓測試與部署的週期得以大服務縮短,此時勢必得採用自動化機制來協助,欲順利實踐運行,首先人的問題要先處理。

陳廣融指出,F5接觸最多的是維運人員,因此更擅長從維運的角度來看DevOps。自從開源陣營提出新的自動化工具,例如廣受歡迎的Git程式碼控制等,Dev才開始有能力實踐持續整合、持續發布;從整體Pipeline工作流程來看,Ops主要負責的偏重於程式碼運作環境,面對的變遷是實體伺服器演進到虛擬化平台,如今再進化到容器環境,較Dev技術領域所需學習的知識不同。

「Dev與Ops原本的工作職掌部分重疊,始終存在相互推卸責任的狀況,如今要打破成見組成團隊,確實不容易。Gartner曾經在市場調查報告中指出,要Dev承接Ops的工作,實際上不可行,專業程度遠遠不夠;同樣的,Ops也無法承攬Dev的工作。以F5接觸本土企業的經驗,即便是已經取得軟體銀行執照的企業,開發團隊也無法具備承接維運工作的能力。如此情況下,必須得透過建立積極溝通、協同合作的工作模式,抑或是藉由搭建平台輔助整合運行。」陳廣融說。

Nginx為容器環境建立負載平衡機制 

DevOps採用的Pipeline工作流程中,相當仰仗容器環境搭配Kubernetes調配工具,主要即是可讓整合、測試、部署的動作,運用預先撰寫的腳本自動化執行。在Runtime環境中,開發者簽入程式碼,即可觸發Jenkins負責持續整合,拉進工作流程中已被簽入的程式碼進行打包封裝成為映像檔,在Docker環境中啟動運行,其中必要的工作負載配置、整合運行測試,即可藉由Nginx建立整合實作,並且運用蒐集取得的資料提供可視化,以便在發生問題時DevOps團隊得以提升查找根源與排除的效率。

F5 Networks台灣區資深技術顧問陳廣融指出,應用開發團隊與架構維運團隊之間的鴻溝由來已久,維運者希望能從網路層建立加速、抵抗惡意攻擊等機制,開發者則是更在意程式碼運作效能、API相互溝通的模式,F5近年來發展方向,即是讓DevOps團隊得以在單一平台上執行異質任務。

陳廣融強調,由於Nginx程式碼很小,可大幅改善運行速度,既有F5解決方案擅長的則是提供資安防護機制,如今在DevOps整個工作流程中,較欠缺的資安防護能力,正可運用F5經驗與知識來強化。F5對於DevSecOps可以有較多著墨,主要是在工作流程中納入安全性考量,也就是既有的網頁應用防火牆(WAF)。

「當資安團隊發布最新的資安控管措施,套用的範疇也得以涵蓋到容器運行環境。就開發團隊的思維而言,在意的大多只有在網頁伺服器,頂多在執行Build的時候納入Nginx設定參數,不會在部署階段納入基礎架構建置的資安防禦措施。畢竟DevOps是開發團隊所驅動,維運人員在意的安全性問題則較少被提及。」陳廣融說。

API整合商業版工具保障可管理性 

儘管Nginx本身也有開源陣營的網頁應用防火牆機制,問題在於僅為基於簡單的特徵碼辨識,不足以降低商業應用環境的資安風險。對此,F5的策略是容器環境的工作負載機制由Nginx負責,並且把流量導向BIG-IP,則用來防堵機器人、DDoS等攻擊事件。

F5旗下的Nginx技術,來自2019日前收購所取得。Nginx擁有控制器的技術,基於模組化所發展,能夠部署負載平衡、API管理、Proxy等服務。其中API管理模組,允許自行定義發布、保護、監控、分析的API類型。現階段正在積極發展Service Mesh模組,可為大規模微服務運行的容器環境,簡化其管理上的複雜度。

陳廣融指出,「容器環境必備的負載平衡機制,現階段可選用的工具已逐漸增多,例如Kubernetes亦基於Nginx開源版本自行Build負載平衡。其實我們有許多銀行業客戶,容器集群採用F5 BIG-IP/BIG-IQ直接介接Kubernetes Ingress控制器,既可負責應用存取的平衡負載,同時兼顧安全性。另一方面,容器環境擴充部署的需求主要來自開發團隊所驅動,如今維運人員得以直接到Docker Hub拉回映像檔,輸入簡單指令即可啟用Nginx。在F5併購Nginx之後,企業端得以有不同選擇性。」

擅長基於F5解決方案處理日常工作問題的IT人員,系統環境架構欲演進到Docker叢集,必須得熟悉Kubernetes與實作配置Ingress控制器,以便於部署開通時,執行AB測試、灰度發布、藍綠等部署模式。在架構中引導流量的角色即是Nginx或傳統ADC延伸提供的機制,一旦DevOps團隊完整具備了掌握Pipeline的能力,可直接在持續整合、持續發布的流程中,延伸納入維運必須執行的工作,此時即可直接呼叫Nginx,藉此自動化執行配置。

「DevOps的工作流程要能夠完全通透,應該是IT部門須全數納入,並且交由高階主管來架構工具鏈,F5解決方案可透過API介接整合運行。」陳廣融說。畢竟多數企業IT人力有限,就算有能力掌握開放社群中最多人採用的工具技術,建置在商業運行環境難免會遇到整合運行的問題,此時即可藉由F5提供的API,保障可管理性與降低資安風險。

【專題報導】:IT跨界合作 DevOps展價值


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!