Date   

June LFN Virtual Developer & Testing Forum

Casey Cain
 

Dear LFN Communities,

We are looking forward to seeing you next week for the LFN Developer & Testing Forum on June 6th - 8th, 2023 Please remember to register for the event; it's free!  

The schedule is now available.  You can find further details about the sessions and speakers on the event wiki page.

Please note: Zoom account authentication will be required for this event. If you do not already have a Zoom account, you can obtain a free account by going to https://www.zoom.us. We know that authentication may present challenges for LFN community members in regions where the use of free accounts may be disallowed. If such geographic limitations impact you, please send an email to events@... in advance of the event for assistance.

The LFN Developer & Testing Forum will begin at 13:00 UTC each day, I've included the current schedule here - the schedule will be updated in real-time as session details are provided.

Join the LFN Tech Slack. Slack will be used for side discussions, hallway tracks, and track-related discussions.

Additional information regarding the event can be found on the LFN Wiki.

We are excited to see you soon.

Best,
Casey Cain
Senior Technical Community Architect
Linux Foundation
_________________
WeChat: okaru6
WhatsApp: +1.503.779.4519


Re: [tsc][release] OpenDaylight - Argon SR1 release status

Anil Belur
 

Greetings Daniel: The issue has been resolved. Please try refreshing the page and/or logging in with a new session on the browser.


On Wed, May 31, 2023 at 8:48 AM Daniel de la Rosa <ddelarosa0707@...> wrote:
Anil and Andrew, is there a LFN IT case open for ODL wiki authentication issue? I still haven't been able to log in

Thanks 

On Wed, May 24, 2023 at 10:59 PM Daniel de la Rosa via lists.opendaylight.org <ddelarosa0707=gmail.com@...> wrote:
Thanks Anil. As mentioned before, 1 and 2 are done already so all we have left to do is to update release notes and download page, 

On Tue, May 23, 2023 at 7:36 PM Anil Shashikumar Belur <abelur@...> wrote:
Hello All,

OpenDaylight Argon SR1 version bump is complete and the staging repository has been promoted. 

Pending activities required to be completed for the release:
1. Self-managed projects to release artifacts for Argon SR1.
2. Release Distribution once the 1. is complete.
3. Release notes.
4. Update the ODL downloads page.

Thanks to everyone who contributed to the Argon SR1 release.

Regards,
Anil Belur

[0.] https://docs.opendaylight.org/en/latest/downloads.html


Re: [tsc][release] OpenDaylight - Argon SR1 release status

Daniel de la Rosa
 

Anil and Andrew, is there a LFN IT case open for ODL wiki authentication issue? I still haven't been able to log in

Thanks 

On Wed, May 24, 2023 at 10:59 PM Daniel de la Rosa via lists.opendaylight.org <ddelarosa0707=gmail.com@...> wrote:

Thanks Anil. As mentioned before, 1 and 2 are done already so all we have left to do is to update release notes and download page, 

On Tue, May 23, 2023 at 7:36 PM Anil Shashikumar Belur <abelur@...> wrote:
Hello All,

OpenDaylight Argon SR1 version bump is complete and the staging repository has been promoted. 

Pending activities required to be completed for the release:
1. Self-managed projects to release artifacts for Argon SR1.
2. Release Distribution once the 1. is complete.
3. Release notes.
4. Update the ODL downloads page.

Thanks to everyone who contributed to the Argon SR1 release.

Regards,
Anil Belur

[0.] https://docs.opendaylight.org/en/latest/downloads.html


netconf 6 swagger changes

Ivan Hrasko
 

Hi, everyone,

as part of swagger improvements done in the NETCONF project. The development team has made some changes which will be available in 2023.09 Potassium release (NETCONF 6):
  1. swagger is now installed by feature:install odl-restconf-openapi
  2. swagger is now available at http://192.168.56.25:8181/openapi/explorer/index.html
  3. swagger code is moved into restconf-openapi package: https://github.com/opendaylight/netconf/tree/master/restconf/restconf-openapi
  4. swagger (open api spec v2) has been removed, now we are using OASv3 only
These changes are already present on the current main branch.

Best,
--

Ivan Hraško

Senior Software Engineer

 

PANTHEON .tech

Mlynské Nivy 56, 821 05 Bratislava

Slovakia

Tel / +421 220 665 111

 

MAIL / ivan.hrasko@...

WEB / https://pantheon.tech


Re: BGP-LS with newer ODL releases

Ivan Hrasko
 

Hi,

Since 2022.09 Chlorine the only available paths installed via odl-restcon-nb (RFC 8040) are as follows:

/restconf/config -> /rests/data/...?content=config
/restconf/operational -> /rests/data/...?content=nonconfig
/restconf/operation -> /rests/operations

In addition, there is a slight difference in keys usage, for example use this:
/rests/data/network-topology:network-topology/topology=topology-netconf?content=all
for netconf topology where "toplogy-netconf" is a topology key.

Old bierman restconf is no longer available to install in Chlorine, nor Argon.

I hope that helps,

--

Ivan Hraško

Senior Software Engineer

 

PANTHEON .tech

Mlynské Nivy 56, 821 05 Bratislava

Slovakia

Tel / +421 220 665 111

 

MAIL / ivan.hrasko@...

WEB / https://pantheon.tech


BGP-LS with newer ODL releases

tuxytux
 
Edited

Hi there,

I'm new to ODL but have been labbing a little bit with a BGP-LS use case. Basically, i have an OSPF area and the AS gateway (running ios xr) which runs both BGP and OSPF is announcing link-state routes.
I have gotten this use case to work with release release 0.7.0, following the documentation https://docs.opendaylight.org/projects/bgpcep/en/latest/bgp/index.html for refernce but using this guide
https://wiki.minet.net/sdn/opendaylight/bgpls for Silicon.

Now the problems start with the newer releases.
For example with 0.16. (Sulfur) which i dowloaded as a tarball, doesn't start listning on 1790 or 1791 after installing odl-bgpcep-bgp, not matter what i tried.

Using the docker image 0.18.0 (Argon) from https://hub.docker.com/r/opendaylight/opendaylight/tags , it's not listening either on BGP ports.

now for the main problem which concerns both Sulfur and Argon.
the URL:s and the corresonding data models that is used in the documentation don't seem to exist anymore. 
So another way would be not to use RESTCONF and instead use odl-bgpcep-bgp-config-example, which provides a template to start with. I see these files network-toplogy-bgp-config.xml , routing-policy-default-config.xml and protocols-config.xml in
/etc/opendaylight/bgpcep/ , but even then I don't see the data models being created. for example no network topology, no bgp rib.
Most importantly the only URL i can query is /rests/data which gives me back a data model corresponding to routing-policy-default-config.xml only. So the logical conclusion would be that installing odl-bgpcep-bgp-config-example is not doing anything.


Am i making some wrong assumptions here on how this should be setup? Currently, I can't find any BGPCEP documentation for sulfur or Argon releases. Searching the internet didn't give anything useful either.


Re: [tsc][release] OpenDaylight - Argon SR1 release status

Daniel de la Rosa
 

Thanks Anil. As mentioned before, 1 and 2 are done already so all we have left to do is to update release notes and download page, 


On Tue, May 23, 2023 at 7:36 PM Anil Shashikumar Belur <abelur@...> wrote:
Hello All,

OpenDaylight Argon SR1 version bump is complete and the staging repository has been promoted. 

Pending activities required to be completed for the release:
1. Self-managed projects to release artifacts for Argon SR1.
2. Release Distribution once the 1. is complete.
3. Release notes.
4. Update the ODL downloads page.

Thanks to everyone who contributed to the Argon SR1 release.

Regards,
Anil Belur

[0.] https://docs.opendaylight.org/en/latest/downloads.html


[tsc][release] OpenDaylight - Argon SR1 release status

Anil Belur
 

Hello All,

OpenDaylight Argon SR1 version bump is complete and the staging repository has been promoted. 

Pending activities required to be completed for the release:
1. Self-managed projects to release artifacts for Argon SR1.
2. Release Distribution once the 1. is complete.
3. Release notes.
4. Update the ODL downloads page.

Thanks to everyone who contributed to the Argon SR1 release.

Regards,
Anil Belur

[0.] https://docs.opendaylight.org/en/latest/downloads.html


Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

David Arjona
 

Hi Uriel,

I also started using ODL very recently and I do not know how to implement or install the functionality that Robert Varga sent us. Can anybody in this list give us a hint on how to use the code that Robert sent in his previous email?

Thanks,

David


Re: ODL distribution naming

Luis Gomez
 

Makes sense, I will take a look at your patches.

On May 4, 2023, at 1:18 AM, Ivan Hrasko <ivan.hrasko@...> wrote:

Thanks, Luis,

IMO it looks to be quite a huge change to use opendaylight instead of karaf in test and potentially in builder projects.
Thus I decided for option #2 for now: https://jira.opendaylight.org/browse/INTDIST-117.

Best,

--

Ivan Hraško

Senior Software Engineer

 

PANTHEON .tech

Mlynské Nivy 56, 821 05 Bratislava

Slovakia

Tel / +421 220 665 111

 

MAIL / ivan.hrasko@...

WEB / https://pantheon.tech



Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

ulopez@...
 

Hi David,

Do you know how install or include this functionality? I still don't know how to implement the learning switch function and I don't understand the logic behind the code in the link.

Regards,

Uriel


Re: ODL distribution naming

Ivan Hrasko
 

Thanks, Luis,

IMO it looks to be quite a huge change to use opendaylight instead of karaf in test and potentially in builder projects.
Thus I decided for option #2 for now: https://jira.opendaylight.org/browse/INTDIST-117.

Best,

--

Ivan Hraško

Senior Software Engineer

 

PANTHEON .tech

Mlynské Nivy 56, 821 05 Bratislava

Slovakia

Tel / +421 220 665 111

 

MAIL / ivan.hrasko@...

WEB / https://pantheon.tech


Re: ODL distribution naming

Luis Gomez
 

Hi Ivan,

Here are my thoughts on this topic:

- I agree opendaylight is better name than karaf for the opendaylight karaf distribution artifact.
- So far the karaf artifact = managed distribution generated by autorelease project vs the opendaylight artifact = self managed distribution manually generated when TPCE released.
- Going forward there is no point to maintain separated self managed distribution so this is why we reverted to use karaf artifact.
- The idea of simply renaming the karaf artifact to opendaylight seems straight forward except for the fact that the system test framework (JJB + robot) uses karaf artifact by default.

So in order to have opendaylight named distribution, I would do one of these:

1) Simply rename the karaf artifact as you say but make sure CSIT is ready for the new name. I believe there is some framework to use opendaylight vs karaf in CSIT but it needs to be tested:


2) If the above does not work or it is hard to change CSIT to use opendaylight name, I would keep karaf artifact for system test and I would generate extra opendaylight artifact in AR by simply moving the opendaylight module to the managed profile here:


Also in either case, if you want AR to produce the opendaylight distribution, you have to use original version schema: 0.X.Y vs X.Y.0 because AR only deals with the first AFAIR.

Let me know if you have questions.

BR/Luis




On May 3, 2023, at 8:16 AM, Ivan Hrasko <ivan.hrasko@...> wrote:

Hello,

Some time ago - ODL distributions were called opendaylight-<VERSION>, now they are karaf-<VERSION>.
This change is effective since transportpce is no longer a self-managed project.

In order to call them opendaylight again we have to run a build in "opendaylight" project.

In addition, IMO we could potentially remove the "opendaylight" project (there are no more self-managed projects) and rename the "karaf" project to "opendaylight".
Just to have a distro called opendaylight-<VERSION> again :D.

What do you think?

--

Ivan Hraško

Senior Software Engineer

 

PANTHEON .tech

Mlynské Nivy 56, 821 05 Bratislava

Slovakia

Tel / +421 220 665 111

 

MAIL / ivan.hrasko@...

WEB / https://pantheon.tech



ODL distribution naming

Ivan Hrasko
 

Hello,

Some time ago - ODL distributions were called opendaylight-<VERSION>, now they are karaf-<VERSION>.
This change is effective since transportpce is no longer a self-managed project.

In order to call them opendaylight again we have to run a build in "opendaylight" project.

In addition, IMO we could potentially remove the "opendaylight" project (there are no more self-managed projects) and rename the "karaf" project to "opendaylight".
Just to have a distro called opendaylight-<VERSION> again :D.

What do you think?

--

Ivan Hraško

Senior Software Engineer

 

PANTHEON .tech

Mlynské Nivy 56, 821 05 Bratislava

Slovakia

Tel / +421 220 665 111

 

MAIL / ivan.hrasko@...

WEB / https://pantheon.tech


Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

David Arjona
 

Hi Robert,

Thanks for the links to a learning switch. How do we install or include this functionality into an ODL controller?

Regards,

David


Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

Robert Varga
 

On 19/04/2023 08.40, ulopez@... wrote:
Hi David,
Thanks for your help, I think it's a good start to work with ODL by defining flows, so I can tell the switch to work normal. However, I don't understand how to define a learning switch, where it is the controller or the application that learns the relationship between the MACs and the in-port.
A learning switch example is here: https://github.com/opendaylight/openflowplugin/tree/master/samples/learning-switch

There is a more complete switch in a separate project here: https://github.com/opendaylight/l2switch/ but it has been long out of maintenance.

Regards,
Robert


Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

ulopez@...
 

I think what I need is to learn how to use the java API, but I have only found a very old example and I can't replicate it because I can't find the libraries it implements.
I don't know if anyone knows of a more current similar application that implements the latest version of the API.


Opendaylight Argon: Odl error via restconf #opendaylight-help-openflow #help

_
 

'm trying to connect several openflow OVS instances to OpenDayLight SDN.

My switches succesfully attached and I can get nodes info via RESTCONF like this /rests/data/opendaylight-inventory:nodes

But I can't get openflow table information via TABLE url. Official documentation says I can use restconf request like this: /rests/data/opendaylight-inventory:nodes/node=openflow:121062366427215/table=0

But I'm getting error

{
    "errors": {
        "error": [
            {
                "error-tag": "data-missing",
                "error-message": "Schema for '(urn:opendaylight:inventory?revision=2013-08-19)table' not found",
                "error-type": "protocol"
            }
        ]
    }
}

opendaylight version 4.4.2

Any help appreciated. Thanks


Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

ulopez@...
 

Hi David,

Thanks for your help, I think it's a good start to work with ODL by defining flows, so I can tell the switch to work normal. However, I don't understand how to define a learning switch, where it is the controller or the application that learns the relationship between the MACs and the in-port. 

For my objective I would need to be able to define actions on the arrival of a PacketIn. Defining at that moment flows and a PacketOut.

If anyone else has any other advice it would be of great help. Thanks.

Regards,

Uriel Lopez


Re: Opendaylight Argon: How can I manage an L2 network? #help #opendaylight-help-openflow #opendaylight

David Arjona
 

Hi,

What I did to emulate L2 networks, is to install JSON instructions at the controller, for each switch that I needed to test.

For example, to install a JSON file in an ODL controller with IP address 192.168.1.166, that commands to flood all packets received at port 1 of switch 2, use the following curl instruction:

curl -u admin:admin -X PUT -d "@s2_ping1.json" -H "Content-Type: application/json" http://192.168.1.166:8181/rests/data/opendaylight-inventory:nodes/node=openflow:2/flow-node-inventory:table=0/flow=201

where the "s2_ping1.json" file contains the following instructions:

{
    "flow": [
        {
            "table_id": "0",
            "id": "201",
            "priority": "1001",
            "match": {
                "in-port": "openflow:2:1"
            },
            "instructions": {
                "instruction": [
                    {
                        "order": 0,
                        "apply-actions": {
                            "action": [
                                {
                                    "order": 0,
                                    "output-action": {
                                        "output-node-connector": "FLOOD"
                                    }
                                }
                            ]
                        }
                    }
                ]
            }
        }
    ]
}

Similarly, the following instruction tells the controller that all packets received at port 2 of switch 1, will be forwarded to port 2:

curl -u admin:admin -X PUT -d "@s1_ping2.json" -H "Content-Type: application/json" http://192.168.1.166:8181/rests/data/opendaylight-inventory:nodes/node=openflow:1/flow-node-inventory:table=0/flow=102

where the "s1_ping2.json" file contains:

{
    "flow": [
        {
            "table_id": "0",
            "id": "102",
            "priority": "1002",
            "match": {
                "in-port": "openflow:1:2"
            },
            "instructions": {
                "instruction": [
                    {
                        "order": 0,
                        "apply-actions": {
                            "action": [
                                {
                                    "order": 0,
                                    "output-action": {
                                        "output-node-connector": "1"
                                    }
                                }
                            ]
                        }
                    }
                ]
            }
        }
    ]
}

This is the solution that worked for me. Since I am also new to ODL, I would like to know if there is an easier way to implement this functionality.

Regards,

David Arjona