opendaylight:如何查看配置数据库

opendaylight: How to view config database

我正在使用 OpenDaylight Carbon 版本和 openflow 插件。我正在编写代码来安装流程。流被写入 MDSAL 并由 Southbound 插件获取和安装。我想查看交换机的配置数据库中的内容。我怎样才能做到这一点?谢谢。

使用 MDSAL Openflow 插件(以及总体上的一般 MDSAL 使用),流程将写入配置数据存储(这实际上是您想要的意图),然后如果这些流程连接了交换机,则流程将被写入交换机和操作数据存储(这是存储结果的地方)。

假设您正在使用 OVS 并将管理器和控制器设置为 Opendaylight,您可以按如下方式查询配置和操作数据存储中的流:

获取 OVS 数据路径 ID: (在下面的查询中需要)

curl -H "Content-Type: application/json" -X GET --user admin:admin http://localhost:8181/restconf/config/opendaylight-inventory:nodes/ | python -m json.tool | grep "openflow:"

                "id": "openflow:156930464280132",
                        "id": "openflow:156930464280132:1",
                        "id": "openflow:156930464280132:LOCAL",

查询配置数据存储中的流:

curl -H "Content-Type: application/json" -X GET --user admin:admin http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:156930464280132 | python -m json.tool

查询操作数据存储中的流:

curl -H "Content-Type: application/json" -X GET --user admin:admin http://localhost:8181/restconf/operational/opendaylight-inventory:nodes/node/openflow:156930464280132 | python -m json.tool

注意,您可以使用 URL 详细了解特定 table 中的流,例如,执行此操作以获得 table 4 个流:

curl -H "Content-Type: application/json" -X GET --user admin:admin http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:156930464280132/table/4 | python -m json.tool

另请注意,使用 "python -m json.tool" 格式化输出,因此它不会全部在一行中。不强制使用。