OpenDaylight не читает приветственное сообщение с устройства netconf - PullRequest
1 голос
/ 14 июня 2019

Используя APIExplorer, я попытался подключить устройство RESTCONF к Opendaylight.К сожалению, его приветственное сообщение не считывается в список возможностей.

У меня есть Opendaylight Neon, работающий со всеми функциями, в названии которых есть restconf или netconf.ОС Ubuntu 18.04.Для моделирования устройства netconf я использую netopeer2 из образа докера (benjaminsh / netopeer2).

Я уверен, что у меня правильный IP-адрес ODL, поскольку я могу подключаться и получать данные топологии.Кроме того, я уверен, что мое смоделированное устройство выдает сообщение приветствия, так как я вижу его, когда пытаюсь подключиться к нему по SSH.

Я запускаю контейнер докера с помощью этой команды:

sudo docker run -it --name netopeer2 -p 1831:830 --rm benjaminsh/netopeer2:latest

Я добавляю устройство netconf с помощью этой команды REST:

post /restconf/operations/netconf-node-topology:create-device 
    {
    "netconf-node-topology:input": {
    "netconf-node-topology:pass-through": {},
    "key-based": {
      "netconf-node-topology:key-id": "netconf",
      "netconf-node-topology:username": "netconf"
    },
    "netconf-node-topology:host": "192.168.56.2",
    "netconf-node-topology:port": "830",
    "netconf-node-topology:tcp-only": "false",
    "netconf-node-topology:reconnect-on-changed-schema": "false",
    "netconf-node-topology:connection-timeout-millis": "20000",
    "netconf-node-topology:max-connection-attempts": "0",
    "netconf-node-topology:between-attempts-timeout-millis": "2000",
    "netconf-node-topology:sleep-factor": "1.5",
    "netconf-node-topology:keepalive-delay": "120",
    "netconf-node-topology:node-id": "new-netconf-device"
      }
    }

После этого я пытаюсь получить доступ к возможностям из полученного приветственного сообщения с помощью этой команды REST:

get /restconf/config/network-topology:network-topology/topology/topology-netconf/node/new-netconf-device/netconf-node-topology:odl-hello-message-capabilities

Я ожидал увидеть возможности в odl-hello-message-capabilites, но он просто говорит о том, что контент модели данных не существует.

1 Ответ

1 голос
/ 14 июня 2019

Я нашел решение, которое хочу опубликовать в случае, если у кого-то еще есть подобная проблема:

При просмотре журнала в opendaylight я обнаружил, что при попытке подключения к приложению возникают ошибки приложения JAVA.устройство.Несмотря на то, что к данным добавляется соединитель netconf, он не способен к обмену данными.

В чем заключается хитрость, заключающаяся в том, чтобы сменить «key-auth» на «login-pw».Новая команда REST:

post /restconf/operations/netconf-node-topology:create-device 
{
  "netconf-node-topology:input": {
    "netconf-node-topology:pass-through": {},
    "login-password": {
      "netconf-node-topology:username": "netconf",
      "netconf-node-topology:password": "netconf"
    },
    "netconf-node-topology:host": "192.168.56.2",
    "netconf-node-topology:port": "1831",
    "netconf-node-topology:tcp-only": "false",
    "netconf-node-topology:reconnect-on-changed-schema": "false",
    "netconf-node-topology:connection-timeout-millis": "20000",
    "netconf-node-topology:max-connection-attempts": "0",
    "netconf-node-topology:between-attempts-timeout-millis": "2000",
    "netconf-node-topology:sleep-factor": "1.5",
    "netconf-node-topology:keepalive-delay": "120",
    "netconf-node-topology:node-id": "new-netconf-device"
  }
}

Возможности есть:

get /restconf/operational/network-topology:network-topology 
...