Opendaylight - Как контролировать, какие данные попадают в какой осколок - PullRequest
0 голосов
/ 11 сентября 2018

Я занимаюсь разработкой приложения, которое принимает некоторые входные данные, запускает некоторый алгоритм и на основании результата устанавливается соединение с сервером Netconf с использованием Opendaylight. Я следую Руководству пользователя ODL Netconf, и все работает хорошо.

Это один из моих модулей ян:

module openroadm-config {
namespace "urn:opendaylight:openroadm-config";
prefix "openroadm-config";

import device-cluster { prefix device-cluster; revision-date 2017-01-08; }
import ietf-yang-types { prefix ietf-yang-types; revision-date 2013-07-15; }
import ietf-inet-types { prefix ietf-inet-types; revision-date 2013-07-15; }
import ietf-netconf { prefix ietf-nc; revision-date 2011-06-01; }
import org-openroadm-common-types { prefix org-openroadm-common-types; revision-date 2017-09-29; }
import org-openroadm-resource-types { prefix org-openroadm-resource-types; revision-date 2017-09-29; }
import org-openroadm-physical-types { prefix org-openroadm-physical-types; revision-date 2017-09-29; }
import org-openroadm-user-mgmt { prefix org-openroadm-user-mgmt; revision-date 2017-09-29; }
import org-openroadm-port-types { prefix org-openroadm-port-types; revision-date 2017-09-29; }
import org-openroadm-interfaces { prefix org-openroadm-interfaces; revision-date 2017-06-26; }
import org-openroadm-swdl { prefix org-openroadm-swdl; revision-date 2017-09-29; }
import org-openroadm-equipment-states-types { prefix org-openroadm-equipment-states-types; revision-date 2017-06-26; }
import org-openroadm-device { prefix org-openroadm-device; revision-date 2017-09-29; }

revision 2018-04-12 {
    description "Initial revision";
}

grouping openroadm-device-common-details {
    uses org-openroadm-device:device-common;

    leaf max-degrees {
        config false;
        type uint16;
        description
                    "Max. number of degrees supported by device";
    }

    leaf max-srgs {
        config false;
        type uint16;
        description
                    "Max. number of SRGs in an add/drop group";
    }

    leaf max-num-bin-15min-historical-pm {
        config false;
        type uint16;
        description
                    "Max. number of bin the NE support for 15min historical PM";
    }

    leaf max-num-bin-24hour-historical-pm {
        config false;
        type uint16;
        description
                    "Max. number of bin the NE support for 24hour historical PM";
    }
}

grouping openroadm-list {

    list openroadm-device-list {
        key node-id;
        uses openroadm-device-common-details;
    }

}

container openroadm-device-list-container {
    uses openroadm-list;
}

container openroadm-data {
    uses openroadm-device-common-details;
}

rpc openroadm-set {
    input {
        uses openroadm-list;
    }
    output {
        uses device-cluster:rpc-response-status;
    }
}

rpc openroadm-get {
    input {
        list openroadm-ids {
            key openroadm-device-id;
            leaf openroadm-device-id {
                description "The openroadm device id";
                type string;
            }
        }
    }
    output {
        uses openroadm-list;
    }
}

}

По умолчанию в opendaylight - 4 сегмента по умолчанию, тостер, инвентарь и топология, и 2 хранилища данных - в рабочем состоянии и конфигурации. Вся информация, связанная с топологией, например учетные данные соединителя Netconf, хранятся в сегменте топологии (я полагаю).

У меня вопрос: в каком шарде хранятся данные, определенные в моем приложении? Можно ли контролировать осколок, в который попадают мои данные? Если да, как это можно сделать? Это связано с пространством имен, определенным в моем файле ян?

1 Ответ

0 голосов
/ 11 сентября 2018

Ваши данные хранятся в шарде по умолчанию.Разделение контролируется пространством имен модуля yang - см. Файлы конфигурации / initial / modules.conf и config / initial / module-shards.conf.Любой модуль ян, не помещенный в отдельный осколок, помещается в осколок по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...