ovs-vsctl的DB的操作

如果你在命令行里面找不到相应的命令创建和删除对象,则可以直接删除数据库

[−−if−exists] [−−columns=column[,column]...] list table [record]...

$ sudo ovs-vsctl list bridge
_uuid               : 91cd3178-fe2d-4004-85b6-f0f01fcc8b51
controller          : []
datapath_id         : "00007a31cd910440"
datapath_type       : ""
external_ids        : {}
fail_mode           : []
flood_vlans         : []
flow_tables         : {}
ipfix               : []
mirrors             : []
name                : helloother
netflow             : []
other_config        : {}
ports               : [20682bfb-ea46-497e-940f-43f48f00da84, 7dce6e3c-cedd-4bf0-b9dc-f8e90e8788c2, 83489fb4-f8c3-4a32-9bc4-b4cb484dd684]
protocols           : []
sflow               : []
status              : {}
stp_enable          : false

_uuid               : b491acba-c237-4942-94c8-14afad6d1a36
controller          : []
datapath_id         : "0000baac91b44249"
datapath_type       : ""
external_ids        : {}
fail_mode           : []
flood_vlans         : []
flow_tables         : {}
ipfix               : []
mirrors             : []
name                : hello
netflow             : []
other_config        : {}
ports               : [90a3fc08-5eea-4d69-bb00-c25250d94d33, bbdf854e-06d5-42f9-8074-98f608248860, c1a8c0f7-11c7-42fd-a272-0961a9aa6522, c5e0caca-5387-4e19-b4d5-25c58eb1257c, e7b71762-f0ac-4cf9-afb6-686e10c23518]
protocols           : []
sflow               : []
status              : {}
stp_enable          : false

[−−columns=column[,column]...] find table [column[:key]=value]...

$ sudo ovs-vsctl find port name=first_br
_uuid               : c5e0caca-5387-4e19-b4d5-25c58eb1257c
bond_downdelay      : 0
bond_fake_iface     : false
bond_mode           : []
bond_updelay        : 0
external_ids        : {}
fake_bridge         : false
interfaces          : [b0645fc3-c977-42ca-a234-5e84f1a9801a]
lacp                : []
mac                 : []
name                : first_br
other_config        : {}
qos                 : ce7cfd43-8369-4ce6-a7fd-4e0b79307c10
statistics          : {}
status              : {}
tag                 : []
trunks              : []
vlan_mode           : []

[−−if−exists] [−−columns=column[,column]...] list table [record]...

  • Lists the data in each specified record. If no records are specified, lists all the records in table.
  • If −−columns is specified, only the requested columns are listed, in the specified order. Otherwise, all columns are listed, in alphabetical order by column name.
  • Without −−if-exists, it is an error if any specified record does not exist. With −−if-exists, the command ignores any record that does not exist, without producing any output.

[−−columns=column[,column]...] find table [column[:key]=value]...

  • Lists the data in each record in table whose column equals value or, if key is specified, whose column contains a key with the specified value.
  • The following operators may be used where = is written in the syntax summary: = != < > <= >=

[−−if−exists] [−−id=@name] get table record [column[:key]]...

  • Prints the value of each specified column in the given record in table. For map columns, a key may optionally be specified, in which case the value associated with key in the column is printed, instead of the entire map.
  • Without −−if−exists, it is an error if record does not exist or key is specified, if key does not exist in record. With −−if−exists, a missing record yields no output and a missing key prints a blank line.
  • If @name is specified, then the UUID for record may be referred to by that name later in the same ovs−vsctl invocation in contexts where a UUID is expected.
  • Both −−id and the column arguments are optional, but usually at least one or the other should be specified. If both are omitted, then get has no effect except to verify that record exists in table.
  • −−id and −−if−exists cannot be used together.

[−−if−exists] set table record column[:key]=value...

  • Sets the value of each specified column in the given record in table to value. For map columns, a key may optionally be specified, in which case the value associated with key in that column is changed (or added, if none exists), instead of the entire map.
  • Without −−if-exists, it is an error if record does not exist. With −−if-exists, this command does nothing if record does not exist.

[−−if−exists] add table record column [key=]value...

  • Adds the specified value or key-value pair to column in record in table. If column is a map, then key is required, otherwise it is prohibited. If key already exists in a map column, then the current value is not replaced (use the set command to replace an existing value).
  • Without −−if-exists, it is an error if record does not exist. With −−if-exists, this command does nothing if record does not exist.

[−−if−exists] remove table record column value...

[−−if−exists] remove table record column key...

[−−if−exists] remove table record column key=value...

  • Removes the specified values or key-value pairs from column in record in table. The first form applies to columns that are not maps: each specified value is removed from the column. The second and third forms apply to map columns: if only a key is specified, then any key-value pair with the given key is removed, regardless of its value; if a value is given then a pair is removed only if both key and value match.
  • It is not an error if the column does not contain the specified key or value or pair.
  • Without −−if-exists, it is an error if record does not exist. With −−if-exists, this command does nothing if record does not exist.

[−−if−exists] clear table record column...

  • Sets each column in record in table to the empty set or empty map, as appropriate. This command applies only to columns that are allowed to be empty.
  • Without −−if-exists, it is an error if record does not exist. With −−if-exists, this command does nothing if record does not exist.

[−−id=@name] create table column[:key]=value...

  • Creates a new record in table and sets the initial values of each column. Columns not explicitly set will receive their default values. Outputs the UUID of the new row.
  • If @name is specified, then the UUID for the new row may be referred to by that name elsewhere in the same ovs−vsctl invocation in contexts where a UUID is expected. Such references may precede or follow the create command.
  • Records in the Open vSwitch database are significant only when they can be reached directly or indirectly from the Open_vSwitch table. Except for records in the QoS or Queue tables, records that are not reachable from the Open_vSwitch table are automatically deleted from the database. This deletion happens immediately, without waiting for additional ovs−vsctl commands or other database activity. Thus, a create command must generally be accompanied by additional commands within the same ovs−vsctl invocation to add a chain of references to the newly created record from the top-level Open_vSwitch record. The EXAMPLES section gives some examples that show how to do this.

[−−if−exists] destroy table record...

  • Deletes each specified record from table. Unless −−if−exists is specified, each records must exist.

−−all destroy table

  • Deletes all records from the table.
  • The destroy command is only useful for records in the QoS or Queue tables. Records in other tables are automatically deleted from the database when they become unreachable from the Open_vSwitch table. This means that deleting the last reference to a record is sufficient for deleting the record itself. For records in these tables, destroy is silently ignored. See the EXAMPLES section below for more information.

Openvswitch手册(8): ovs-vsctl的DB的操作的更多相关文章

  1. Openvswitch手册(1): 架构,SSL, Manager, Bridge

    Openvswitch是一个virutal swtich, 支持Open Flow协议,当然也有一些硬件Switch也支持Open Flow协议,他们都可以被统一的Controller管理,从而实现物 ...

  2. Openvswitch手册(2): OpenFlow Controller

         我们这一节主要来看Controller Controller有两种: Primary Controller: 真正控制vswitch的flow table,vswitch会保持和contro ...

  3. Openvswitch手册(4): Mirror

    这一节我们来分析Mirror Mirror就是配置一个bridge,将某些包发给指定的mirrored ports 对于包的选择: select_all,所有的包 select_dst_port se ...

  4. Openvswitch手册(9): Flow

    这一节我们将flow table flow table主要由ovs-ofctl命令操作 ovs-ofctl可以走和openflow controller一样的协议: ssl:ip[:port]: Th ...

  5. Openvswitch手册(3): sFlow, netFlow

    这一节,我们重点看sFlow 采样流sFlow(Sampled Flow)是一种基于报文采样的网络流量监控技术,主要用于对网络流量进行统计分析. sFlow系统包含一个嵌入在设备中的sFlow Age ...

  6. Openvswitch手册(5): VLAN and Bonding

    我们这一节来看Port 一般来说一个Port就是一个Interface,当然也有一个Port对应多个Interface的情况,成为Bond VLAN Configuration Port的一个重要的方 ...

  7. Openvswitch手册(6): QoS

    这一节我们看QoS,Qos的设置往往是和flow中的policy一起使用的 Open vSwitch QoS capabilities 1 Interface rate limiting 2 Port ...

  8. Openvswitch手册(7): Interfaces

    我们来看Interfaces ofport: OpenFlow port number for this interface. type: system: An ordinary network de ...

  9. laravel 控制器类DB类操作

    例子:TrGo表(trgo_chip): laravel框架建立:TrGoModel <?php namespace TrChaos\Model; class TrGoModel extends ...

随机推荐

  1. bootloaderd的再解析

    boot的0脚和1脚可以选择启动方式,以前只知道可以选择的方式是nandflash启动,或者选择从norflash启动,当选择nandflash启动时,cpu看到的0地址是ram的0地址,根据是nan ...

  2. Java中代理

    普通代理(最简单的代理) 需要有两个实现同一个接口的类,一个是被代理的类,一个是代理类 被代理类中我们按照自己想实现的功能重写接口中的方法 代理类中因为需要代理被代理类,所以在代理类中需要有个被代理类 ...

  3. 再次认识void

    重新认识void 在初学c/c++时感觉void是一个很不起眼的关键字.因为在c++中我使用的还是比较少的.但是到了Linux中,不论是在内核源码中还是在程序编写的过程中有关void与*的组合随处可见 ...

  4. AUDIOqueue 为什么会播放一段时间就听不到声音

    转自简书:非常有用 AudioQueue缓冲区为空时,那么AudioQueueOutputCallback回调不会再调用 这个其实很好理解,AudioQueue的回调本事就是数据播完了才回调的 Aud ...

  5. jquery取出checkbox多选的值(带全选功能)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  6. python字符串的魔法

    *首字母大写test="aslf"v=test.capitalize()print(v) *所有字母变成小写test="QWFDE"v=test.casefol ...

  7. How to find SPRO path by t-code name

    e.g:OB58 F1->Technical Information Find Table Name->V_T011 3.SM30 V_T011 Customizing Continue ...

  8. 安装pygame出现is not a supported wheel on this platform解决办法

    安装python库pygame时出现如下错误: 查看python的版本是否与之匹配,发现版本不匹配问题 例如1.我的python3.6是32位的,就只能安装cp36的:结果发现安装还是出现问题: 2. ...

  9. c#dev gridview 设置隔行换色等

    1:禁止gridview编辑 2:隔行换色 介绍一些常用的gridcontrol设置. 1.设置隔行变色.首先设置显示隔行变色,步骤:OptionsView-->EnableAppearance ...

  10. SELinux入门简介

    操作系统有两类访问控制:自主访问控制(DAC)和强制访问控制(MAC).标准Linux安全是一种DAC,SELinux为Linux增加了一个灵活的和可配置的的MAC. 进程启动时所拥有的权限就是运行此 ...