服務器數量比較少?
題主沒有詳細說明具體應用系統的功能,比如是否單一的Web服務?有沒有微服務、分布式、集群化擴展的潛在需求?
通常來說,建議使用云服務自動化運維。云服務已經成為IT技術的核心基礎設施,充分利用云服務帶來的彈性和分布式優勢,賦能自動化運維。
一,自動構建系統如果需要構建應用,那么就建議配置使用CI/CD持續化集成和自動化部署,比如常用的Jenkins,配置Git代碼提交時觸發構建,然后自動部署。
二,日志收集處理系統1,ELK是常見的日志收集管理系統,包括ElasticSearch, LogStash, Kibana三個服務,架構示意圖如下:
2,在ELK系統中,Kibana是一個圖形化展示工具,配置查詢條件,運維人員隨時可以搜索指定日志信息,分析處理故障。
三,服務監控1,云監控CloudMonitor
主流云服務商都將監控功能集成到了基礎架構中,以阿里云為例,云監控提供了多種配置,多維度全方位監控。
比如配置CPU使用率到達80%時,自動觸發動作,增加服務器實例,同時郵件通知運維人員。
2,應用監控
以監控寶為例,配置服務地址,選擇分布在不同地區和運營商的監測點。當監測點不能正常調用配置的服務地址時,將收到警告信息,可以選擇郵件、短信、電話等通知方式。
四,潛在的系統擴展需求1,是否集群化部署?需要AutoScaling自動伸縮嗎?
小型化和集群化并不沖突。如果采用集群化部署,可以配置觸發條件,滿足時自動增加或者釋放服務器資源。比如當CPU使用率達到75%或者內存占用率達到75%時,根據配置好的服務器和數量,自動觸發。
2,是否使用Docker容器技術?
Docker將應用以及依賴打包到一個可移植的鏡像中,可以實現虛擬化,有助于快捷高效的交付應用,結合Docker-compose資源編排,快速實現自動部署更新,不再需要常用的Jenkins構建服務器。
我是工作多年的Web應用架構師,陸續發布關于軟件開發方面的文章,歡迎關注我,了解更多IT專業知識。