您好,登錄后才能下訂單哦!
功能
使用 rancher-api 能帶來什么:
可以自定義 rancher-UI
可以在自有的業(yè)務(wù)系統(tǒng)中觸發(fā)對 rancher 的各種操作
可以定制一些自己的自動化腳本
分類
Rancher-api 目前包括兩大類:
http://<server>/v1 主要服務(wù)的 api
http://<server>/v1-catalog 分離出來的catalog api
在已經(jīng)登錄 Rancher UI 的情況下,直接訪問上面的地址就可以看到 API 頁面。
語言
在實際的開發(fā)中,我們更喜歡調(diào)用 Client SDk 來使用 API,Rancher 提供了以下幾種語言的Client:
Python:gdapi-python / cattle-cli
Golang:go-rancher
Java:gdapi-java-server
認(rèn)證方式
1. 使用 jwt-token
向 v1/token 發(fā)送 post 請求生成 token:
然后把 token 設(shè)置到 cookie 中,在瀏覽器端后續(xù)請求會自動帶上 token,目前 rancher UI 使用的是這種方式。
2. 使用api key (access_key & access_secret)
Api key 的生成
此處有兩種key:作用域在某個env下的env-key,和作用域在該用戶下所有env下的global-key。
這里 advanced options UI 上默認(rèn)是不展開的。
生成好的 api key,配合 cattle-cli/gdapi 之類的 client 庫就可以使用。
3. 使用Basic auth方式
這種方式同樣需要api key,但是使用方式略不一樣,先對 api key 進(jìn)行編碼 Base64.encode(“key: secret”)
為什么要提這種方式?
因為目前 catalog api 還不能用 client lib 直接調(diào)用,但是可以用這種方式調(diào)用。
Rancher 的高級選項
在 V1/setting 下面,有很多可配置的高級選項,可以進(jìn)行手動編輯。
可以修改 jwt token 的有效時間,默認(rèn)是 16 小時內(nèi) token 有效。
Auditlog 是 Rancher 審計日志,一般頻繁操作 Rancher 會導(dǎo)致 Auditlog 激增,Rancher 提供了以周期性的 purge 機制,可以根據(jù)自己數(shù)據(jù)庫容量調(diào)整這個周期。
Rancher-compose 的各種下載地址,尤其是在國內(nèi)可以把這個改成自己的地址,方便下載。
Rancher 私有網(wǎng)絡(luò)的 cidr 也可以修改 :
Rancher 目前兼容 docker1.10.3,所以 Rancher 提供了一個安裝該版本的 shell 腳本,這個腳本會在 Add Host 使用其他 driver 時用到,我們可以把里面的內(nèi)容源指定到國內(nèi),提高 dockerengine 的安裝速度,從而快速部署 Host。
v1/settings 的高級功能等待大家細(xì)細(xì)挖掘,最后 Rancher-api有一個說明文檔可以看這里:
https://github.com/rancher/api-spec/blob/master/specification.md
其中的語義定義和 api 的組織結(jié)構(gòu)等,都是值得學(xué)習(xí)的。
另外 api-v2 之前也啟動過https://github.com/rancher/v2-api,但是后來由于 GA 發(fā)布和多編排引擎的支持,這件事暫時擱置了,相信不久后會重啟 v2 的開發(fā),V2 版本是基于Golang的。
最后提醒大家需要注意的是,v1版本的api的語義和UI上有歧義,rancher-docs 里也有提到這部分。
原文來源:Rancher Labs
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。