]> git.proxmox.com Git - ovs.git/blob - ovn/ovn-nb.ovsschema
ovn: add rbac tables to ovn southbound schema
[ovs.git] / ovn / ovn-nb.ovsschema
1 {
2 "name": "OVN_Northbound",
3 "version": "5.6.0",
4 "cksum": "2552205612 15123",
5 "tables": {
6 "NB_Global": {
7 "columns": {
8 "nb_cfg": {"type": {"key": "integer"}},
9 "sb_cfg": {"type": {"key": "integer"}},
10 "hv_cfg": {"type": {"key": "integer"}},
11 "external_ids": {
12 "type": {"key": "string", "value": "string",
13 "min": 0, "max": "unlimited"}},
14 "connections": {
15 "type": {"key": {"type": "uuid",
16 "refTable": "Connection"},
17 "min": 0,
18 "max": "unlimited"}},
19 "ssl": {
20 "type": {"key": {"type": "uuid",
21 "refTable": "SSL"},
22 "min": 0, "max": 1}}},
23 "maxRows": 1,
24 "isRoot": true},
25 "Logical_Switch": {
26 "columns": {
27 "name": {"type": "string"},
28 "ports": {"type": {"key": {"type": "uuid",
29 "refTable": "Logical_Switch_Port",
30 "refType": "strong"},
31 "min": 0,
32 "max": "unlimited"}},
33 "acls": {"type": {"key": {"type": "uuid",
34 "refTable": "ACL",
35 "refType": "strong"},
36 "min": 0,
37 "max": "unlimited"}},
38 "qos_rules": {"type": {"key": {"type": "uuid",
39 "refTable": "QoS",
40 "refType": "strong"},
41 "min": 0,
42 "max": "unlimited"}},
43 "load_balancer": {"type": {"key": {"type": "uuid",
44 "refTable": "Load_Balancer",
45 "refType": "strong"},
46 "min": 0,
47 "max": "unlimited"}},
48 "dns_records": {"type": {"key": {"type": "uuid",
49 "refTable": "DNS",
50 "refType": "weak"},
51 "min": 0,
52 "max": "unlimited"}},
53 "other_config": {
54 "type": {"key": "string", "value": "string",
55 "min": 0, "max": "unlimited"}},
56 "external_ids": {
57 "type": {"key": "string", "value": "string",
58 "min": 0, "max": "unlimited"}}},
59 "isRoot": true},
60 "Logical_Switch_Port": {
61 "columns": {
62 "name": {"type": "string"},
63 "type": {"type": "string"},
64 "options": {
65 "type": {"key": "string",
66 "value": "string",
67 "min": 0,
68 "max": "unlimited"}},
69 "parent_name": {"type": {"key": "string", "min": 0, "max": 1}},
70 "tag_request": {
71 "type": {"key": {"type": "integer",
72 "minInteger": 0,
73 "maxInteger": 4095},
74 "min": 0, "max": 1}},
75 "tag": {
76 "type": {"key": {"type": "integer",
77 "minInteger": 1,
78 "maxInteger": 4095},
79 "min": 0, "max": 1}},
80 "addresses": {"type": {"key": "string",
81 "min": 0,
82 "max": "unlimited"}},
83 "dynamic_addresses": {"type": {"key": "string",
84 "min": 0,
85 "max": 1}},
86 "port_security": {"type": {"key": "string",
87 "min": 0,
88 "max": "unlimited"}},
89 "up": {"type": {"key": "boolean", "min": 0, "max": 1}},
90 "enabled": {"type": {"key": "boolean", "min": 0, "max": 1}},
91 "dhcpv4_options": {"type": {"key": {"type": "uuid",
92 "refTable": "DHCP_Options",
93 "refType": "weak"},
94 "min": 0,
95 "max": 1}},
96 "dhcpv6_options": {"type": {"key": {"type": "uuid",
97 "refTable": "DHCP_Options",
98 "refType": "weak"},
99 "min": 0,
100 "max": 1}},
101 "external_ids": {
102 "type": {"key": "string", "value": "string",
103 "min": 0, "max": "unlimited"}}},
104 "indexes": [["name"]],
105 "isRoot": false},
106 "Address_Set": {
107 "columns": {
108 "name": {"type": "string"},
109 "addresses": {"type": {"key": "string",
110 "min": 0,
111 "max": "unlimited"}},
112 "external_ids": {
113 "type": {"key": "string", "value": "string",
114 "min": 0, "max": "unlimited"}}},
115 "indexes": [["name"]],
116 "isRoot": true},
117 "Load_Balancer": {
118 "columns": {
119 "name": {"type": "string"},
120 "vips": {
121 "type": {"key": "string", "value": "string",
122 "min": 0, "max": "unlimited"}},
123 "protocol": {
124 "type": {"key": {"type": "string",
125 "enum": ["set", ["tcp", "udp"]]},
126 "min": 0, "max": 1}},
127 "external_ids": {
128 "type": {"key": "string", "value": "string",
129 "min": 0, "max": "unlimited"}}},
130 "isRoot": true},
131 "ACL": {
132 "columns": {
133 "priority": {"type": {"key": {"type": "integer",
134 "minInteger": 0,
135 "maxInteger": 32767}}},
136 "direction": {"type": {"key": {"type": "string",
137 "enum": ["set", ["from-lport", "to-lport"]]}}},
138 "match": {"type": "string"},
139 "action": {"type": {"key": {"type": "string",
140 "enum": ["set", ["allow", "allow-related", "drop", "reject"]]}}},
141 "log": {"type": "boolean"},
142 "external_ids": {
143 "type": {"key": "string", "value": "string",
144 "min": 0, "max": "unlimited"}}},
145 "isRoot": false},
146 "QoS": {
147 "columns": {
148 "priority": {"type": {"key": {"type": "integer",
149 "minInteger": 0,
150 "maxInteger": 32767}}},
151 "direction": {"type": {"key": {"type": "string",
152 "enum": ["set", ["from-lport", "to-lport"]]}}},
153 "match": {"type": "string"},
154 "action": {"type": {"key": {"type": "string",
155 "enum": ["set", ["dscp"]]},
156 "value": {"type": "integer",
157 "minInteger": 0,
158 "maxInteger": 63}}},
159 "external_ids": {
160 "type": {"key": "string", "value": "string",
161 "min": 0, "max": "unlimited"}}},
162 "isRoot": false},
163 "Logical_Router": {
164 "columns": {
165 "name": {"type": "string"},
166 "ports": {"type": {"key": {"type": "uuid",
167 "refTable": "Logical_Router_Port",
168 "refType": "strong"},
169 "min": 0,
170 "max": "unlimited"}},
171 "static_routes": {"type": {"key": {"type": "uuid",
172 "refTable": "Logical_Router_Static_Route",
173 "refType": "strong"},
174 "min": 0,
175 "max": "unlimited"}},
176 "enabled": {"type": {"key": "boolean", "min": 0, "max": 1}},
177 "nat": {"type": {"key": {"type": "uuid",
178 "refTable": "NAT",
179 "refType": "strong"},
180 "min": 0,
181 "max": "unlimited"}},
182 "load_balancer": {"type": {"key": {"type": "uuid",
183 "refTable": "Load_Balancer",
184 "refType": "strong"},
185 "min": 0,
186 "max": "unlimited"}},
187 "options": {
188 "type": {"key": "string",
189 "value": "string",
190 "min": 0,
191 "max": "unlimited"}},
192 "external_ids": {
193 "type": {"key": "string", "value": "string",
194 "min": 0, "max": "unlimited"}}},
195 "isRoot": true},
196 "Logical_Router_Port": {
197 "columns": {
198 "name": {"type": "string"},
199 "options": {
200 "type": {"key": "string",
201 "value": "string",
202 "min": 0,
203 "max": "unlimited"}},
204 "networks": {"type": {"key": "string",
205 "min": 1,
206 "max": "unlimited"}},
207 "mac": {"type": "string"},
208 "peer": {"type": {"key": "string", "min": 0, "max": 1}},
209 "enabled": {"type": {"key": "boolean", "min": 0, "max": 1}},
210 "external_ids": {
211 "type": {"key": "string", "value": "string",
212 "min": 0, "max": "unlimited"}}},
213 "indexes": [["name"]],
214 "isRoot": false},
215 "Logical_Router_Static_Route": {
216 "columns": {
217 "ip_prefix": {"type": "string"},
218 "policy": {"type": {"key": {"type": "string",
219 "enum": ["set", ["src-ip",
220 "dst-ip"]]},
221 "min": 0, "max": 1}},
222 "nexthop": {"type": "string"},
223 "output_port": {"type": {"key": "string", "min": 0, "max": 1}}},
224 "isRoot": false},
225 "NAT": {
226 "columns": {
227 "external_ip": {"type": "string"},
228 "external_mac": {"type": {"key": "string",
229 "min": 0, "max": 1}},
230 "logical_ip": {"type": "string"},
231 "logical_port": {"type": {"key": "string",
232 "min": 0, "max": 1}},
233 "type": {"type": {"key": {"type": "string",
234 "enum": ["set", ["dnat",
235 "snat",
236 "dnat_and_snat"
237 ]]}}}},
238 "isRoot": false},
239 "DHCP_Options": {
240 "columns": {
241 "cidr": {"type": "string"},
242 "options": {"type": {"key": "string", "value": "string",
243 "min": 0, "max": "unlimited"}},
244 "external_ids": {
245 "type": {"key": "string", "value": "string",
246 "min": 0, "max": "unlimited"}}},
247 "isRoot": true},
248 "Connection": {
249 "columns": {
250 "target": {"type": "string"},
251 "max_backoff": {"type": {"key": {"type": "integer",
252 "minInteger": 1000},
253 "min": 0,
254 "max": 1}},
255 "inactivity_probe": {"type": {"key": "integer",
256 "min": 0,
257 "max": 1}},
258 "other_config": {"type": {"key": "string",
259 "value": "string",
260 "min": 0,
261 "max": "unlimited"}},
262 "external_ids": {"type": {"key": "string",
263 "value": "string",
264 "min": 0,
265 "max": "unlimited"}},
266 "is_connected": {"type": "boolean", "ephemeral": true},
267 "status": {"type": {"key": "string",
268 "value": "string",
269 "min": 0,
270 "max": "unlimited"},
271 "ephemeral": true}},
272 "indexes": [["target"]]},
273 "DNS": {
274 "columns": {
275 "records": {"type": {"key": "string",
276 "value": "string",
277 "min": 0,
278 "max": "unlimited"}},
279 "external_ids": {"type": {"key": "string",
280 "value": "string",
281 "min": 0,
282 "max": "unlimited"}}},
283 "isRoot": true},
284 "SSL": {
285 "columns": {
286 "private_key": {"type": "string"},
287 "certificate": {"type": "string"},
288 "ca_cert": {"type": "string"},
289 "bootstrap_ca_cert": {"type": "boolean"},
290 "ssl_protocols": {"type": "string"},
291 "ssl_ciphers": {"type": "string"},
292 "external_ids": {"type": {"key": "string",
293 "value": "string",
294 "min": 0,
295 "max": "unlimited"}}},
296 "maxRows": 1}}}