摘要:如果您所在企業(yè)希望實行SaaS化改造,可訪問了解華為云開發(fā)者技術(shù)團隊的SaaS支持計劃。
本文分享自華為云社區(qū)《【云享問答】第1期:傳統(tǒng)軟件如何SaaS化改造,10個問答帶你掌握最優(yōu)解!》,作者:技術(shù)火炬手。
?文章來源:http://www.zghlxwxcb.cn/news/detail-480182.html
如果您所在企業(yè)希望實行SaaS化改造,可訪問了解華為云開發(fā)者技術(shù)團隊的SaaS支持計劃,包含:
- SaaS應(yīng)用開發(fā)技術(shù)支持套件,包括SaaS應(yīng)用開發(fā)指南、SaaS開發(fā)示例代碼、SaaS開發(fā)插件以及配套的培訓課程。
- 云資源支持,加入華為云SaaS星光計劃,申請華為云資源支持。
- 商業(yè)渠道支持,SaaS應(yīng)用上架至華為云應(yīng)用商店,實現(xiàn)商業(yè)變現(xiàn),參考:SaaS接入方式。
- 在線問題咨詢,可提供解決方案、云上開發(fā)等問題咨詢,提供SLA機制保證。
???SaaS選型???
?? 如何判斷一家企業(yè)是否適合切換到SaaS開發(fā)?
SaaS適用于任何行業(yè),例如金融、銀行、教育、地產(chǎn)、IT、醫(yī)藥等都可以應(yīng)用。且SaaS更適合中小企業(yè)應(yīng)用,因為中小企業(yè)部署快捷、風險較低。如果企業(yè)的軟件是以下類型,建議對傳統(tǒng)軟件實行SaaS化改造。
1、業(yè)務(wù)模式較為單一,業(yè)務(wù)場景較為標準化,可復(fù)用性強的產(chǎn)品;
2、數(shù)據(jù)集中,公司希望利用SaaS架構(gòu)對企業(yè)業(yè)務(wù)進行集中管理和數(shù)據(jù)分析;
3、面向的甲方數(shù)字化水平較低,定向租售開發(fā)-部署-維護一體化產(chǎn)研能力;
4、需要多終端操作,面向的對象、作業(yè)環(huán)境不同,單獨開發(fā)部署難度較高。
???為什么越來越多的企業(yè)選擇SaaS化開發(fā)?
SaaS作為一種有效的軟件交付形式,可以讓企業(yè)IT團隊工作的重心從部署和業(yè)務(wù)系統(tǒng)定制,轉(zhuǎn)移到管理業(yè)務(wù)系統(tǒng)所提供的服務(wù)上來。企業(yè)部署SaaS的好處有以下幾點:
1、部署簡單,無需硬件準備。傳統(tǒng)軟件的部署周期通常需要半年或更長的時間,而部署SaaS軟件不需要考慮復(fù)雜的服務(wù)器采購、機房布局、網(wǎng)絡(luò)配置等高度專業(yè)的IT問題。
2、零維護成本。升級傳統(tǒng)軟件需要高昂的費用。而SaaS軟件開發(fā)商負責軟件升級與維護,持續(xù)進行產(chǎn)品更新,無需企業(yè)承擔軟硬件維護費用。
3、隨時隨地可辦公。由于SaaS服務(wù)是把軟件托管在云上,用戶可以通過任意的智能終端進行訪問,比如手機、電腦、平板等。與傳統(tǒng)軟件相比,SaaS產(chǎn)品在移動端運行的能力發(fā)展更為出色,用戶之間可以實現(xiàn)高效、便捷的移動辦公。
4、數(shù)據(jù)安全更有保障。傳統(tǒng)的軟件往往需要人工數(shù)據(jù)備份,或者安裝一個復(fù)雜的自動化系統(tǒng)。隨著SaaS應(yīng)用,數(shù)據(jù)存儲分析技術(shù)的發(fā)展,SaaS服務(wù)商可以為多個數(shù)據(jù)中心提供快速靈活的容災(zāi)管理解決方案,企業(yè)數(shù)據(jù)更加安全。
5、降低系統(tǒng)架構(gòu)成本。SaaS靈活的定價模式,讓企業(yè)可以在需要時購買相應(yīng)的軟件服務(wù)。當企業(yè)規(guī)模不斷擴大時,無需購置新的基礎(chǔ)設(shè)施;當企業(yè)關(guān)閉某些業(yè)務(wù)時,選擇停止相關(guān)軟件服務(wù)即可,無需繼續(xù)對軟硬件系統(tǒng)進行管理。
???企業(yè)在SaaS化轉(zhuǎn)型時有哪些關(guān)鍵的問題需要注意?
SaaS開發(fā)過程中的各種問題,如人力成本、多租戶管理、高可用、安全性等,讓企業(yè)在SaaS化轉(zhuǎn)型時有所顧慮。華為云在長期的SaaS應(yīng)用上云技術(shù)支持實踐中,總結(jié)了企業(yè)在SaaS化轉(zhuǎn)型時經(jīng)常問到的問題,也是本期將為大家解答的內(nèi)容。
1、租戶權(quán)限管理:租戶應(yīng)該怎么設(shè)計、創(chuàng)建?每個租戶下的組織架構(gòu)是怎么樣的?租戶的各用戶如何做不同角色權(quán)限管理?
2、基礎(chǔ)設(shè)施選擇:在什么基礎(chǔ)設(shè)施上部署SaaS系統(tǒng),是選擇公有云還是自有數(shù)據(jù)中心方式?
3、系統(tǒng)架構(gòu)設(shè)計:SaaS系統(tǒng)的訪問性能、運維監(jiān)控、系統(tǒng)彈性擴容、安全性以及合規(guī)性等如何設(shè)計?
4、租戶間干擾:如何基于基礎(chǔ)設(shè)施提供的能力,做好不同租戶之間的隔離,減少租戶間的相互干擾?
5、數(shù)據(jù)存儲架構(gòu)設(shè)計:如何設(shè)計安全可靠,可靈活擴展的數(shù)據(jù)存儲架構(gòu)?
6、用戶定制化:用戶需求是什么?需不需要考慮定制化內(nèi)容或者資源獨享問題?需不需要處理定制需求問題?
7、多租計費策略:不同計費模式會影響云上部署架構(gòu)和成本控制,SaaS模型商用價格如何設(shè)計,提供哪些計費模式。
???SaaS多租戶設(shè)計???
???SaaS多租模式有哪些?不同模式的優(yōu)缺點和應(yīng)用場景是什么?
SaaS應(yīng)用比較廣泛的領(lǐng)域主要有電子郵件、銷售管理、客戶關(guān)系管理(CRM)、財務(wù)管理、人力資源管理、計費和協(xié)作等。目前國內(nèi)有相當多的SaaS軟件公司,就比如釘釘,金蝶,用友等等,以下分析SaaS不同模式的應(yīng)用場景及其優(yōu)缺點。
SaaS多租架構(gòu)可分為以下三種模式
1、獨享資源模式:每個租戶單獨部署一套環(huán)境。獨享資源模式有獨立的硬件和軟件開發(fā)環(huán)境,數(shù)據(jù)庫也只供一個租戶使用。
2、共享資源池租戶模式:共享資源,采用邏輯隔離。根據(jù)部署情況,可以分為如下三類:
A、全共享模式:web層,應(yīng)用層,數(shù)據(jù)層都采用共享資源池部署。
B、數(shù)據(jù)層共享模式:web層和應(yīng)用層每個租戶獨立部署,共享數(shù)據(jù)層
C、租戶應(yīng)用環(huán)境共享模式:web層、應(yīng)用層共享部署,數(shù)據(jù)層不共享
3、混合租戶模式:綜合獨享資源模式和共享資源池租戶模式特點。
?
???獨立部署架構(gòu)與SaaS多租架構(gòu)的區(qū)別是什么?從應(yīng)用本身與運維角度如何理解?
用現(xiàn)實中的房子例子是很好解釋的?!蔼毩⒓軜?gòu)”如同一個別墅,里面有屬于自己的餐廳、房間、廚房等設(shè)施,所有設(shè)施都是獨立配置、部署的;“多租戶”就如同住在公寓,每個人有一個屬于自己的房間,健身房、客廳等屬于公共區(qū)域,大家共享這些資源。
獨立部署架構(gòu)在業(yè)務(wù)發(fā)展前期比較有優(yōu)勢,可根據(jù)客戶需求靈活配置資源量,獨立部署架構(gòu)的開發(fā)和運維復(fù)雜度都比較低,但隨著支持的客戶數(shù)量增長,不同設(shè)計不同部署的孤立項目的增多,供應(yīng)商不得不面臨運維量與資源成本倍數(shù)增加等問題,這些問題最終會影響到企業(yè)業(yè)務(wù)的增長和創(chuàng)新,為解決這個問題,系統(tǒng)向SaaS演進似乎是必然的選擇。
從SaaS應(yīng)用本身來看:
與獨立部署不同,在SaaS系統(tǒng)中,有租戶概念,通常一個企業(yè)或者組織作為一個租戶(Tenant),租戶下會有多個用戶;租戶與租戶之間會共享一定資源,為保證租戶安全性,在租戶架構(gòu)設(shè)計時,會做好邏輯或者物理隔離,邏輯隔離和物理隔離也可以同時存在,如SaaS混合部署模式。在創(chuàng)建租戶時,需要分配數(shù)據(jù)空間和配置租戶路由規(guī)則,租戶和租戶下的用戶可能有不同的權(quán)限配置,根據(jù)路由規(guī)則獲取授權(quán)信息。
租戶路由是SaaS應(yīng)用的核心模塊。當用戶發(fā)起請求時,租戶路由模塊根據(jù)請求攜帶的租戶ID信息,將請求路由發(fā)送到該用戶所屬租戶運行環(huán)境、數(shù)據(jù)空間等。在SaaS租戶隔離的邏輯下,租戶路由模塊是保證租戶所屬用戶請求互不干擾的關(guān)鍵。華為云技術(shù)團隊開發(fā)了租戶路由模塊,并進行了開源,可前往gitee的saas-tenant-router-starter項目了解或者貢獻。
在云上構(gòu)建SaaS應(yīng)用時,租戶間隔離從應(yīng)用層、數(shù)據(jù)庫到基礎(chǔ)設(shè)施層(計算、存儲以及網(wǎng)絡(luò))都是應(yīng)該關(guān)注的。在應(yīng)用層我們通過租戶路由插件實現(xiàn)租戶間隔離;數(shù)據(jù)庫層多租模式可支持數(shù)據(jù)庫實例、數(shù)據(jù)庫schema以及表字段實現(xiàn)隔離;在計算資源層,租戶間隔離借助云容器引擎CCE的namespace和pod能力;在網(wǎng)絡(luò)層面,可通過VPC、子網(wǎng)實現(xiàn)租戶間隔離,每個租戶應(yīng)用可以放在一個VPC或者一個子網(wǎng)中,但是租戶數(shù)量會受到可創(chuàng)建的VPC和子網(wǎng)配額限制。
SaaS多租戶架構(gòu)不僅包含SaaS基礎(chǔ)應(yīng)用,還提供了配套的?SaaS運營與運維平臺。這也是相對于獨立部署架構(gòu)的獨特優(yōu)勢。
從SaaS運營與運維角度來看:
運營方面
在技術(shù)方面,SaaS場景的租戶管理面負責租戶創(chuàng)建,配置管理,SaaS租戶管理員可以在用戶購買SaaS服務(wù)后,配置租戶訪問域名、租戶管理員以及租戶權(quán)限等信息;
計費模式有按照用戶數(shù)、活躍用戶、特性+服務(wù)等級、基礎(chǔ)版免費+增值特性付費等多種計費模式,設(shè)計優(yōu)秀的計費模式能保證在租戶和產(chǎn)品功能特性持續(xù)增加的背景下,仍然能有不錯的收益;
運營分析是SaaS在實現(xiàn)持續(xù)業(yè)務(wù)增長時必不可少的內(nèi)容,從技術(shù)維度看,涉及用戶數(shù)據(jù)采集、數(shù)據(jù)實時處理和分析、數(shù)據(jù)可視化等內(nèi)容,支持企業(yè)決策和管理。
運維方面
為SaaS系統(tǒng)建立可觀測運維是及時定位和解決用戶問題的基礎(chǔ),包括指標監(jiān)控、應(yīng)用鏈路追蹤和日志管理等;在SaaS應(yīng)用系統(tǒng)下,在建立統(tǒng)一租戶運維設(shè)施基礎(chǔ)上,也需充分考慮不同租戶運維需求。
1、在系統(tǒng)中提供不同層級的資源監(jiān)控、告警是基礎(chǔ)的運維能力,華為云提供了完備能力,如應(yīng)用運維管理AOM、云監(jiān)控服務(wù)CloudEye等;
2、租戶日志管理采集可按照租戶維度進行,根據(jù)上層分析需求,再做數(shù)據(jù)的統(tǒng)一聚合;
3、鏈路追蹤通常借助APM能力實現(xiàn),對各個服務(wù)調(diào)用的性能、健康狀態(tài)進行監(jiān)控,及時做資源調(diào)整。
?? SaaS云原生典型架構(gòu) ???
???SaaS應(yīng)用部署的云原生典型架構(gòu)包含哪些內(nèi)容? 華為云SaaS技術(shù)架構(gòu)的優(yōu)勢有哪些?
基于長期的技術(shù)支持實踐經(jīng)驗,華為云結(jié)合在產(chǎn)品和技術(shù)方面的沉淀,總結(jié)了云上典型的SaaS云原生應(yīng)用架構(gòu),架構(gòu)主要分為:
- 微服務(wù)開發(fā)框架:SpringCloud、SpringCloud Huawei;
- 應(yīng)用部署集群:集群、namespace、Pod;
- 數(shù)據(jù)庫、中間件:分區(qū)、庫表;多租數(shù)據(jù)源管理;
- 運維監(jiān)控系統(tǒng):Metrics、Tracing、Logging;
- 數(shù)據(jù)分析運營平臺:模型定義、采集、存儲、分析-可視化等;
- CI/CD流水線:代碼托管、檢查、打包、部署。
華為云SaaS技術(shù)架構(gòu)的特點:
1、微服務(wù)化和容器化。微服務(wù)化包含兩個階段:微服務(wù)拆分和微服務(wù)開發(fā)。微服務(wù)拆分可以參考華為云微服務(wù)應(yīng)用開發(fā)相關(guān)實踐;微服務(wù)開發(fā)社區(qū)中提供了多種開發(fā)框架,如springcloud、service comb等,目前各大云廠商也提供了相關(guān)微服務(wù)引擎,如華為云CSE,與華為云CSE微服務(wù)引擎對接,提供微服務(wù)注冊發(fā)現(xiàn)、服務(wù)治理以及配置管理等能力。開源地址:https://github.com/huaweicloud/spring-cloud-huawei。容器化后的應(yīng)用可以基于華為云容器引擎CCE部署,華為云CCE提供靈活的自動彈性伸縮、掛載多種存儲類型等能力,并且能輕松對接云上應(yīng)用運維能力。
2、運維監(jiān)控。在云原生的SaaS化應(yīng)用系統(tǒng)中,除了解決微服務(wù)化和容器化問題,還需要考慮搭建運維監(jiān)控平臺,如日志處理采用ELK方案,監(jiān)控告警采用Pormetheus+Grafana方案,應(yīng)用鏈路追蹤采用zipkin、skywalking等方案?;谠粕系倪\維能力,不僅可以更快速搭建監(jiān)控運維平臺,如采用應(yīng)用運維管理AOM實現(xiàn)運維的監(jiān)控告警;云日志服務(wù)LTS實現(xiàn)日志采集、分析以及轉(zhuǎn)儲;APM實現(xiàn)應(yīng)用鏈路追蹤,還能構(gòu)建“問題發(fā)現(xiàn)-問題追蹤-問題定位”立體監(jiān)控運維體系。
3、數(shù)據(jù)的聚合與流轉(zhuǎn)。對于SaaS企業(yè)而言,讓平臺數(shù)據(jù)發(fā)揮價值,支持企業(yè)實現(xiàn)“拓客-留客-增長”,建立統(tǒng)一的數(shù)據(jù)分析平臺很重要。云原生SaaS應(yīng)用架構(gòu)很關(guān)鍵的優(yōu)勢在于能夠輕松實現(xiàn)數(shù)據(jù)的聚合和流轉(zhuǎn),通過集成SDK方式將日志數(shù)據(jù)、定時任務(wù)等數(shù)據(jù)上報至LTS?,業(yè)務(wù)數(shù)據(jù)庫中數(shù)據(jù)可以通過DRS或者cannal開源組件抽取至kafka等消息隊列中;華為云對象存儲OBS提供結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)存儲能力,并且存儲成本低,可以作為統(tǒng)一數(shù)據(jù)湖底座?;诮y(tǒng)一數(shù)據(jù)湖底座和實時數(shù)據(jù)接入能力,構(gòu)建SaaS云原生數(shù)據(jù)分析運營平臺,同時,也支持機器學習接入。
4、開發(fā)&部署CICD流水線。可采用云上devcloud平臺能力,也可以采用Jenkins搭建,對接華為云VSS安全掃描能力和容器鏡像倉庫SWR,VSS能力實現(xiàn)web應(yīng)用發(fā)布前的安全掃描;SWR作為鏡像存儲倉庫,按照組織和版本等策略管理鏡像,在CCE中可以直接加載SWR鏡像,配置service、ingress等訪問策略,完整應(yīng)用部署。
???SaaS多租戶下用戶的不同部門權(quán)限如何隔離?
SaaS的多租系統(tǒng)中會有多個租戶,每個租戶下有多個用戶,租戶之間相互隔離,互不影響。隔離方式也有很多,比如集群環(huán)境隔離。而租戶下面的用戶權(quán)限隔離可以根據(jù)用戶id來區(qū)分,根據(jù)不同用戶做不同權(quán)限控制。
我們可以根據(jù)部署集群環(huán)境來做隔離,分三種:
1、集群環(huán)境隔離,不同租戶的業(yè)務(wù)微服務(wù)在不同的環(huán)境中,租戶通過集群完全隔離,租戶之間不會互相影響。
2、基于CCE NameSpace隔離,Kubernetes集群為SaaS應(yīng)用開發(fā)者提供的namespace隔離方式,容器引擎CCE在namespace粒度提供了網(wǎng)絡(luò)隔離、資源配額限制等租戶管控策略。
3、Pod共享,所有租戶共享SaaS業(yè)務(wù)微服務(wù)。
在數(shù)據(jù)層面隔離方式也分三種:
1、共享數(shù)據(jù)庫,共享Schemas,基于行隔離
2、共享數(shù)據(jù)庫,基于Schema隔離
3、基于數(shù)據(jù)庫隔離
業(yè)務(wù)承載方面:從單一業(yè)務(wù)系統(tǒng)承載改造為按租戶區(qū)分,部署不同的無狀態(tài)容器服務(wù)組。
數(shù)據(jù)層面:從單一對象存儲存放改造成按租戶去區(qū)分,不同的Bucket或在Bucket中開辟不同租戶的前綴去進行存儲。
流量分析方面:原本是集中入口,無論是單機部署還是多機部署,其流量入口都是統(tǒng)一的,集中入口沒有辦法分析不同租戶的流量情況。通過K8s集群負載區(qū)分不同的域名來路,并匯聚訪問日志到大數(shù)據(jù)平臺進行分析。
???在SaaS應(yīng)用上云實踐中,如何保障多租戶之間數(shù)據(jù)的安全性和保障信息0丟失?
可以通過獨立數(shù)據(jù)庫、共享數(shù)據(jù)庫(邏輯數(shù)據(jù)隔離)來做到數(shù)據(jù)的隔離,使用一些安全防護措施如:運維審計(堡壘機)、應(yīng)用防護(WAF)、訪問控制(防火墻)、入侵防御(HIDS/EDR)等保障數(shù)據(jù)安全。
保障數(shù)據(jù)不丟失可以通過做好高可用技術(shù)架構(gòu)、數(shù)據(jù)備份策略、容災(zāi)切換方案來實現(xiàn)。
?? SaaS技術(shù)支持???
???華為云提供哪些資源幫助企業(yè)解決SaaS化轉(zhuǎn)型中可能遇到的痛點問題?
針對企業(yè)在SaaS化轉(zhuǎn)型中可能遇到的痛點問題,華為云開發(fā)者技術(shù)服務(wù)團隊為企業(yè)準備如下資源:
- SaaS應(yīng)用開發(fā)技術(shù)支持套件,包括SaaS應(yīng)用開發(fā)指南、SaaS開發(fā)示例代碼、SaaS開發(fā)插件以及配套的培訓課程。
- 開發(fā)指南為SaaS應(yīng)用開發(fā)者提供云原生SaaS架構(gòu)、設(shè)計等參考;
- 示例代碼為開發(fā)者提供SaaS開發(fā)示例參考代碼,使用SpringCloud微服務(wù)框架,同時提供了接入華為云微服務(wù)引擎CSE版本;
- SaaS開發(fā)中通用能力封裝成插件,如SaaS多租路由插件,提供多租設(shè)計通用方案,簡化SaaS改造時,數(shù)據(jù)多租路由開發(fā);
- 除了以上內(nèi)容,對數(shù)據(jù)分析、日志處理、安全掃描等也提供了相關(guān)方案,以開放至開源社區(qū)。
- 云資源支持,加入華為云SaaS星光計劃,申請華為云資源支持。
- 商業(yè)渠道支持,大量伙伴的SaaS應(yīng)用上架至華為云應(yīng)用商店,實現(xiàn)商業(yè)變現(xiàn),參考:SaaS接入方式。
- 在線問題咨詢,可以進行解決方案、云上開發(fā)bug等問題咨詢,提供SLA機制保證。
點擊訪問了解支持計劃詳情
???華為云幫助開發(fā)者構(gòu)建SaaS應(yīng)用,有哪些實踐案例可以分享?
華為云面向企業(yè)開發(fā)者、SaaS業(yè)務(wù)合作伙伴提供SaaS化輕咨詢、設(shè)計及開發(fā)體系化支持能力,促進開發(fā)者與華為云之間的持續(xù)深度合作。目前在傳統(tǒng)制造、工業(yè)安全、數(shù)字媒體、企業(yè)建站等十多個領(lǐng)域都幫助企業(yè)構(gòu)建了SaaS應(yīng)用,極大地提高了業(yè)務(wù)創(chuàng)新能力和生產(chǎn)效率,降低了開發(fā)成本和人力成本。
例如:
與中泰股份合作,將自研MES系統(tǒng)進行SaaS化改造,形成模具制造行業(yè)設(shè)計和制造一體化解決方案,上架云商店,交付給行業(yè)內(nèi)中小企業(yè)使用。規(guī)?;蛻艚桓稊?shù)量和支撐業(yè)務(wù)訂單營收得到了巨大增長。
與中新賽克合作,針對ToB業(yè)務(wù)轉(zhuǎn)型需做SaaS化架構(gòu)升級。基于華為云云原生進行了SaaS多租業(yè)務(wù)架構(gòu)改造,提升了應(yīng)用交付效率,節(jié)省了項目交付周期。
與深圳云視點科技合作,聯(lián)合打造SaaS化的內(nèi)容聚合分發(fā)平臺,并且在分發(fā)資源彈性伸縮、云服務(wù)計量、OBS鑒權(quán)體系設(shè)計等方面給予了技術(shù)指導支持。
- 想獲取更多SaaS應(yīng)用開發(fā)的文檔工具,歡迎訪問華為云技術(shù)開發(fā)指南
- SaaS開發(fā)過程中如遇到技術(shù)問題,歡迎聯(lián)系華為云開發(fā)者支持工程師,將為您提供5*8小時支持服務(wù),在線聯(lián)系
?
點擊關(guān)注,第一時間了解華為云新鮮技術(shù)~文章來源地址http://www.zghlxwxcb.cn/news/detail-480182.html
到了這里,關(guān)于傳統(tǒng)軟件如何SaaS化改造,10個問答帶你掌握最優(yōu)解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!