運維與自動化運維發展概括


1、運維自動化發展 運維學習和發展的一個線路:
1.搭建服務(部署並運行起來)
2.用好服務(監控、管理、優化)
3.自動化(服務直接的關聯和協同工作)
4.產品設計(如何設計一個運維系統)
-----當下雲計算的核心競爭力是運維!
系統架構師(偏管理):網絡 系統 數據庫 開發 雲計算 自動化
運維管理 服務管理 項目管理 測試 業務
-----專注於某一領域


2、運維自動化發展 運維工作內容分類:
監控運維(7x24運維值班、故障處理)
應用運維(業務熟悉、服務部署、業務部署、版本管理、灰度發布、應用監控)

安全運維(整體的安全方案、規范、漏洞檢測、安全防護等)

系統運維(架構層面的分布式緩存、分布式文件系統、日志收集、環境規划(測試、開發、生產)、架構設計、性能優化)
基礎服務運維(包含運維開發)(內部dns、負載均衡、系統監控、資產管理、運維平台)

基礎設施運維(系統初始化、網絡維護、負責設備上下架、巡檢、報修、硬件監控)

3、運維自動化發展 標准化:
物理設備層面:
1.服務器標簽化、設備負責人、設備采購詳情、設備擺放標准
2.網絡划分、遠程控制卡、網卡端口
3.服務器機型、硬盤、內存統一。根基業務分類
4.資產命名規范、編號規范、類型規范
5.監控標准
操作系統層面:
1.操作系統版本
2.系統初始化(dns、ntp、內核參數調優、rsyslog、主機名規范)
3.基礎agent配置(zabbix agent、logstash agent、saltstack minion)
4.系統監控標准(cpu、內存、硬盤、經常)
應用服務層面:
1.web服務選型(apache、nginx)
2.進程啟動用戶、端口監聽規范、日志收集規范(訪問日志、錯誤日志、運行日志)
3.配置管理(配置文件規范、腳本規范)
4.架構規范(nginx+keepalievd、lvs+keeplievd)
5.部署規范(位置、包命名等)
運維操作層面:
1.機房巡檢流程(周期、內容、報修流程)
2.業務部署流程(先測試、后生產、回滾)
3.故障處理流程(緊急處理、故障升級、重大故障管理)
4.工作日志標准(如何編寫工作日志)
5.業務上線流程(1.項目發起2.系統安裝3.部署應用4.解析域名5.測試6.加監控7.備份)
6.業務下線流程(誰發起,數據如何處理)
7.運維安全規范(密碼復雜度、更改周期、vpn使用規范、服務登錄規范)

-----目標:文檔化

 

4.運維自動化發展 工具化:
1、shell腳本(功能性(流程)腳本、檢查性、報表性)
2、開源工具(zabbix、elkstack、saltstack、cobbler)

目標:1、促進標准化的實施
2、將重復的操作,簡單化
3、將多次操作,流程化
4、減少人為操作的低效和降低故障率

工具化和標准化是好基友
痛點:
1、至少要ssh到服務器上執行,可能犯錯
2、多個腳本有執行順序的時候,可能犯錯
3、權限不好管理,日志沒法統計
4、無法避免手工操作

例子:比如某天我們要對一台數據庫從庫進行版本停機升級,那么要求進行評估
統計影響:晚上3點有定時任務連接該數據庫,做數據報表統計
1、凌晨3點我們所有系統的定時任務有哪些 crontab
2、這些crontab哪些連接我們要停止的從庫
3、哪些可以停,哪些不能停(修改到主庫),哪些可以后補
4、這些需要后補的腳本哪個業務、誰加的、什么時候加的


5.運維自動化發展 web化

運維平台:
例子:
1、做成web界面
2、權限控制
3、日志記錄
4、弱化流程
5、不用ssh到服務器,減少人為操作造成的故障
dns web 管理 bind-DLZ
負載均衡web管理
job管理平台
監控平台 zabbix
操作系統安裝平台

6.運維自動化發展 服務化(api化)

dns web 管理 bind-DLZ dns-api
負載均衡web管理 slb-api
job管理平台 job-api
監控平台 zabbix zabbix-api
操作系統安裝平台 cobbler-api
部署平台 deploy-api
配置管理平台 saltstack-api
1、調用cobbler-api安裝操作系統
2、調用saltstack-api進行系統初始化
3、調用dns-api 解析主機名
4、調用zabbix-api該新上線機器加上監控
5、再次調用saltstack-api部署軟件(nginx-php)
6、調用deploy-api將當前版本代碼部署到服務器上
7、調用test-api 測試當前服務運行是否正常
8、調用slb-api將該節點加入集群

7.運維自動化發展 智能化

智能化的自動化擴容、縮容、服務降級、故障自愈

觸發機制-》決策系統(決策樹)-》

1.zabbix觸發Action
觸發:
1、當某個集群的訪問量超過最大支撐量,比如10000
1.1、cpu使用率達到xx。內存使用率達到xx
2、當持續5分鍾
3、不是攻擊
4、資源池有可用資源
4.1、當前網絡帶寬使用率
4.2、如果公有雲--錢夠不夠
5、當前后端服務支撐量是否超過閾值,如果超過應該后端先擴容
6、數據庫是否可用支撐當前並發
7、當前自動化擴展隊列,是否有正在擴容的節點
8、其他業務相關的

之前:先判斷buffer是否有最近x小時,已經移除的之前創建的虛擬機,並查詢軟件版本是否和當前一致,如果一致跳過2、3、4步驟,如果不一致掉過2、3步驟
2.openstack 創建虛擬機
3.saltstack 配置環境--------》監控
4.部署系統部署當前代碼
5.測試服務是否可用(注意間隔和次數)
6.加入集群
7.通知(短信、郵件)

自動化縮容:
1.觸發條件和決策
2.從集群中移除節點----》關閉監控--》移除
3.通知
4.移除的節點存放在buffer里面
5.buffer里面超過一天的虛擬機,自動關閉,存放於xx區
6.xx區的虛擬機。每七天清理刪除


8. 運維自動化發展 基於ITIL的運維管理體系
成為一名運維經理:
技術:
運維知識體系
除了技術:
1.服務管理 ITIL
2.項目管理 PMP
做人


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM