1. 程式人生 > >利用django和python構建網路運維平臺

利用django和python構建網路運維平臺

前言

我主要從事的是網路維護,管理著數百臺的網路裝置。在最初的日子裡,確實會手工一臺一臺敲命令,這種心酸往往只有經歷過的人才能體會。往往工作半天就為了修改一條ACL,不僅效率低,還容易犯錯。後來也會買一些配置軟體,但是一來軟體大多要收費,二來很多不能定製開發,也無法和現有的一些資訊平臺進行對接,這也便是想自己動手豐衣足食的緣由。從最初的TCL到現在的PYTHON,感覺終於找到了一種 合適的語言,簡單明瞭且又功能強大。但是由於自己非開發出身,越學習就發現自己越無知,越往下寫就發現自己需要學習的太多。因此我覺得自己可以寫一些部落格,把自己的程式碼放上,目的並非教學,而是拋磚引玉,望求各位大俠指點,同時也算是對我這一年來的工作的梳理和總結。因此,在今後的部落格中若有所謬誤,還 希望大家能不吝賜教,也希望能和各位多多交流,結為好友。

整個平臺的架構是,LINUX + APACHE + MYSQL。python:v2.7.5 , django: v1.9.2。

接下來的部落格不會太糾結與技術細節,而是主要介紹專案如何構成,如何搭建。但認為有python,js,html的基礎。

以下是部落格的結構安排,最終編排會按照實際情況調整:

前言

一.專案介紹及Django的MTV模式

二.djangoECHO專案的建立

三.通過Model建立資料庫資訊

四.django的template

五.Django的forms與ModelForm

六.Django中URL的引數傳遞

七.將bootstrap模板ACE引入django

八.ACE模板的佈局簡介

九.引入datatables外掛

十.匯入django-crispy-form並完善增加資料頁面

十一.增加資料修改功能

十二.通過bootstrap的modal.js來完成刪除功能

十三.通過pagination對頁面進行分頁

十四.在頁面上增加查詢功能

十五.增加一個專案協作留言板功能(一)----- 建立留言板的model

十六.增加一個專案協作留言板功能(二)----- 建立任務表格

十七. 增加一個專案協作留言板功能(三)----- 增加任務的修改和刪除功能

十八. 增加一個專案協作留言板功能(四)----- 增加實施步驟的增刪改查功能

十九. 增加一個專案協作留言板功能(五)----- 增加新增附件功能

二十. 增加一個專案協作留言板功能(六)----- 增加一個任務結束按鈕

二十一.增加使用者登陸介面

二十二.完善Dashboard頁面並更改font awesome icons

二十三..優化整個專案介面

二十四.Django認證系統中的@login_required
 

二十五.將ECHO專案部署至LINUX環境

在 運營商工作3年,銀行工作7年,一直從事著系統運維工作,感慨良多。深知作為IT人員,特別是系統運維人員的不易。如果說開發人員的加班是家常便飯,那麼 運維人員不僅加班,而且他們的加班時間往往是從零點才開始的,因為白天對業務系統不做變更;如果說開發人員總是有DEADLINE的壓力,那麼運維人員可 能每分每秒都面臨著DEADLINE,而且從告訴你到結束不會超過1個小時,甚至重要系統的中斷不能超過15分鐘

事實上作為IT人員,大家都揹負著極大的壓力,不論是身體還是精神上的。我也十分希望能把自己手頭做的這個專案延續下去,她不一定要做的很好,但是希望能讓很多人知道這是怎麼做出來的,能作為許多人的墊腳石。當然,以我個人的能力恐怕還不足以完成這樣一個專案,所以如果你同樣熱愛Python和Django,能否加入到這個專案中來,讓她能得到更好的延續。能者多指點,習者多交流,共同進步,共同學習。

這也是為什麼把這個專案取名為echo的原因,echo的英文意義有合聲,回聲的含義,正是希望通過一得之見而獲得更多知識。

專案github地址:https://github.com/alexchen16/echo_site.git
討論群名稱:281211023,驗證資訊:參與echoproject討論
專案DEMO地址: http://www.echoproject.cn或http://121.43.151.178
使用者名稱:guest 密碼:echoproject

相關推薦

利用djangopython構建網路平臺

前言 我主要從事的是網路維護,管理著數百臺的網路裝置。在最初的日子裡,確實會手工一臺一臺敲命令,這種心酸往往只有經歷過的人才能體會。往往工作半天就為了修改一條ACL,不僅效率低,還容易犯錯。後來也會買一些配置軟體,但是一來軟體大多要收費,二來很多不能定製開發,也無法

使用flask從零構建自動化平臺系列三

Angularjs 百度百科 inspina bootstrap比較好的後臺管理模板,本身就支援了Angularjs版本,jumpserver就是使用的inspina的jquery版本 登入介面 登入介面程式碼 <div class="middle-b

使用flask從零構建自動化平臺系列四

使用flask從零構建自動化運維平臺系列四 cmdb平臺構建之資產收集 這裡就需要使用到ansible ansible2.0 2.0的API拓展性可高。我用的是別人改好的。從jumpserver裡面抽取出來 from app.ansible2.runner impor

使用flask從零構建自動化平臺系列二

文章目錄 程式碼管理 目錄結構 目錄結構用途說明 目錄檔案說明 配置檔案 使用工廠來建立app 使用manage來管理 使用manage建立資料庫 初始化

使用flask從零構建自動化平臺

文章目錄 使用flask從零構建自動化運維平臺 安裝 開發ide 開發思路 使用到的flask拓展 設計一個最常用的helloworld介面 新增驗證 1. 使用ORM建立一個使用者表

網路:各類網線光纖線的有效傳輸距離

網路運維工程師應該都知道網線的有效傳輸距離不大,這時我們可能會通過光纖線加光電轉換裝置來延長網路傳輸的距離,本文將彙總整理網線和光纖線的有效傳輸距離: 一、網線 五類,六類都是100米 ,如果要加大傳輸距離,在兩段雙絞線之間可安裝中繼器,最多可安裝4箇中繼器。如安裝4箇中繼器連線5個網段,則最大

Garena黃智凱:利用Docker構建自動化

黃智凱:Docker構建自動化運維 講師簡介

OneAlert 攜手 BearyChat(倍洽)快速構建 IT on-call 機制

get 企業 註冊 機制 可能 dcm 所有 class medium OneAlert 是北京藍海訊通科技股份有限公司旗下產品,中國第?個 SaaS 模式的免費的雲告警平臺,集成國內外主流監控/?撐系統,實現?個平臺上集中處理所有 IT 事件,提升 IT 可靠性。並且能夠

初級網路工程師比賽題目

網路工程師分類很多,有網路運維工程師、網路系統整合工程師、網路安全工程師、售前工程師、售後工程師、網路綜合佈線工程師、網路儲存工程師,今天分享下初級網路工程師趣味題目。 一、 實驗要求: 修改路由器主機名Router1,交換機主機名Switch1配置路由器本地訪問口令123,交換機本地訪問口令

AIOPS案例學習-阿里巴巴構建通用智慧平臺

2017年線上技術分會——運維/DevOps線上技術峰會上,來自阿里基礎架構事業部大資料SRE團隊的池楓分享了構建通用化智慧運維體系的實踐。他主要介紹了智慧運維體系的設計以及通用核心套件,從T-flow操作執行、ICS事件連線、IAS智慧分析三個核心套件的實際案例出發詳細介紹了阿里的運維經驗。

網路工程師常見面試問題彙總

第一部分:(A卷) 1、用過華為或思科那些型號的裝置?2、如何快速判斷網路中是否存在環路?3、同一VLAN能否配置多個網段?VLAN間互訪不通怎麼辦?4、如何釋放和更新PC上的IP地址?客戶端獲取的IP地址與其他客戶端IP地址衝突怎麼解決?5、客戶端無法從DHCP伺服器獲取IP地址如何解決?客戶端從DHCP

DjangoPython中的Timezone處理

總的原理 進入到django資料庫中的時間一定是timezone aware的時間,如果要生成時間,要通過replace timezone設定為本地時區。 資料庫中的時間都是utc時間 Django中的timezone from django.utils import timezone t=tim

使用 Redis Python 構建一個共享單車的應用程式

  學習如何使用 Redis 和 Python 構建一個位置感知的應用程式。 我經常出差。但不是一個汽車狂熱分子,所以當我有空閒時,我更喜歡在城市中散步或者騎單車。我參觀過的許多城市都有共享單車系統,你可以租個單車用幾個小時。 大多數系統都有一個應用程式來幫助使用者定位和

TIME_WAITCLOSE_WAIT 小分享-筆記

  相信很多運維工程師遇到過這樣一個情形: 使用者反饋網站訪問巨慢, 網路延遲等問題, 然後就迫切地登入伺服器,終端輸入命令"netstat -a | grep TIME_WAIT | wc -l " 檢視一下, 接著發現有幾百甚至幾千個TIME_WAIT 連線數. 頓時慌了~, 接著嘗

網路與管理系統

· 模組化 系統模型可以很好的理解網路環境,即使很複雜的環境,也可以進行詳細的分析。系統模型的核心用來描述裝置的基礎資訊,系統模型是基於物件的,可以通過繼承物件對模型進行擴充套件。 · 自動發現 使用自動發現來應對複雜環境。在自動發現過程中,系統會訪問現有環境下所有的監控裝置,從而獲取裝置資

利用seleniumpython 爬蟲網站程式碼

利用selenium和python寫的程式: from selenium import webdriver import os br = webdriver.Chrome() br.get("https://www.zymk.cn/2/") br.maximize_window() def cl

Python 3 自動化之目錄差異比較filecmp模組

#目錄差異對比filecmp import filecmp #定義左目錄 leftDir = "/home/abc/dir1" #定義右目錄 rightDir = "/home/abc/dir2" #目錄比較 忽略test.py dirObj = filecmp.dirc

Django搭建平臺(一):搭建環境

環境,本人使用win10-pycharm,django的版本是2.0.0,python是3.7 首先在pycharm=>file=>newProject=>Django.建立一個叫dalu的project. 然後使用Terminal=> #dj

DEVOPS 開發系列五:基於Django過濾器實現自動化平臺功能模組的動態授權管理與展示

1、關於Django過濾器 Django中提供了很多內建的過濾器和標籤,我們常用的例如下面這些: block(模板繼承) extends(模板繼承) filter(過濾器) for(迴圈) if(判斷) include(載入模板) 還有很多詳見官網

網路簡介

運維,這裡指網際網路運維,通常屬於技術部門,與研發、測試、系統管理同為網際網路產品技術支撐的4大部門,這個劃分在國內和國外以及大小公司間都會多少有一些不同。 一個網際網路產品的生成一般經歷的過程是:產品經理、需求分析、研發部門開發、測試部門測試、運維部門部署釋出以及長期的執