天天看點

【案例學習】傳統應用程式上雲的經典案例,歐洲兩家領軍企業的落地實踐(一)法國興業銀行:有狀态的傳統應用程式也可以容器化(二)丹麥金融保險公司Alm Brand - 為傳統應用程式尋求操作的穩定性

法國興業銀行(Société Générale)是一家擁有153年曆史的法國跨國銀行,這家銀行堅信技術和創新是豐富客戶體驗和推動經濟發展的關鍵因素。幾年前,該銀行啟動了一個項目,該項目定義了它們的下一代應用程式平台,就是在2020年前将其應用程式的80%上傳至雲端運作。法國興業銀行選擇了Docker企業版(Docker EE)作為其應用程式的基礎平台,并在15個月前開始與之合作。今年在DockerCon歐洲大會上,DevOps架構師Stephan Dechoux 和中間件專家Thomas Boussardon分享了他們将Docker企業版(Docker EE)內建到法國興業銀行IT系統的經曆。

法國興業銀行擁有多種應用程式組合,其中包括許多不同類型的應用程式,如傳統的單一應用程式(monolithic apps),SOA,分布式應用程式和REST API。該銀行也是一個在全球範圍内擁有團隊和資料中心的全球性組織。它的主要目标是提供新的應用程式平台,以加快産品上市時間并降低成本,同時加速創新。最初,法國興業銀行考慮了現成的PaaS解決方案,但是它意識到這些解決方案更适合于建立的應用程式,而它需要的則是一個可以馬上支援已經存在的數千個應用的解決方案。

另一方面,該平台還需要支援法國興業銀行未來的項目。例如,雖然他們有一個相當大的私有雲,但他們希望確定該解決方案可以擴充到公共雲,并支援新興技術和未來的使用案例,如機器學習和區塊鍊技術。

法國興業銀行得出的結論是,Docker EE将同時支援它們現有的應用程式以及建立的應用程式,同時讓它們能夠整合首選系統并利用現有的基礎設施。

它們首先定義了現有的技術和應用程式堆棧,并優先考慮将Docker EE與其核心CI / CD管道工具(包括Jenkins,Github和Nexus)內建。

【案例學習】傳統應用程式上雲的經典案例,歐洲兩家領軍企業的落地實踐(一)法國興業銀行:有狀态的傳統應用程式也可以容器化(二)丹麥金融保險公司Alm Brand - 為傳統應用程式尋求操作的穩定性

如上圖所示,法國興業銀行開始将有狀态的應用程式遷移到平台。為了支援這些有狀态的(主要是傳統的)應用程式,Docker EE使用新的卷(volume)插件內建到現有的NetApp存儲中。法國興業銀行大約在9個月前開始了在Docker EE中運作第一套應用程式。

【案例學習】傳統應用程式上雲的經典案例,歐洲兩家領軍企業的落地實踐(一)法國興業銀行:有狀态的傳統應用程式也可以容器化(二)丹麥金融保險公司Alm Brand - 為傳統應用程式尋求操作的穩定性

随着這些應用程式在Docker EE中運作,Thomas和Stephan添加了日志記錄和監控解決方案,不僅可以檢視容器内部的運作情況,還可以将資訊集中在一個儀表闆上。

【案例學習】傳統應用程式上雲的經典案例,歐洲兩家領軍企業的落地實踐(一)法國興業銀行:有狀态的傳統應用程式也可以容器化(二)丹麥金融保險公司Alm Brand - 為傳統應用程式尋求操作的穩定性

今天,在它們開始這個項目15個月之後,它們進入了第三階段。在Docker EE平台上有10個應用程式正在運作,另有50個應用程式正在開發中。大約有400名開發人員在這個平台上工作,并且在整個組織内産生了極大的熱情,不同的團隊都想在這個平台上工作。

現在,現有的傳統應用程式更容易更新和維護了,法國興業銀行正在尋找更多的微服務,并擴充平台以支援新的雲原生應用程式和新興技術。在接下來的幾個月中,法國興業銀行将在多個雲層(私有雲和公共雲)之間一同運作,就像Stephan說的那樣,将所有的一切都運作在“一個巨大的叢集”中。

對于Stephan和Thomas來說,Docker EE在法國興業銀行的成功來自于優先考慮到平台的整合點以及關鍵應用程式的初始選擇。從小處着手,銀行可以憑借自己的成功,在平台建成之後積聚更多的動力。通過分步計劃,他們能夠随着時間的推移增加更多的功能,同時在平台上培養更多的團隊。今天,Docker EE無疑是整個組織的首選平台。

Alm Brand成立于1792年,它是一家總部位于哥本哈根的丹麥保險和金融公司,也是曆年都出席DockerCon歐洲大會的公司之一。IT架構師Sune Keller和系統專家Loke Johannessen将騎着他們的自行車前往2017年DockerCon 歐洲大會,現場示範如何幫助傳統的WebLogic應用程式遷移到Docker企業版(Docker EE)。

在參加完2015年的DockerCon(當時被稱為Docker Datacenter)歐洲大會之後,Alm Brand開始與Docker EE合作。他們成功的在Docker EE環境中部署第一套新應用程式後,Alm Brand繼而想要用它來解決他們現有的WebLogic應用程式,這個讓他的團隊感到頭疼的應用程式。該團隊在一個大型叢集中運作WebLogic應用程式,所有這些應用程式都運作在同一個Java虛拟機上。當一個應用程式崩潰時,它通常會導緻整個Java虛拟機的崩潰或中止整個群集,這使得大家很難确定哪個應用程式是導緻崩潰的根源。這種設定也非常脆弱,而且速度很慢,因為他們隻能一次隻能将一個應用部署到叢集中。

【案例學習】傳統應用程式上雲的經典案例,歐洲兩家領軍企業的落地實踐(一)法國興業銀行:有狀态的傳統應用程式也可以容器化(二)丹麥金融保險公司Alm Brand - 為傳統應用程式尋求操作的穩定性

憑借他們使用Docker EE部署首批應用程式所積累的經驗,Sune和Loke設定了遷移傳統WebLogic應用程式的宏偉目标。他們開始在工作時間内從現有的叢集切換到Docker EE,無需更改代碼,并将對使用者産生的影響降到最低。

目前,Alm Brand已經将39個WebLogic應用程式遷移到他們的Docker EE環境中,并與近50個新開發的應用程式一起使用。他們能夠通過在傳統叢集和新Docker叢集之間對應用程式進行負載平衡,以最小的幹擾進行遷移,進而在不影響使用者使用的情況下,逐漸将流量從一個叢集轉移到另一個叢集。Sune和Loke在演講中示範了這個過程,值得大家一試!

【案例學習】傳統應用程式上雲的經典案例,歐洲兩家領軍企業的落地實踐(一)法國興業銀行:有狀态的傳統應用程式也可以容器化(二)丹麥金融保險公司Alm Brand - 為傳統應用程式尋求操作的穩定性

對于營運團隊而言,這種遷移的積極影響非常大,原因如下:

改良配置管理:對于Alm Brand來說更具挑戰性的問題之一就是處理不同應用程式8年的配置堆積問題。通過仔細測試和拆分依賴關系,他們将26個不同的自定義虛拟機精簡至12個。

更輕松的維護和故障排除:由于應用程式彼此隔離的特性,Alm Brand出現服務中斷的經曆要少得多。應用程式問題也就更容易識别和解決了。

新開發和傳統的應用程式擁有統一标準的運作模式:在同一個Docker EE平台上運作這兩種類型的應用程式,可以在整個組合環境中集中記錄日志和度量名額。Alm Brand能夠使用同一組程序和儀表闆來管理所有的應用程式。

Sune and Loke還有大約10個WebLogic應用程式需要遷移,然後他們将開始着眼于他們的Windows應用程式組合。他們已經在開始利用Docker EE的基本通路控制和LDAP內建功能,現在還在探索其他一些進階功能,如用于分離生産和非生産環境的基于節點的隔離功能。