公司 AdForm 地點 丹麥哥本哈根 產業 廣告科技

挑戰

Adform 的使命是提供安全且透明的全方位廣告技術堆疊,以實現跨裝置的數位廣告。該公司擁有龐大的基礎架構:以 OpenStack 為基礎的私有雲,在全球 7 個資料中心運行,共計 1,100 台實體伺服器,其中 3 個資料中心是在去年開設的。隨著公司的成長,基礎架構團隊認為「我們的私有雲真的不夠彈性」,IT 系統工程師 Edgaras Apšega 表示。「最大的痛點在於我們的開發人員需要維護他們的虛擬機器,因此推出技術和新軟體需要時間。我們在發布方面真的很掙扎,而且我們沒有自我修復的基礎架構。」

解決方案

團隊在 2017 年採用了 Prometheus 進行監控,並擁抱了 Kubernetes 和雲原生實務。「為了開始我們的 Kubernetes 之旅,我們必須調整我們所有的軟體,所以我們必須選擇更新的框架。」Apšega 說。「我們也採用了微服務的方式,因此可觀察性更好,因為您可以分別檢查錯誤或服務。」

影響

「Kubernetes 對我們的業務有很大的幫助,因為我們的功能可以更快地推向市場。」Apšega 說。發布流程從數小時縮短到數分鐘。自動擴展至少比以前需要的半手動 VM 啟動和應用程式部署快 6 倍。團隊估計,由於設置硬體和虛擬機器、指標和日誌記錄所需的硬體和人力時數減少,公司已體驗到 4-5 倍的成本節省。硬體資源的利用率也降低了,容器的效率比虛擬機器高出 2-3 倍。「部署非常容易,因為開發人員只需推送程式碼,它就會自動出現在 Kubernetes 上。」Apšega 說。Prometheus 也產生了積極的影響:「它為指標和警報提供了高可用性。我們監控從硬體到應用程式的所有內容。在 Grafana 儀表板中擁有所有指標,可以為您的系統提供很好的洞察力。」

Adform 去年偵測到 HyphBot 廣告詐欺網路,該網路每天造成一些企業數十萬美元的損失,因此上了 頭條新聞

Adform 的使命是提供安全且透明的全方位廣告技術堆疊,以實現開放的網路,因此發布了一份 白皮書,揭露了他們所做的事情,以及其他人也可以做的事情,以限制客戶遭受詐騙的風險。

本著同樣的精神,Adform 正在分享其雲原生之旅。「當您看到每個人都分享他們的最佳實務時,它會激勵您回饋專案。」IT 系統工程師 Edgaras Apšega 說。

該公司擁有龐大的基礎架構:以 OpenStack 為基礎的私有雲,在他們自己的全球七個資料中心運行,共計 1,100 台實體伺服器,其中三個資料中心是在去年開設的。隨著公司的成長,基礎架構團隊認為「我們的私有雲真的不夠彈性」,Apšega 說。「最大的痛點在於我們的開發人員需要維護他們的虛擬機器,因此推出技術和新軟體真的需要時間。我們在發布方面真的很掙扎,而且我們沒有自我修復的基礎架構。」

團隊已經在使用 Prometheus 進行監控,他們擁抱了 Kubernetes、微服務和雲原生實務。「雲原生運算基金會孵化 Kubernetes 這個事實對我們來說是一個非常重要的點,因為它是供應商中立的。」Apšega 說。「而且我們可以看到社群真的聚集在它周圍。」

一個概念驗證專案啟動了,一個 Kubernetes 叢集在資料中心的裸機上運行。當開發人員看到容器與虛擬機器流程相比,可以多麼快速地啟動時,「他們希望立即將他們的容器投入生產,而我們仍在進行概念驗證。」IT 系統工程師 Andrius Cibulskis 說。

當然,仍然有很多工作要做。「首先,我們必須學習 Kubernetes,了解所有運作部件,以及它們如何膠合在一起。」Apšega 說。「其次,整個 CI/CD 部分必須重做,我們的 DevOps 團隊必須投入更多人力時數來實施它。第三是開發人員必須重寫程式碼,而且他們仍在這樣做。」

第一個生產叢集於 2018 年春季啟動,現在在三個資料中心擁有最多 20 台專用於 Pod 的實體機器,並計劃在其他四個資料中心建立獨立的叢集。面向使用者的 Adform 應用程式平台、資料分發平台和後端現在都在 Kubernetes 上運行。「許多關鍵應用程式的 API 正在為 Kubernetes 開發中。」Apšega 說。「團隊正在將他們的應用程式重寫為 .NET core,因為它支援容器,並準備遷移到 Kubernetes。而新的應用程式,預設情況下會進入容器。」

這種巨大的推動力來自於這些新實務所產生的實際影響。「Kubernetes 對我們的業務有很大的幫助,因為我們的功能可以更快地推向市場。」Apšega 說。「部署非常容易,因為開發人員只需推送程式碼,它就會自動出現在 Kubernetes 上。」發布流程從數小時縮短到數分鐘。自動擴展至少比以前需要的半手動 VM 啟動和應用程式部署快六倍。

團隊估計,由於設置硬體和虛擬機器、指標和日誌記錄所需的硬體和人力時數減少,公司已體驗到 4-5 倍的成本節省。硬體資源的利用率也降低了,容器的效率比虛擬機器高出兩到三倍。

Prometheus 也產生了積極的影響:「它為指標和警報提供了高可用性。」Apšega 說。「我們監控從硬體到應用程式的所有內容。在 Grafana 儀表板中擁有所有指標,可以為我們的系統提供很好的洞察力。」

所有這些好處都滲透到個別團隊成員身上,他們的工作生活因此變得更好。「他們過去常常在晚上起床重新啟動一些服務,現在 Kubernetes 處理了所有這些。」Apšega 說。Cibulskis 補充說:「發布對他們來說真的很好,因為他們只需將他們的程式碼推送到 Git 就完成了。他們不必再擔心他們的虛擬機器了。」甚至安全團隊也受到了影響。「安全團隊總是感到不高興。」Apšega 說,「現在他們很高興,因為他們可以輕鬆地檢查容器。」

該公司計劃目前仍留在資料中心,「主要是因為我們想保留所有資料,不以任何方式分享它。」Cibulskis 說,「而且以我們的規模來說更便宜。」但是,Apšega 說,使用混合雲進行運算的可能性很吸引人:「我們感興趣的專案之一是 Virtual Kubelet,它可以讓您在不同的雲端上啟動工作節點來進行一些運算。」

Apšega、Cibulskis 和他們的同事們正在密切關注雲原生生態系統的發展,並很高興能在他們力所能及的地方做出貢獻。「我認為我們公司才剛剛開始我們的雲原生之旅。」Apšega 說。「這看起來像是一條漫長的路,但我們真的很高興我們加入了它。」