[Cloud Computing]雲端整合(Cloud Integration)

[Cloud Computing]雲端整合(Cloud Integration)

在雲端運算的領域,整合的問題一直是一項讓人感到不安的議題,根據之前IDC的調查,Hard to integrate是雲端運算的第四大挑戰,本篇我們來談談關於雲端整合的問題。
image

在雲端的世界,如果我們把Private-Cloud、Hybrid Cloud跟Public Cloud都考量進來,整合的方式應該會有以下三種:
image

On-Premise Integration:就是一般的Intranet整合,比較沒甚麼好提的。
Intra-Tenant Integration:屬於同一個Tenant,透過Internet整合雲端的系統與自己家裏頭的系統,這就是IDC所提到的integrate with in-house system,也是本篇想討論的重點。
Inter-Tenant Integration:在雲上讓不同的Tenant可互相整合。

一般來說,若談到商用軟體或者企業內系統,大家對放到雲端普遍仍信心不足,就算有,也都只是將一些小型或非關核心的應用放上去,但如果這些放到雲上的系統需要跟不是在雲上的系統整合時,怎麼處理呢?談整合時,不外乎資料交換、服務呼叫、Process串接等項目,但回歸到本質,整合仍大多是以服務呼叫為主,開放一些公開的API讓另一個系統來呼叫,而不會直接去access另一個系統的資料庫。

若以呼叫API來說,作法很單純,一就是在Intranet的系統開一個API給Cloud端呼叫,要不就是顛倒過來,但這兩者的做法有個絕對的差異:以Intranet作為呼叫端,呼叫Cloud上的Public API,這是很輕易的;但如果要以Cloud作為呼叫端,去呼叫Intranet的Private API,我們需要留意幾個點:
1.那就是這個Private API所在的Server要有對外IP
2.而且因為可被公開存取,也需要有防火牆來防堵,預防安全性問題
3.由Cloud主動時,使用到的是公司的對外線路,其頻寬很難穩定提供(除非拉高頻專線)

在商用軟體廠,要說服客戶解決以上的問題通常是耗時又費力的,小公司可能沒有MIS又或者大家都很害怕資安的問題,大公司雖然有一堆繁文縟節,但對這類問題的認知通常會比較高,配合的可能性也較高,但很可惜的,全世界的企業,大概有95%以上都是中小型企業,因此,另謀其他出路是比較可能的作法。

Front-End + Back-End
 image
如果不用API模式整合,那或許我們可以使用所謂的Front-End,在Intranet安裝一個Front-End,在雲上有個Back-End。
Intranet to Cloud:由Front-End主動向Cloud發送請求,呼叫Cloud上的服務。
Cloud to Intranet:由Front-End主動,將Intranet的部分資料送到Cloud上的DB。

讓當使用者透過Cloud想要存取Intranet的資料時,就改成直接存取Cloud上DB的資料,這樣的架構讓Cloud的用戶在runtime時可以不用直接存取Intranet的資料,但這種架構有個很關鍵的技術難度需要被克服,那就是資料同步的問題,因為Intrnet的資料與Cloud的資料隨時都有人在Maintain,兩邊資料在同一時點是有可能不一致的,除了資料不一致的問題外,同步時資料重複(data redundancy)的處理也會讓人感到頭痛。

這部分雖可透過一些限制來解決,但畢竟仍然很難做到漂亮,持續構想更好的架構模式。

游舒帆 (gipi)

探索原力Co-founder,曾任TutorABC協理與鼎新電腦總監,並曾獲選兩屆微軟最有價值專家 ( MVP ),離開職場後創辦探索原力,致力於協助青少年培養面對未來的能力。認為教育與組織育才其實息息相關,都是在為未來儲備能量,2018年起成立為期一年的專題課程《職涯躍升的關鍵24堂課》,為培養台灣未來的領袖而努力。