漢莎航空原本採用龐大的單套式設計架構,將資料倉儲、資料庫叢集、搜尋引擎等重要元件通通整合在統一平臺上運作。而Miles & More IT經理Matthias Krohnen大刀闊斧,將舊有系統拆成7大元件,包含企業服務匯流排(ESB)、資料庫叢集、核心應用程式、資料倉儲、搜尋引擎、身分管理系統,並且將其部署在OpenShift之上運作。圖片來源/漢莎航空

早在23年前,全球第四大的漢莎航空展開了一項飛行里程獎勵服務Miles & More,累積至今已經成為歐洲最多人註冊的飛行常客回饋計畫,超過2,800萬名會員,平均每個月還會增加15萬名新會員,跨業合作業者超過300家,遍及服飾業、電信業、零售業、科技業及飯店業等。但是,

不過Miles & More IT經理Matthias Krohnen表示,雖然Miles & More已經營運超過20年,但是由於航空業營收成長的幅度有限,「導致Miles & More的成長也不高。」

他表示,對漢莎航空而言,拉高用戶忠誠度是提高業務成長的最重要戰略,也因此,公司高層決定將Miles & More從漢莎航空獨立出來,成為漢莎航空旗下的合資公司(Joint Venture),同時還設立獨立運作的法務部門。

Miles & More的三大目標

漢莎航空高層對於Miles & More賦予重任,在重新整併組織後,也設下了三大目標。Matthias Krohnen表示,首先是擴大與非飛航業者合作,「包含那些不在財星100大名單的企業。」

第二目標則是提高消費者忠誠度,而Miles & More的策略在於,鎖定單一會員的需求,提供精準行銷,「而不是像傳統手法,發送大批的電子郵件、促銷方案給用戶。」而第三個目標,則是加強產品創新,以及縮短新產品進入市場的時間。

「為了達到這些營運目標,Miles & More必須要仰賴快速、穩定,並且可以水平擴充的IT系統。」Matthias Krohnen表示。

IT架構大轉型,從單套式轉成微服務應用程式

在Miles & More自成漢莎航空的合資公司後,既有的IT架構也有了大轉換,包含飛行常客回饋計畫系統、零售系統,以及非飛航業者夥伴這三大系統,通通得要轉移至Miles & More下運作。而這項移轉工作的挑戰在於,除了漢莎航空既有龐大系統採取單套式(Monolithic)的架構,系統搬遷的過程也必須平滑順利,否則恐影響2,800萬名會員的使用體驗。不僅如此,Matthias Krohnen表示,舊有系統承受很高執行負載壓力,各自也有相異的操作介面,「這樣複雜的IT架構,很難縮短新產品進入市場的時間。」

雙速IT同時滿足新舊架構需求

因應架構轉移的需求,Miles & More的IT單位擬定出了3個可能實施的解決方案。首先是維持既有現況,此方案是失敗風險最低的選項,「但是我們將無法達成高層下訂的目標,而IT系統不僅難以維護,也很難有所創新。」Matthias Krohnen表示。

再者是將既有系統全部撤換,重頭開始建立,但是此個選擇除了高風險、高投資外,根據Matthias Krohnen的計算,至少需要花上2年重建。

在經過審慎評估後,Miles & More最後選擇分軌並行的雙速IT(Two-Speed IT),讓新舊IT架構同時存在。確保老舊系統的效能表現以及穩定性,而新興應用程式則採取微服務架構的設計。

Matthias Krohnen表示,雙速IT的優點在於,可以確保系統穩定性、敏捷度,在維護既有傳統IT時,也能逐步開始建立微服務,「未來會可將傳統IT中的核心功能,利用微服務的方式打包,提供給合作夥伴使用。」他表示。

漢莎航空旗下合資公司Miles & More IT經理Matthias Krohnen表示,分軌並行的雙速IT(Two-Speed IT)能讓新舊IT架構同時存在,確保老舊系統的效能表現以及穩定性的同時,新興應用程式則採取微服務架構設計,可以確保系統穩定性、敏捷度。

2014年開始引入微服務架構

在2014年,Miles & More就開始著手導入微服務架構及紅帽OpenShift平臺,從主管飯店、購物的非飛航業夥伴(Non-Air Partners)系統著手,思考如何將它進行模組化翻修。

這個系統原先是採用龐大的單套式設計架構,將資料倉儲、資料庫叢集、搜尋引擎等重要元件通通整合在統一平臺上運作。而Matthias Krohnen大刀闊斧,將舊有系統拆成7大元件,包含企業服務匯流排(ESB)、資料庫叢集、核心應用程式、資料倉儲、搜尋引擎、身分管理系統,並且將其部署在OpenShift之上運作。

在轉換架構的初期,整套系統僅靠3臺伺服器在運作,要應付OpenShift基礎架構、運作21個靠Java建構的微服務,並且執行中介軟體JBoss Fuse、JBoss A-MQ,甚至還要運作Docker容器,但是並不如想像中般運作順利,「當時我生氣的不得了,因為舊系統只需要兩臺伺服器就可以運作了」,Matthias Krohnen笑著說,當時Miles & More曾一度想要中止計畫,但是紅帽技術顧問卻大膽要求他們一舉投入更多資源,擴充到10臺伺服器。

在進度已經延宕4周的狀況下,Matthias Krohnen只好放手一試,投入更多基礎架構資源。在新架構中,主要伺服器(Master Server)就部署了3臺,主要任務是提供OpenShift API服務,而並沒有在此節點上部署容器執行任務。再者,還有兩臺基礎架構伺服器,負責OpenShift平臺的路由、水平擴充。最後則是4臺Worker伺服器,主要作為系統水平擴充的資源池,未來在使用需求增加後,Miles & More也會增加更多Worker伺服器。

導入微服務要搭配IT自動化、分離關注點、系統監控

在移轉基礎架構這個大任務中,IT自動化、分離關注點(Separation of concerns )以及監控系統也扮演轉型的重要角色。

首先是IT自動化,Miles &More大量使用組態設定工具Ansible,利用Playbook撰寫系統組態設定,在建置新環境時,透過Ansible,自動複製出新的基礎架構。再者為分離關注點,將既有複雜架構拆解成單一微服務,讓新服務不會對現有運作的應用程式造成影響。

最後則是持續監控系統平臺的運作狀況,以Docker為例,當儲存空間耗盡後,使用者就沒辦法再開啟容器,所以必須先設定資源使用限制的額度,讓應用程式不會拖垮整個平臺的運作。

「目前我們對OpenShift還算滿意」,Matthias Krohnen表示,目前這個團隊總共部署了50個人力,正式營運了8個月,目前總共靠25臺VM,執行超過50個微服務,而超過300個合作夥伴中,有9成都已經轉移至Miles & More的新平臺上運作。目前除了OpenShift,Matthias Krohnen也在開發環境中實驗OpenStack。

在Miles & More這一趟從老舊IT架構,轉移到微服務的旅程中,Matthias Krohnen也學到了幾個重要心得。

首先,微服務跟簡單不能畫上等號,「它整體而言仍然很複雜,但是管理上較為輕鬆。」再者,想要導入微服務架構的企業,「得清楚自己的目標,以及達成目標的手段」,同時他也強烈建議,無論是企業內部員工或是既有合作夥伴,在計畫開始前,最好都對微服務、容器等技術有所了解,「Miles & More為此失去珍貴的4個禮拜。」

熱門新聞

Advertisement