Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>The essential thing for spreading REDHAWK components and devices across multiple machines is making sure that your CORBA communication works correctly between the machines. This usually amounts to configuring /etc/omniORB.cfg correctly. First, on one machine, you should have omniNames and omniEvents running, and setup your config per <a href="http://redhawksdr.github.io/Documentation/mainch2.html#x4-130002.6" rel="nofollow">section 2.6 of the documentation</a>. For reference:</p> <pre><code>InitRef = NameService=corbaname::127.0.0.1 InitRef = EventService=corbaloc::127.0.0.1:11169/omniEvents </code></pre> <p>On the second machine, your InitRef's must point to the first machine. If the first machine was 192.168.1.100, then your second machine's config could contain:</p> <pre><code>InitRef = NameService=corbaname::192.168.1.100 InitRef = EventService=corbaloc::192.168.1.100:11169/omniEvents </code></pre> <p>You should be able to verify this is working correctly on the second machine with:</p> <pre><code>$ nameclt list </code></pre> <p>The next issue you need to tackle is making sure that CORBA objects are listening on the appropriate network interfaces, and are publishing information in their IORs that allows them to be reached. In each of your config files, I recommend you add a line to tell omniORB what endpoint CORBA objects created on that machine should listen on. For example, on your first machine:</p> <pre><code>endPoint = giop:tcp:192.168.1.100: endPoint = giop:unix: </code></pre> <p>This tells omniORB that CORBA objects should listen on a TCP port of their choosing on 192.168.1.100. It also adds a Unix pipe for fast access by objects on the same machine. omniORB will publish this information in the IOR for that object. What you choose here is important - if you use an IP that other machines can't reach, or use a hostname that other machines can't resolve then CORBA connections will fail.</p> <p>After you've configured the endPoint setting on both machines, you may find it useful to inspect the information contained in your IORs. If you can access the naming service then you can retrieve IORs for your objects. For example, if you had a domain named 'REDHAWK_DEV' running, you can get the domain manager's IOR via:</p> <pre><code>$ nameclt resolve REDHAWK_DEV/REDHAWK_DEV </code></pre> <p>Then, feed the IOR to catior:</p> <pre><code>$ catior IOR:012345... </code></pre> <p>catior will decypher the IOR for you and show you what address and port a client would connect to.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload