本篇文章給大家分享的是有關(guān)如何通過unix socker訪問Open vSwitch database server,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創(chuàng)新互聯(lián)建站是一家專業(yè)提供壽陽企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、html5、小程序制作等業(yè)務(wù)。10年已為壽陽眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
與openvswitch交互,可以通過命令方式ovsdb-client list-dbs,或通過api操作ovsdb。
ovsdb協(xié)議參考 https://tools.ietf.org/html/rfc7047 (The Open vSwitch Database Management Protocol)
下面是通過unix sockert,json-rpc協(xié)議,與ovsdb交互的一個(gè)例子
import socket import sys import json def is_json(myjson): try: json.loads(myjson) except ValueError: return False return True sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) server_address = '/var/run/openvswitch/db.sock' try: sock.connect(server_address) except socket.error, msg: print(msg) sys.exit(1) try: message = { "method": "list_dbs", "params": [], "id": 0, } sock.sendall(json.dumps(message)) josn_result = "" while True: data = sock.recv(1024) if len(data) > 0: josn_result += data if is_json(josn_result): break print(josn_result) finally: sock.close()
以上就是如何通過unix socker訪問Open vSwitch database server,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。