一个颜值低但脾气超好的自动化运维实战入门教程
注:本教程由廖高祥發布于實驗樓,版權歸原作者所有。
什么是自動化運維?
自動化運維是指將IT運維中日常的、大量的重復性工作自動化,把過去的手工執行轉為自動化操作。自動化運維不單純是一個維護過程,更是一個管理的提升過程,是IT運維的最高層次,也是未來的發展趨勢。
自動化運維常用開源工具
Jekins 。一個具有許多插件的自動化服務器。用于構建,測試和自動化部署應用程序。通常Jenkins用作軟件開發的CI/CD工具。Jenkins 的作業(構建)可以由各種觸發器啟動。例如提交代碼到版本控制系統,按計劃事件,通過訪問特定URL構建或者在完成其它構建之后進行觸發。
Ansible。集合了眾多運維工具(puppet、chef、func、fabric)的優點,實現了批量系統配置、批量程序部署、批量運行命令等功能。
SaltStack 。基于Python開發的一套C/S架構配置管理工具,簡單易部署,同時支持服務器/客戶端 和無代理模式。在后一種情況下,Salt 使用SSH連接到受管理的節點/虛擬機。Salt 使用以Python編寫的執行模塊,其中包含函數以定義配置任務。
Nagios 。網絡監控工具,能有效監控Windows、Linux和Unix的主機狀態,交換機、路由器等網絡設備,并發送告警信息。
Zabbix。 是一個為應用服務,網絡服務和硬件監控提供的解決方案。Zabbix 將收集的數據存儲在關系數據庫中,如MySQL,PostgreSQL等。Zabbix 允許你監控簡單的服務,如HTTP服務。Zabbix agent端可以安裝在Windows和 類Unix服務器上,用來檢視系統參數,如CPU負載、內存和磁盤利用率等。另外,agent可用于監視標準服務和自定義應用程序。Zabbix也支持通過SNMP、SSH等方式,無需在要監視的服務器上安裝代理。
Kubernets。 簡稱k8s,是來自 Google 云平臺的開源容器集群管理系統,功能包括自動化容器的部署,調度和節點集群間擴展,支持Docker和Rocket。
OpenShift 。由RedHat推出的一款面向開源開發人員開放的平臺即服務(PaaS)。 OpenShift通過為開發人員提供在語言、框架和云上的更多的選擇,使開發人員可以構建、測試、運行和管理他們的應用。
ELK。 Elasticsearch,Logstash,Kibana軟件的組合,它是用于記錄,日志分析,日志搜索和可視化的完整工具。Elasticsearch是基于Apache Lucene的搜索工具。Logstash是用于收集,解析和存儲日志的工具,可以通過Elasticsearch對其進行索引。
自動化運維系統的功能
具體應包括哪些功能沒有統一的標準,視每個公司業務和開發需求而定。大體上,一個成熟的自動化運維系統功能應包含如下五大功能模塊:
(CMDB)配置管理 。 服務器、網絡設備、應用管理、業務屬性、監控屬性、架構拓撲、環境管理、運營狀態
集中監控報警 。網絡監控、主機監控、HTTP探測監控、日志監控、中間件監控
(ITSM)流程管理。 變更管理、需求管理、事件管理、工單系統、服務請求、問題管理
日志分析與處理 。日志的備份、審計、分析,報表展示
持續集成與發布 。自動化運維、Docker管理、流程編排、輕量ITSM、一致性管理
推薦幾個Github上不錯的自動化運維平臺:
OpsManage 。代碼及應用部署CI/CD、資產管理CMDB、計劃任務管理平臺、SQL審核|回滾、任務調度、站內WIKI。
adminset 。CMDB、CD、DevOps、資產管理、任務編排、持續交付、系統監控、運維管理、配置管理。
jumpserver。 全球首款完全開源的堡壘機,是符合 4A 的專業運維審計系統,官網地址。
今天推薦的這個教程是一個完整的自動化運維實戰教程,包含自動化運維的概念和基礎知識,常用開源軟件的使用場景,一個自動化運維系統需要具備哪些功能;通過Pexpect庫實現自動監控服務器的負載、磁盤、內存、CPU、網絡接口(流量)、端口等。
通過完整的教程,你將學到以下知識點:
Python自動化運維的概念和知識體系
如何開發一個成熟的自動化運維管理系統
使用nmap構建高效的端口掃描器
使用ClamAV搭建集中式病毒掃描器,實現自動化管理
使用Django+Echarts+openpyxl開發自動化報表系統
通過paramiko上傳/下載,fabirc+git代碼發布,熟悉自動化實踐中的批量主機管理方案
Ansible自動化運維,從安裝介紹,到架構原理,到實戰演練
Saltstack自動化運維入門到精通
實驗環境
-
Python 3.6
-
Xfce終端
-
Pexpect模塊
想了解自動化運維或具有Python基礎的用戶都可以去學習一下;如果你想使用Python開發自動化運維系統,卻不知道應該從何入手,這個教程就是專門為你寫的啦。
完整的教程可以:點我學習,在環境中動手實操學習。
今日推薦
總結
以上是生活随笔為你收集整理的一个颜值低但脾气超好的自动化运维实战入门教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【长文】Google面试官分步解析自己泄
- 下一篇: Python才排第8名!2018增速最快