CMDB單模組編譯和模型關聯關係的新增

2021-09-25 17:01:05 字數 3409 閱讀 2841

1.推薦安裝gox進行混合編譯

測試:命令列輸入gox -h,應該會用輸出的,不然你要檢查下path變數設定的是否正確

$gox -h

...2.使用方法

1.編譯window 64位:

gox -osarch="windows/amd64" ./

2.編譯mac 64位:

gox -osarch = "darwin/amd64" ./

3.編譯linux 64位:

gox -osarch="linux/amd64" ./

4.把生成的二進位製包替換為cmdb平台對應主機上面的包,例如:

1.登入中控機:cat /data/install/install.config

2.替換二進位製包,例如:

ssh到目標機,cd  /data/bkee/cmdb/server/bin,替換對應的模組即可

3.中控機操作cmdb服務,例如:

cd  /data/install,執行 ./bkeec start/stop cmdb 停止和啟動cmdb服務

<1>.採集器端

增加需要關聯的字段,可以是主機、業務或者其他,例如:host、biz等

字段屬性根據需要,可以設定為隱藏字段,singleasst(基於3.2.0版本)

<2>.cmdb原始碼段

目錄結果如下:模組名為datacollection

2.找到handler.go檔案裡面如下的方法進行修改,可以做關聯關係增刪改查操作

3.對應的表結構為

要點:

1.discover.go檔案需要引入底層資料庫的操作控制代碼,自己搭建操作橋梁

type discover struct
2. newdiscover方法

}3.從datacollection.go,入口處開始新增操作db引用

func (d *datacollection) run() error 

snapcli, err := redis.newfromconfig(d.config.snapredis)

if nil != err

rediscli, err := redis.newfromconfig(d.config.ccredis)

if nil != err

db, err := mongo.newmgo(d.config.mongodb.builduri(), time.minute)

if err != nil

d.db = db

channame := string{}

for

blog.errorf("get channame faile: %v, please init databae first, we will try 10 second later", err)

time.sleep(time.second * 10)

} hostsnap := newhostsnap(d.ctx, channame, maxsnapsize, rediscli, snapcli, db)

hostsnap.start()

discoverchan := ""

for

blog.errorf("get discover channel fail: %v, please init database first, we will try 10 second later", err)

time.sleep(time.second * 10)

} discover := newdiscover(context.background(), discoverchan, maxdiscoversize, rediscli, discli, d.engine, db)

discover.start()

blog.infof("datacollection started")

return nil

}

單模模組和多模模組的區別

from 單模模組和多模模組的區別 多模sfp 幾乎所有的多模光纖尺寸均為50 125 m或62.5 125 m 並且頻寬 光纖的資訊傳輸量 通常為200mhz到2ghz。多模光端機通過多模光纖可進行長達5公里的傳輸。以發光二極體或雷射器為光源。拉環或者體外顏色為黑色。2 單模sfp 單模光纖的尺寸...

thinkphp 模型關聯預載入和模型關聯統計

use think model class usermodel extends model public function getall public function getstatusattr value use think model class employeesmodel extends ...

Yii框架表單模型和驗證用法

表單模型cformmodel絕大部分繼承cmodelcmodel,由於表模型資料不需要持久化,所以主要在驗證操作上。下面以框架腳手架生成的 登入為例說明表單模型。ehheq 模型中的驗證規則 public function rules model new loginform 建立乙個登入表單模型 m...