課基于搭建自動化任務(wù)平臺海量資源_第1頁
課基于搭建自動化任務(wù)平臺海量資源_第2頁
課基于搭建自動化任務(wù)平臺海量資源_第3頁
課基于搭建自動化任務(wù)平臺海量資源_第4頁
課基于搭建自動化任務(wù)平臺海量資源_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

本文由簡悅SimpRead轉(zhuǎn)碼,原文地址本課時(shí)我們主要講解如何基于Python、Django、Ansible本文由簡悅SimpRead轉(zhuǎn)碼,原文地址本課時(shí)我們主要講解如何基于Python、Django、Ansible開發(fā)一套具備Devops理念的自動化任務(wù)執(zhí)行和資產(chǎn)管理(CMDB)系統(tǒng)。這個(gè)可以實(shí)現(xiàn)自動化任務(wù)執(zhí)行和資產(chǎn)管理的系統(tǒng)取名為Imoocc,它是基于Python、Django、實(shí)現(xiàn)的,共有兩個(gè)版本,一個(gè)是Python2.7版本(你可以在這個(gè)GitHub地址上直接下載),另外一個(gè)是Python3.6版本(你可以在本課時(shí)末尾的鏈接中通過附件下載)。Imoocc統(tǒng)、硬件信息和宿主機(jī)子機(jī)關(guān)聯(lián)信息收集起來,并做平臺化展示。然后打通自動化任務(wù)執(zhí)行,客戶端通過調(diào)用API接口的方式對搜集的資產(chǎn)信息對象執(zhí)行自動化任務(wù),對共分為三種類型:物理資產(chǎn)、虛擬資產(chǎn)和信息資產(chǎn)?;姆绞教摂M出KVM、mwae、Docer等相關(guān)的虛擬化個(gè)體。運(yùn)行的服務(wù),以及每個(gè)服務(wù)器配置的IP,還有它的登錄等相關(guān)信息,等等。運(yùn)維資產(chǎn)管理系統(tǒng)就是要把所有的這些資產(chǎn)做整體的管理和收集。我們講到CMDB也是Devops設(shè)計(jì)在企業(yè)里面,Dvops在企業(yè)里面,Dvops依賴于資產(chǎn)管理的功能。所以搜集資產(chǎn)是Dvops工程設(shè)計(jì)里面非常重要、非常基礎(chǔ)的一個(gè)環(huán)節(jié)。首先,用PyCharm工具打開工程代碼,左側(cè)是目錄結(jié)構(gòu),底部是一個(gè)terminal首先,用PyCharm工具打開工程代碼,左側(cè)是目錄結(jié)構(gòu),底部是一個(gè)terminal控制終端,上面是代碼內(nèi)容,如果你了解PyCharm就比較清楚了。我本地已經(jīng)準(zhǔn)備好一個(gè)演示環(huán)境,因?yàn)樾枰占Y產(chǎn)信息,本地環(huán)境的資產(chǎn)除了包括演示的這臺主機(jī)以外,還包括另外一臺單獨(dú)的裝了VMwae的虛擬機(jī),在虛擬機(jī)上還運(yùn)行了一個(gè)Docer的容器(是我本地收集的目標(biāo)資產(chǎn)對象)。登錄到這臺虛擬機(jī)后,可以發(fā)現(xiàn)啟動的容器開放了ssh端口并進(jìn)行了端口的映射(22022>22),的掃描,并且會把它們的關(guān)系羅列出來。回到工程代碼,首先需要運(yùn)行一個(gè)腳本,把目標(biāo)資產(chǎn)信息掃描出來。這里通過Python直接執(zhí)行main.回到工程代碼,首先需要運(yùn)行一個(gè)腳本,把目標(biāo)資產(chǎn)信息掃描出來。這里通過Python直接執(zhí)行main.y到的信息??吹剿腎P信息和端口信息。這個(gè)ssh端口就是容器所映射出來的端口,還會看到把相關(guān)的主機(jī)容器上的主機(jī)信息也做了相關(guān)的打印,也就是信息收集。息,并且展示它們的關(guān)聯(lián)關(guān)系,所以這里我繼續(xù)演示前臺界面是什么效果。Pythonmanage.pyrunserver5555端口,并把這個(gè)服務(wù)運(yùn)行起來。然后打開瀏覽器,輸入:5555端口的url地址,這時(shí)就可以登錄后臺系統(tǒng)。在后臺系統(tǒng)中你可以看到是一臺承載Docer是一臺承載Docer類型的物理機(jī)。點(diǎn)擊子鏈接會進(jìn)入新的界面,新界面會展示這臺物理設(shè)備上的機(jī)器相關(guān)屬性,比如IP地址、服務(wù)器品牌、操作系統(tǒng)等(備注:你可以看到這里的服務(wù)器品牌是VMwae設(shè)備,這里稍微改動了代碼,把VM當(dāng)成物理設(shè)備來處理,所以這里實(shí)際上是一臺虛擬機(jī))。新的頁面,新頁面會展示出登錄的用戶名、密碼等信息,登錄方式也做了相關(guān)信息資產(chǎn)的保存。主機(jī)上面有容器運(yùn)行,并且還會展示系統(tǒng)版本,以及連接用戶的相關(guān)信息,我們也可以點(diǎn)擊查看。這就是我的這一套CMDB主機(jī)上面有容器運(yùn)行,并且還會展示系統(tǒng)版本,以及連接用戶的相關(guān)信息,我們也可以點(diǎn)擊查看。這就是我的這一套CMDB以獲得一些自動化運(yùn)維研發(fā)的思路和相關(guān)經(jīng)驗(yàn),并運(yùn)用在自己的項(xiàng)目中。了解了這些以后,我們來看一下學(xué)習(xí)本課時(shí)所需要掌握的基礎(chǔ)。首先就是需要了解Python一定的Python開發(fā)基礎(chǔ);同時(shí),你還要了解Django基礎(chǔ),包括它的模型、視圖、URL等;還要掌握一些前端的基礎(chǔ)知識,如Bootstap、JS、HTML等,這里對于前端的知識要求并不高,只需要能看懂即可。通過ICMP協(xié)議去掃描內(nèi)部的存活設(shè)備,通過ssh協(xié)議的好處是開發(fā)、運(yùn)維實(shí)現(xiàn)會更加的簡單、通用。傳統(tǒng)的CMDB系統(tǒng)需要手動錄入方式,相比手動錄入方式,該系統(tǒng)效率得到了提升。另外,對比被動探測的實(shí)現(xiàn)方式,采用主動探測方式會更加方便維護(hù)和管理,被動探測往往需要在客戶端安裝而agent的管理維護(hù)其實(shí)相對比較復(fù)雜。這個(gè)工程的信息展示,你可以看到,在左側(cè)的菜單欄里面,我會把整個(gè)Devops里與工程相關(guān)的功能做關(guān)系進(jìn)行梳理和展示。關(guān)系進(jìn)行梳理和展示。在資產(chǎn)信息內(nèi)容中,會收集服務(wù)器IP、服務(wù)器品牌、主機(jī)名、系統(tǒng)版本、設(shè)備的sn號、MAC地址、宿主機(jī)的類型、相關(guān)的編號,以及ssh登錄所需信息。有了登錄的連接信息就為自動化任務(wù)執(zhí)行奠定了一接下來這個(gè)頁面展示的是與登錄的連接相關(guān)的信息內(nèi)容,包含:登錄的用戶名、ssh登錄密碼、ssh接下來這個(gè)頁面展示的是與登錄的連接相關(guān)的信息內(nèi)容,包含:登錄的用戶名、ssh登錄密碼、ssh的登錄端口和IP信息,同時(shí)也可以支持y的登錄信息記錄,因?yàn)榍懊嬷v過,y錄的方式更加安全。最后一部分我們來介紹一下CMDB首先,這套工程用到了Python3.6、Django1.8、MySQL5.7,前臺用到Bootstrap3.0第一,在使用這套工程時(shí),你需要先把MySQL搭建完畢,同時(shí)修改對應(yīng)的字符集,并創(chuàng)建數(shù)據(jù)庫密碼第二,工程所需要的模塊,同樣是在requirements.txt里面安裝Pythonsettingsmanage.pymakemigrationsmanage.pymigrate同時(shí),在前臺管理系統(tǒng)里面,我們用到了admin建一個(gè)登錄的用戶密碼信息,我們可以通過manage.y進(jìn)入它的Shell交互環(huán)境,通過這樣的方式來創(chuàng)建登錄前臺的管理員的用戶密碼,最后,就是啟動工程。圖中右側(cè)是所需要探測的客戶端,左側(cè)為服務(wù)端,服務(wù)端這里通過一些對應(yīng)的通用協(xié)議,比如ssh、ping圖中右側(cè)是所需要探測的客戶端,左側(cè)為服務(wù)端,服務(wù)端這里通過一些對應(yīng)的通用協(xié)議,比如ssh、ping、telnet機(jī),比如KVM、Docer、ESX等。我們會看到,通過main.y測,第三個(gè)是做主機(jī)關(guān)系探測。存活探測會掃描在一個(gè)局域網(wǎng)內(nèi)部存活的IP地址列表。主機(jī)探測會獲取對應(yīng)存活的主機(jī)上面的系統(tǒng)信息,如sn號、版本、MC機(jī)的映射關(guān)系。這就是整體的探測邏輯和順序。如圖所示:首先,我會做主機(jī)存活的探測,掃描出對應(yīng)的存活的主機(jī)IP列表,有了這份IP列表后,就可以做首先,我會做主機(jī)存活的探測,掃描出對應(yīng)的存活的主機(jī)IP列表,有了這份IP列表后,就可以做ssh的端口探測。ssh端口探測先判斷局域網(wǎng)內(nèi)部的ssh端口是不是開放的,如果開放了ssh端口,就可以LinuxsshsshLinux主機(jī),然后會把它放到到另外一個(gè)列表中。接下來我會模擬ssh的用戶登錄,判斷它的登錄方式,分別是通過用戶的密碼登錄方式和key的登錄方式。登錄完成以后,就可以去獲取這臺主機(jī)上的主機(jī)信息,并接下來講一下啟動探測器所需要具備的一些配置。首先,我們需要修改scanhosts.yaml的相關(guān)配置,這里會配置幾段信息。第一個(gè),是配置服務(wù)器的主機(jī)段,我本地的主機(jī)段是1921681,表示掃描的主機(jī)段。第二個(gè),就是ssh所需要探測端口,因?yàn)閟sh端口往往是固定的,默認(rèn)端口是22面。另外,就是配置ssh用y登錄的方式,這里會為私鑰配置一個(gè)列表。機(jī)版本、主機(jī)名、MC地址、sn號等,都是通過命令去獲取的。最后,這里單獨(dú)列出一個(gè)dockerinfo配置項(xiàng)目,它為最后,這里單獨(dú)列出一個(gè)dockerinfo配置項(xiàng)目,它為Docker的登錄方式單獨(dú)獨(dú)立出一個(gè)用戶密碼

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論