數字景觀正在從整體轉向微服務、基于云的服務。企業和公司需要適應不斷變化的技術格局并跟上變化。系統變得越來越復雜并且不容易管理。我將嘗試解釋一些較新的架構方法、趨勢,并提供對 AIOps 的見解以及它如何幫助解決這個問題。
微服務
微服務架構正在成為最受歡迎的架構和開發策略。使用這種架構構建和運行軟件的優點超過了缺點。好處包括:?
建立高效自主的“小”團隊來更快地交付新服務或功能,這意味著您不必等待漫長的發布周期,只要功能準備好就可以發布。提高生產力和交付速度。
孤立的開發方法導致高度獨立的可部署服務和可測試服務。由于范圍僅限于服務能力,因此管理和維護微服務測試更加容易,可以輕松實現單元測試、回歸測試以及性能測試的自動化測試。
不同的團隊可以使用不同的技術構建微服務。可以利用最合適的技術來構建特定的微服務。團隊可以分布在不同的地理位置。
微服務更容易構建和部署;特別是在容器平臺上,資源利用率得到了優化。
微服務是圍繞特定的業務功能構建的?
微服務的可擴展性更好,因為它們占用的空間非常小
無服務器
云平臺提供了許多可供使用的功能和工具。云平臺上的完全托管系統是無服務器的。基于云的無服務器技術對于規模較小或較大的公司來說是一個巨大的推動力,可以移動其小型功能/代碼,例如納米服務、異步作業、計劃作業、云服務與本地的集成。使用無服務器:
底層基礎設施完全由云平臺管理,維護成本極低
部署的無服務器服務高可用
高并發,更容易在全球范圍內擴展
事件驅動架構,這意味著僅當相關事件被觸發時才使用它
大多數無服務器都是按使用付費,這導致運行服務的成本較低
數字化現代化
將基于微服務的架構和無服務器結合起來就是所謂的數字現代化。Kubernetes、Openshift等容器平臺是最適合托管微服務的平臺,Serverless可用于但不限于異步處理、計劃作業、ETL作業等。
隨著微服務和無服務器的出現,出現了不同的挑戰,例如:
監控大量微服務
確定失敗的根本原因
快速解決故障
測試各種功能
監控最終用戶轉化
適應系統的不斷升級和變化
簡單的 DevOps 策略不足以管理如此復雜的系統。將人工智能 (AI) 與機器學習功能結合到 DevOps 中將有助于解決開發、部署以及生產應用程序性能監控 (APM) 方面的新復雜性。AIOps 有助于實現自主 DevOps,提供規范的解決方案和自我修復。
人工智能操作
AIOps 帶來了創建高效流程和系統所需的四個關鍵功能:
1. AIOps:借助機器學習、異常檢測和警報以及可靠的根本原因分析來分析流量、日志、使用情況
2.智能DevOps:通過人工智能驅動的性能和回歸測試,軟件質量顯著提高
3.修復和自我修復:自動檢測問題和警報并觸發修復和自我修復,提供規范的自動化
4.用戶體驗:AIOps 可以更好地洞察系統的使用情況并輕松衡量轉化
借助 AIOps,立即測試代碼的性能和回歸,自動分析測試流量并盡早發現問題。DevOps 管道與基于 AI 的完整 APM 解決方案集成在一起是一個強大的 AIOps 工具。基于人工智能的 APM 解決方案對流量、日志和資源利用率進行分析并檢測異常。如果觀察到任何異常,就會觸發警報,基于警報,團隊可以針對已知問題構建自動化腳本,這些腳本可以在問題發生時執行。例如
如果資源磁盤空間不足,則增加磁盤空間或分配新的持久卷
當流量突然激增導致數據庫表大小增加時運行歸檔流程
根據內存或 CPU 使用率超過規定閾值進行擴展或縮減(通常在沒有自動擴展設置的情況下)
自動修復失敗的部署,并在新構建失敗時恢復到舊版本
自動修復的典型工作流程如下所示:
圖片標題
如果您能夠自動化大部分補救措施和自我修復,那該多酷啊!?
人工智能運維工具
市場上有很多AIOps工具,包括云平臺提供的工具。他們隨著對系統和行為的更好理解而不斷發展。正在添加新的特性和功能。
圖片標題
其中一些工具是:
1. Dynatrace:領跑者并被 Gartner 認定為領導者之一,是管理多個本地和云環境的最強大的 APM 解決方案之一。該產品提供了非常強大的AIOps能力。其根本原因分析工具是市場上最好的工具之一。幾分鐘內即可找到根本原因。Dynatrace 還通過其名為 keepn.sh 的框架提供了自治云管理的參考實現。它的服務自動發現功能是同類產品中的一種,而且非常強大。?