[controller-dev] Health Checks to external network functions
Hi, Is there any project/plugin in ODL that its purpose is to conduct health checks ? I'm referring to the health of external machines that run network functions for example (firewalls, load balancers, content filtering, etc.). Health checks can be pings, load, generic scripts etc. In a real deployment, will you do those inside ODL? or use an external health tool that will notify status change to the ODL? Thanks, Guy Sela ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
On 09/19/2016 02:27 PM, Sela, Guy wrote: > So in order to get a snapshot of time > So could I theoretically do: > * DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY) > * Get the BI root. > * Extract the BI subtrees from the BI Root > * Convert the BI subtrees to BA subtrees using TPUtils-like code? > > Do you think this is the best way to get a snapshot of multiple subtrees? Or > is there a better solution? That is pretty much the only way to do it. Bye, Robert signature.asc Description: OpenPGP digital signature ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
So in order to get a snapshot of time So could I theoretically do: * DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY) * Get the BI root. * Extract the BI subtrees from the BI Root * Convert the BI subtrees to BA subtrees using TPUtils-like code? Do you think this is the best way to get a snapshot of multiple subtrees? Or is there a better solution? -Original Message- From: controller-dev-boun...@lists.opendaylight.org [mailto:controller-dev-boun...@lists.opendaylight.org] On Behalf Of Robert Varga Sent: Monday, September 19, 2016 2:45 PM To: Sela, Guy ; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering On 09/19/2016 12:20 PM, Sela, Guy wrote: > Oh I missed the fact you are talking about the new API that returns > NormalizedNode (BI). > I was referring to the old API: > org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction.rea > d(..) Top-level root is not representable in BA because it does not have a model hence it does not have a corresponding DataObject. Bye, Robert ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
On 09/19/2016 12:20 PM, Sela, Guy wrote: > Oh I missed the fact you are talking about the new API that returns > NormalizedNode (BI). > I was referring to the old API: > org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction.read(..) Top-level root is not representable in BA because it does not have a model hence it does not have a corresponding DataObject. Bye, Robert signature.asc Description: OpenPGP digital signature ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
Oh I missed the fact you are talking about the new API that returns NormalizedNode (BI). I was referring to the old API: org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction.read(..) -Original Message- From: Sela, Guy Sent: Monday, September 19, 2016 12:50 PM To: 'Robert Varga' ; Tom Pantelis Cc: controller-dev Subject: RE: [controller-dev] [documentation] Questions about ODL clustering If they don't have a joint root in BA world, what can I do with the value returned from issuing DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY)? It is a BA value, no a BI value. Am I missing something? -Original Message- From: Robert Varga [mailto:n...@hq.sk] Sent: Monday, September 19, 2016 12:24 PM To: Sela, Guy ; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering On 09/19/2016 11:13 AM, Sela, Guy wrote: > Do all of them have a joint root? (YangInstanceIdentifier.EMPTY)? In BI world they do. In BA world they do not. > Will issuing DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY) > provide me a snapshot of all? > Sounds like it can't work in a Clustered Data Store, because the reads are > not from the local replica. CDS does recognize the query and assembles the information from all shards -- otherwise RESTCONF would not work. Bye, Robert ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
If they don't have a joint root in BA world, what can I do with the value returned from issuing DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY)? It is a BA value, no a BI value. Am I missing something? -Original Message- From: Robert Varga [mailto:n...@hq.sk] Sent: Monday, September 19, 2016 12:24 PM To: Sela, Guy ; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering On 09/19/2016 11:13 AM, Sela, Guy wrote: > Do all of them have a joint root? (YangInstanceIdentifier.EMPTY)? In BI world they do. In BA world they do not. > Will issuing DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY) > provide me a snapshot of all? > Sounds like it can't work in a Clustered Data Store, because the reads are > not from the local replica. CDS does recognize the query and assembles the information from all shards -- otherwise RESTCONF would not work. Bye, Robert ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
On 09/19/2016 11:13 AM, Sela, Guy wrote: > Do all of them have a joint root? (YangInstanceIdentifier.EMPTY)? In BI world they do. In BA world they do not. > Will issuing DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY) > provide me a snapshot of all? > Sounds like it can't work in a Clustered Data Store, because the reads are > not from the local replica. CDS does recognize the query and assembles the information from all shards -- otherwise RESTCONF would not work. Bye, Robert signature.asc Description: OpenPGP digital signature ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
When saying specific data tree I mean like "inventory data model", "topology data model", "netvirt data model", etc. Am I mistakenly using the term "data tree" instead of "sub tree"? Do all of them have a joint root? (YangInstanceIdentifier.EMPTY)? Will issuing DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY) provide me a snapshot of all? Sounds like it can't work in a Clustered Data Store, because the reads are not from the local replica. -Original Message- From: controller-dev-boun...@lists.opendaylight.org [mailto:controller-dev-boun...@lists.opendaylight.org] On Behalf Of Robert Varga Sent: Monday, September 19, 2016 11:26 AM To: Sela, Guy ; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering On 09/18/2016 02:28 PM, Sela, Guy wrote: > What I mean is to be able to create a snapshot of the entire state and not > only a specific data tree. Do you by 'specific data tree' mean 'specific subtree'? We do not guarantee consistency across shards, but you can read all shards by issuing a DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY). Bye, Robert ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
On 09/18/2016 02:24 PM, Sela, Guy wrote: > Are there any plans to do something regarding snapshots that resembles > Snapshot Isolation in a DB? All current shard/data store implementations are based on InMemoryDataTree, which features MVCC-based full snapshot isolation.. Bye, Robert signature.asc Description: OpenPGP digital signature ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
On 09/18/2016 02:28 PM, Sela, Guy wrote: > What I mean is to be able to create a snapshot of the entire state and not > only a specific data tree. Do you by 'specific data tree' mean 'specific subtree'? We do not guarantee consistency across shards, but you can read all shards by issuing a DOMDataReadTransaction.read(YangInstanceIdentifier.EMPTY). Bye, Robert signature.asc Description: OpenPGP digital signature ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev
Re: [controller-dev] [documentation] Questions about ODL clustering
Thanks for the explanations. Really good explanation in the mail threads. I feel like you missed the part of my question (Or maybe I didn't understand the answer) about Full Snapshot. I'll compare to a DB. In an SqlServer I can run: " ALTER DATABASE MyDatabase SET ALLOW_SNAPSHOT_ISOLATION ON " This will mean that if I have 5 different tables, when starting a transaction, I get a full snapshot of all five. I am looking for the equivalent in MD-SAL. Not only a snapshot of one data tree, but a snapshot of all data trees for a given point of time. When you said: "Transactions do take snapshots but they are inmemory" Do you mean a snapshot of all the data trees? Or the specific one you read from? -Original Message- From: Muthukumaran K [mailto:muthukumara...@ericsson.com] Sent: Monday, September 19, 2016 8:15 AM To: Sela, Guy ; Robert Varga ; Tom Pantelis Cc: controller-dev Subject: RE: [controller-dev] [documentation] Questions about ODL clustering Hi Guy, There is a jmx operation (can be invoked via JConsole) to dump the snapshot on demand on per shard basis for config DS shards. Transactions do take snapshots but they are inmemory. As you surmise, transaction-level snapshotting is "Isolation" part of ACID. A good explanation was given by Robert in following mail threads https://lists.opendaylight.org/pipermail/controller-dev/2016-July/012298.html https://lists.opendaylight.org/pipermail/controller-dev/2016-July/012331.html Regards Muthu -Original Message- From: controller-dev-boun...@lists.opendaylight.org [mailto:controller-dev-boun...@lists.opendaylight.org] On Behalf Of Sela, Guy Sent: Sunday, September 18, 2016 5:59 PM To: Robert Varga; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering What I mean is to be able to create a snapshot of the entire state and not only a specific data tree. -Original Message- From: controller-dev-boun...@lists.opendaylight.org [mailto:controller-dev-boun...@lists.opendaylight.org] On Behalf Of Sela, Guy Sent: Sunday, September 18, 2016 3:25 PM To: Robert Varga ; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering Thanks. Are there any plans to do something regarding snapshots that resembles Snapshot Isolation in a DB? For example: https://msdn.microsoft.com/en-us/library/tcbchxcb(v=vs.110).aspx -Original Message- From: controller-dev-boun...@lists.opendaylight.org [mailto:controller-dev-boun...@lists.opendaylight.org] On Behalf Of Robert Varga Sent: Sunday, September 18, 2016 1:28 PM To: Sela, Guy ; Tom Pantelis Cc: controller-dev Subject: Re: [controller-dev] [documentation] Questions about ODL clustering On 09/15/2016 05:17 PM, Sela, Guy wrote: > ReadOnlyTransaction tx = db.newReadOnlyTransaction(); > > CheckedFuture, ReadFailedException> read1 = > tx.read(X, Y) > > CheckedFuture, ReadFailedException> read2 = > tx.read(Z, H) > > > > read1 and read2 were read from different snapshots? > > Does the answer change if they were invoked on the same/different data > trees? > If both reads target the same shard, they will be executed from the same snapshot. Bye, Robert ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev ___ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev