開發動機:
作為一名專業的運維人員,面對業務系統更新是再正常不過得了,但是面對每周兩次以上,并且都要在晚上才可以做到的更新,作為一名有遠大理想并時刻想變技術方面的“糕富帥”的男人,怎麼可以容忍這樣的單一重複毫無技術含量的工作占用我過多的時間,一直秉承機器的事情讓機器去處理的原則,說白了就是秉承偷懶的基礎想法,我還是決定搞個小工具來幫助我處理這樣些煩人的東西。
開發語言:
毫無疑問的用了python,别問我為什麼。
開發時間:
斷斷續續3-4周,其中還要兼顧其他的工作,如果專心寫估計就2周左右。
開發架構:
C/S模式,tkinter+fabric+paramiko++mysql+shell,現在很多都用B/S模式,事實上這樣直接操作伺服器東西,個人覺得直接放網上的話實在是不安全。
開發IDE:
pycharm,個人喜好,不行可以直接文本寫
開發内容與過程:
其實這裡我想寫程式設計思想,語言是思想的承載,沒有思想管你什麼語言你都做不了什麼事情。
1、tkhinter做界面
2、fabric解決透過堡壘機的情況
3、paramiko解決上傳問題
4、各種内部伺服器處理shell
5、mysql裡面導入了目前的伺服器的使用者與密碼
6、做好ssh-key信任關系,目前更新機器要在堡壘機跟目标伺服器都添加ssh私匙,不做就無法通過
no code no bb,貼上代碼:
updategui.py
uploadfile.py
在貼上醜陋的界面: