国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

Saltstack新特性測試之proxyminion

來源:懂視網 責編:小采 時間:2020-11-09 13:07:50
文檔

Saltstack新特性測試之proxyminion

Saltstack新特性測試之proxyminion:salt 目前主要的應用場景是Linux OS下,另外還有Windows Client(Win下沒用過,但是看官方issue,應該……),最近關注到官方的一個小模塊提到了Proxy minion,群里也多有提及,便想著看看到底是啥存在。 任何設備均可被salt托管 salt proxy
推薦度:
導讀Saltstack新特性測試之proxyminion:salt 目前主要的應用場景是Linux OS下,另外還有Windows Client(Win下沒用過,但是看官方issue,應該……),最近關注到官方的一個小模塊提到了Proxy minion,群里也多有提及,便想著看看到底是啥存在。 任何設備均可被salt托管 salt proxy

鄙人的minion id是docker,對應的pillar的top.sls內容配置為:

root@docker:/srv/pillar# cat top.sls
base:
 docker:
 - proxyminion

而proxyminion.sls內容則是對應網管設備的描述:

root@docker:/srv/pillar# cat proxyminion.sls 
proxy:
 rest_sample:
 proxytype: rest_sample
 url: http://127.0.0.1:8080/
 id: proxy_docker

這里需要注意的是,proxytype必須是在salt/proxy下已經預先定義好的,而其他的一些參數則是自己網管設備通信需要的一些數據,不一定相同。

定義好pillar數據之后,需要為之添加對應的proxy conn class和grains數據,這里鄙人使用官方sample,就偷個懶:

root@docker:/srv/pillar# cat /usr/lib/python2.7/dist-packages/salt/proxy/rest_sample.py
# -*- coding: utf-8 -*-
'''
This is a simple proxy-minion designed to connect to and communicate with
the bottle-based web service contained in salt/tests/rest.py.
Note this example needs the 'requests' library.
Requests is not a hard dependency for Salt
'''
……

放心,2014.1.7版本已經默認有這個sample代碼。 接下來,直接test.ping試試吧!

root@docker:/srv/pillar# salt '*' test.ping -v
Executing job with jid 20140720110315049478
-------------------------------------------
docker:
 True
rest_sample-localhost:
 True

誒,等一下,為什么多出來個key?為什么還能test.ping通?沒錯!這個就是ProxyMinion,而salt默認已經配置了test.ping方法兼容proxy minion了,只要寫好對應的ping模塊,就可以使用常規的test.ping來探測!(本例的ping代碼如下)

def ping(self):
 '''
 Is the REST server up?
 '''
 r = requests.get(self.url+'ping')
 try:
 if r.status_code == 200:
 return True
 else:
 return False
 except Exception:
 return False

rest_sample還提供很多function,比如鄙人測試的一個service_status,修改對應的模塊代碼即可使之兼容proxy minion(代碼路徑為/usr/lib/python2.7/dist-packages/salt/modules/service.py):

def status(name, sig=None):
 '''
 Return the status for a service, 
 returns the PID or an empty string if the
 service is running or not, pass a signature
 to use to find the service via ps
 CLI Example:
 .. code-block:: bash
 salt '*' service.status [service signature]
 '''
 #wjx add, denote it to work!!
 #if 'proxyobject' in __opts__:
 # return __opts['proxyobject'].service_status(sig if sig else name)
 return __salt__['status.pid'](sig if sig else name)

那么這時候再看看當前proxy minion管理的服務狀態咋樣了:

root@docker:/srv/pillar# salt '*' service.status apache
rest_sample-localhost:
 ----------
 comment:
 stopped
 ret:
 True
docker:
 False

完全和普通minion兼容!!rest_sample本身還配置了grain數據,代碼位于/usr/lib/python2.7/dist-packages/salt/grains/rest_sample.py,直接敲命令看看:

root@docker:/srv/pillar# salt 'rest_sample-localhost' grains.items
rest_sample-localhost:
 housecat: Are you kidding?
 kernel: 0.0000001
 location: In this darn virtual machine. Let me out!
 os: RestExampleOS
 os_family: proxy

Awesome!!這樣一來,一個基本的salt proxy minion就算是配置完成,Proxy Minion 的類定義代碼位于/usr/lib/python2.7/dist-packages/salt/minion.py,有興趣可以看看。

可能的bug

鄙人在本機測試時,Minion Docker在嘗試fork出一個ProxyMinion過程中間報錯,說_running參數沒有配置,在添加代碼后通過(即位于minion.py代碼里)

class ProxyMinion(Minion):
'''
This class instantiates a 'proxy' minion--a minion that does not manipulate
the host it runs on, but instead manipulates a device that cannot run a minion.
'''
def __init__(self, opts, timeout=60, safe=True): # pylint: disable=W0231
 '''
 Pass in the options dict
 '''
 #wjx add, maybe a bug
 self._running = None
 # Warn if ZMQ < 3.2
 if HAS_ZMQ and (not(hasattr(zmq, 'zmq_version_info')) or
 zmq.zmq_version_info() < (3, 2)):
 ……

聊聊Proxy Minion

Proxy minion使得salt針對網管設備的配置管理成為可能,不過想要實現一個ProxyType的ProxyMinion的完全管理,可能需要編寫很多額外的module去支持它的運行。

在大公司復雜的網絡環境下,完全可以針對此編寫對應SNMP管理模塊或者針對OVS編寫對應的管理模塊,爾后通過salt統一托管,畢竟Salt有一套完善的配置管理體系啊!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Saltstack新特性測試之proxyminion

Saltstack新特性測試之proxyminion:salt 目前主要的應用場景是Linux OS下,另外還有Windows Client(Win下沒用過,但是看官方issue,應該……),最近關注到官方的一個小模塊提到了Proxy minion,群里也多有提及,便想著看看到底是啥存在。 任何設備均可被salt托管 salt proxy
推薦度:
標簽: 測試 mini 新特性
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产码欧美日韩高清综合一区 | 欧美激情亚洲一区中文字幕 | 国产视频一区二区在线观看 | 亚洲伊人久久综合一区二区 | 成人特黄午夜性a一级毛片 成人国产一区二区三区精品 | 欧洲一区二区三区在线观看 | 精品视频在线观看一区二区三区 | 国产精品国产亚洲精品看不卡 | 国产精品高清一区二区三区 | 欧美亚洲综合在线 | 日韩欧美精品 | 欧美日韩国产精品 | 国产欧美日韩一区二区三区 | 精品久久一区二区三区 | 91麻豆视频网站 | 欧美骚 | 国产日韩欧美视频在线 | 亚洲欧美日韩中文字幕在线不卡 | 国产成人精品一区二三区 | 九九热这里有精品 | 情侣国产在线 | 国产精品视屏 | 么公又大又硬又粗又爽的视频 | 国产 在线 | 日韩 | 欧美第一页在线观看 | 天天色啪 | 亚洲色欧美 | 精品视频在线观看一区二区三区 | 欧美日韩亚洲精品国产色 | 亚洲欧美日韩中另类在线 | 亚洲综合欧美日韩 | 91精品观看91久久久久久 | 久久精品免费一区二区视 | 欧美性野久久久久久久久 | 久久久久国产成人精品亚洲午夜 | 国产高清a毛片在线看 | 国产片91| 免费在线不卡视频 | 北条麻妃 在线 | 伊人婷婷色 | 国产精品一区二区久久精品 |