《2018年一體化運維平臺-DevOps在保險領域的最佳實踐.pdf》由會員分享,可在線閱讀,更多相關《2018年一體化運維平臺-DevOps在保險領域的最佳實踐.pdf(46頁珍藏版)》請在三個皮匠報告上搜索。
1、一體化運維平臺DevOps在保險領域的最佳實踐中科軟科技股份有限公司 2018年12月8日目錄CONTENTS撥云見海日七位成一體道路阻且長天塹變通途第一部分道路阻且長開發自測不足,集成階段問題大量爆發多個子系統無法做到并行交付自動化水平低,大量依賴人工處理開發與運維團隊沖突多,互相指責推諉環境多依賴復雜,多個環境不一致開發與運維團隊沖突多,互相指責推諉多個子系統無法做到并行交付開發自測不足,集成階段問題大量爆發需求測試開發部署試運行自動化水平低,大量依賴人工處理環境多依賴復雜,多個環境不一致目錄CONTENTS撥云見海日七位成一體道路阻且長天塹變通途第二部分撥云見海日在混沌和掙扎中找到了道路
2、DevOps什么是DevOps?什么是DevOpsDevOpsDevOps(DevelopmentDevelopment和和OperationsOperations的組合詞)是一組的組合詞)是一組過程、方法與過程、方法與系統系統的統稱,用于促進開發、技術運營和質量保障(的統稱,用于促進開發、技術運營和質量保障(QAQA)部門之間的溝)部門之間的溝通、協作與整合。通、協作與整合。五個層面六個要素一個成熟度模型價值觀價值觀原則原則方法方法實踐實踐工具工具DevOpsDevOps五個層面五個層面DevOpsDevOps價值觀價值觀重視溝通共享責任持續改進關注用戶拒絕浪費DevOpsDevOps原原則
3、則Ernest MuellerErnest Mueller01020304050607最重要的目標最重要的目標是及早交付有價值的功能是及早交付有價值的功能非功能性需求與功能性需求同等重要非功能性需求與功能性需求同等重要基礎設施即代碼基礎設施即代碼擁抱變化擁抱變化采用較短的周期交付可工作的功能采用較短的周期交付可工作的功能業務人員、開發人員和運維人員必須相互合作業務人員、開發人員和運維人員必須相互合作激發個體斗志,輔以信任從而達成目標激發個體斗志,輔以信任從而達成目標DevOps原則Ernest Mueller(續)08091011121314傳遞信息最好的方式是面對面傳遞信息最好的方式是面對面
4、可工作的軟件和完整交付是進度的首要度量可工作的軟件和完整交付是進度的首要度量責任人、開發人員、運維人員和用戶要共同保持可持續開發責任人、開發人員、運維人員和用戶要共同保持可持續開發堅持追求技術卓越和良好設計堅持追求技術卓越和良好設計以簡潔為本以簡潔為本團隊需定期反思并不斷提高團隊需定期反思并不斷提高最好的架構、需求和設計出自組織團隊最好的架構、需求和設計出自組織團隊DevOpsDevOps方法方法0102在從右到左的每個階段中,應用持續、快速的工作反饋機制。實現開發到運維的工作快速地從左向右流動。建立具有創意和高可信度的企業文化,使得經驗可以持續積累,增加集體的智慧。03DevOpsDevOp
5、sDevOpsDevOpsDevOps實實踐踐管理實踐管理實踐技術實踐技術實踐迭代式計劃迭代式計劃站立會議站立會議回顧回顧評審評審短周期迭代短周期迭代團隊估算團隊估算單元測試單元測試持續集成持續集成持續交付持續交付編碼標準編碼標準特征開關特征開關重構重構DevOpsDevOps工具工具分類分類工具工具構建自動化Nant,MSBuild,Maven,Ant,Gradle存儲庫Git,SVN靜態代碼分析Sonar,PMD持續集成Jenkis,Atlassian,Bamboo,VSTS配置管理Chef,Puppet,Ansible,Salt云平臺云平臺AWS,Microsoft Azure云管理工具
6、云管理工具RightScale應用程序部署應用程序部署Shell Scripts,Plugins功能測試功能測試Selenium.Appium負載測試負載測試Apache Jmeter構件倉庫構件倉庫Artifactory,Nexuse,FabricDevOps六要素組織:DevOps首先必須打破組織之間的隔閡,其次團隊要建立協作能力。過程:輕量級流程和自動化工具的完美結合,確保企業的高度敏捷性;自動化為先,而后再流程。架構:是DevOps成功的重要影響因素;單體架構是快速交付的最大障礙;架構與持續交付緊密聯系。工具:提升運維效率,但也影響質量和成本,高效的應用化平臺能力確保故障快速恢復?;A
7、設施:從虛擬化到IaaS到容器化,敏捷的基礎設施是高效精益運維的基礎。度量:建立全面的DevOps運維度量體系,正向驅動運維、研發、測試團隊不斷完成面向用戶的交付。DevOps成熟度模型級別級別環境和部署環境和部署流程管理流程管理配置管理配置管理構建和持續集成構建和持續集成開發測試質開發測試質量量運維監控和度量運維監控和度量原始階段純手工過程部署軟件系統、配置環境、不能頻繁部署、過程不可靠流程流轉靠人的經驗管理來完成部分文件使用版本控制,簽入代碼不頻繁純手工方式構建,缺少管理和報告手工測試人工監控為主,自動監控為輔?;A階段自動化部署到某些環境,創建一套新環境比較簡單快捷,過程相對可靠需求、開
8、發、運維之間交換有規范、不存在信息遺漏。所有構建軟件系統所需的東西都納入版本控制包括源代碼、配置、構建腳本、部署構建、數據腳本等。定時或人工觸發自動化構建部分自動化測試監控作為常態化運維保障工作,故障發生時通過郵件、短信等方式及時通知可持續階段全自動化、提供自助服務式的部署方式,每個環境的部署都共用同一個過程各個環境流程管理是閉環,并在平臺中管理,環節之間流轉具備自動化能力庫和依賴也被管理起來每次變更提交都會觸發自動化構建和測試自動化單元、接口、UAT測試有統一的監控平臺,并能對監控數據進行分析和異常定位成熟階段完全自動化,實現端到端的交付從平臺上可以看到整個過程的信息頻繁簽入代碼,開發人員每
9、天至少簽入一次代碼到主分支收集構建度量及測試結果數據,并進行可視化分析和展示質量度量和趨勢跟蹤,自動化測試可以覆蓋的都采用自動化測試所有系統都納入統一監控平臺,開發運維可通過監控平臺提升系統可靠性管理優化階段所有資源和環境都會高效的管理起來,自動化地配置管理,提供統一的PaaS服務平臺提供虛擬化、容器化的資源團隊從需求、開發、測試、部署、運維、所有工具和管理都在一個平臺,可管理、可流轉、可追溯支持高效的協作、快速開發、可審計的變更管理流程持續改進流程,優化反饋機制,提高透明度幾乎沒有產生回退、缺陷能及時發現和修復系統監控和業務反饋及時,快速進行優化提升目錄CONTENTS撥云見海日七位成一體道
10、路阻且長天塹變通途第三部分七位成一體工具組織規范DevOps展示管理渠道展示平臺監控平臺ITSM流程平臺服務臺變更管理事件管理問題管理知識庫發布管理流程調度作業平臺作業創建管理作業作業組件數據平臺數據同步數據服務數據管理數據處理日志規范日志記錄日志查詢日志管理日志分析日志平臺CMDB配置平臺資源供應資源調整資源報告績效管理業務監控應用監控數據庫監控中間件監控服務器監控網絡監控故障通知故障處理故障分析設備配置應用配置資源捕獲開發運維一體化平臺功能架構展示平臺(顯示器)ITSM(線路)監控平臺(五官)作業平臺(四肢)數據平臺(信號)日志平臺(信號)CMDB(內存)Zabbix、pinpoint、p
11、ython、Itop、JIRAAnsible、Jenkins、Saltstack、pythonlogstash、HDFS、Spark、Kinbana、Flume-ngFineReport、etl、Echarts、jQuery、Bootstrap、ArcGISitop、python、開源框架+領域能力+技術能力=貼合保險行業的開發運維一體化平臺 01展示平臺配置工廠配置工廠 數據平臺數據平臺日志平臺日志平臺ITSMITSM平臺平臺監控平臺監控平臺控制中心控制中心 適配器適配器 決策分析決策分析工作匯報工作匯報運行監控運行監控業務展示業務展示服務評價服務評價品牌形象品牌形象020101 基礎運維類
12、主機名配置組件磁盤管理組件中間件部署組件硬盤資源監控組件虛擬化配置組件數據庫備份組件0202應用運維類代碼檢查組件自動構建組件自動化測試組件系統部署組件系統發布組件數據修改組件0303網絡運維組端口發射組件防火墻配置組件IP配置組件路由器配置組件負載配置組件網絡規劃組件流程編排智能分發定時計劃調度管理組件管理提交代碼提交代碼檢測有無檢測有無提交提交靜態檢查靜態檢查編譯編譯單元測試單元測試打包打包部署測試部署測試環境環境自動化測自動化測試試部署生部署生產環境產環境CI報告報告Sonar+Jenkinsgradle:Junit+jacocogradleJenkins啟動啟動自動化測試自動化測試腳本
13、腳本SVNJenkinsgradle:Sonar歸檔階段在線階段銷毀階段離線歸檔在線歸檔正常業務訪問歷史數據管理與查詢保存與回溯歸檔轉移刪除12年25年510年10年持續集成工具數據轉儲工具0304業務情況業務情況應用情況應用情況中間件情況中間件情況數據庫情況數據庫情況服務器情況服務器情況網絡情況網絡情況數據情況數據情況日志情況日志情況客戶端撥測客戶端撥測程序埋點程序埋點AgentAgentSNPMSNPMIPMIIPMI等協議等協議SINO-DSINO-D數據平臺數據平臺SINO-LSINO-L日志平臺日志平臺業務業務 應用應用中間件中間件 數據數據庫庫服務器服務器 網絡網絡數據數據日志日志
14、故障快照故障快照故障報告故障報告趨勢分析趨勢分析自動修復自動修復人工處理人工處理知識庫知識庫閾值閾值設置設置人工智能人工智能告警級別告警級別告警歸并告警歸并通知渠道通知渠道監控平臺被監控被監控對象對象數據采集數據采集監控監控顯示顯示改進改進分析分析告警處理告警處理告警告警管理管理05生產庫離線同步實時同步增量同步全量同步生產庫數據瘦身數據漂白數據填報數據修改拖拽開發數據查詢數據統計APIDB文件監控平臺展示平臺其他系統作業平臺ITSM平臺數據服務數據服務數據同步數據同步數據管理數據管理數據處理數據處理06日志管理日志管理應用日志應用日志服務器日志服務器日志中間志日志中間志日志數據庫日志數據庫日
15、志網絡日志網絡日志Agentrsyslogrsyslogrsyslogrsyslog日志來源日志來源日志消費日志消費日志記錄插件采集處理輸出實時離線批量.過濾組合篩選.ES DB 文件 API 07業務配置業務模塊包.服務器數據庫中間件.廠商服務商三方合作商.數數據據來來源源 Agent SNMP F5 SSOP API(手工錄入)(數據錄入)展示平臺 監控平臺作業平臺 日志平臺數據平臺 ITSM平臺 資源拓撲 數據維護 變更控制(開放API)業務建模配置調和變更控制分級管理資源報告擴展應用數據消費數據消費CMDBCMDB配置庫配置庫第四部分天塹變通途構建階段準備階段執行階段內部驗證階段聯合驗
16、證階段監控階段風控階段70家保險公司36省市4個系統20個接口200個應用節點72個數據庫實例某*信息共享平臺構建階段準備階段執行階段內部驗證階段聯合驗證階段監控階段風控階段開發人員單方構建15人5小時8人30分鐘延遲20分鐘紙質推演主機、服務器級別監控人工配置閾值過去現在自動構建工具統一構建夜間工作提前配置和審核5人2小時2人10分鐘實時程序、日志、代碼監控智能運維全程可視化加強開發、測試、運維協作程序包出口統一,避免升級錯誤夜間工作前置、減少誤操作提升工作質量加強開發運維協作、信息準確自動化替代人工,提高效率技術改進,提升服務能力監控能力提升,發現深層次問題AI+OPS 智能運維實現精準判斷謝謝觀看