Archived

This forum has been archived. Please start a new discussion on GitHub.

Issue with Iceregistry In a docker and Icegrid Node in windows

I am trying to use Icegrid solution for my deployement.

Iceregistry is running on a Docker machine. And IcegridNode in windows machine. basically i am able to connect to icegridregistry machine using the GUI. But when i try to register the icegridnode i get some exception.
Docker is running in the node machine itself.

regarding iceregistry,
I just added the iceregistry container and modified a bit in the config.
Config looks like this:

IceGrid.InstanceName=DemoIceGrid
IceGrid.Registry.Client.Endpoints=tcp -h 172.17.0.2 -p 4061
IceGrid.Registry.Server.Endpoints=tcp -h 172.17.0.2 -p 4062
IceGrid.Registry.Internal.Endpoints=tcp -h 172.17.0.2 -p 4063
#
# The registry DB home; must exist when icegridregistry starts
#
IceGrid.Registry.Data=/var/lib/ice/icegrid/registry
IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
#IceGrid.Registry.DefaultTemplates=/usr/share/Ice-3.6.2/templates.xml
#
# Logging to syslog
#
Ice.UseSyslog=0
Ice.ProgramName=icegridregistry (DemoIceGrid Master)
Ice.LogFile=/var/log/iceregistry.log
#IceGrid.Registry.Trace.Node=1
#IceGrid.Registry.Trace.Replica=1
#Just for debugging purpose
Ice.Trace.Network=2

Basically 172.17.0.2 is a IP of the registry machine

Docker ports are shown below:

4061/tcp    192.168.99.100:4061
4062/tcp    192.168.99.100:4062
4063/tcp    192.168.99.100:4063

When i connect using the GUI tool to

tcp -h 192.168.99.100 -p 4061

it looks like its getting connected and i see the below mentioned dynamic object.

Now When i try to register a node to the same registry i get below error
Ice::ObjectNotExistException:
object does not exist:
identity: `IceGrid/Locator'

the Node registry
#node configuration
IceGrid.Node.Endpoints=tcp -h 192.168.99.1 -p 21000
IceGrid.Node.Name=EDE
IceGrid.Node.Data=C:/EDE/node
IceGrid.Node.CollocateRegistry=0
Ice.Default.Locator=IceGrid/Locator:tcp -h 192.168.99.100 -p 4061

Ice.UseSyslog=0
Ice.LogFile=c:\log\icenode.log
#IceGrid.Registry.Trace.Node=1
#IceGrid.Registry.Trace.Replica=1
#Just for debugging purpose
Ice.Trace.Network=2

And the deployement xml(mentioning only 1 service here)

<icegrid>
   <application name="EDE">
      <node name="Node1">
         <icebox id="DL4Application-ice" activation="on-demand" exe="C:/Program Files (x86)/ZeroC/Ice-3.6.1/bin/vc140/x64/icebox" pwd="C:\EDE">
            <env>PATH=C:/Program Files (x86)/ZeroC/Ice-3.6.1/bin/vc140/x64;C:\EDE;%PATH%;$PATH;</env>
            <service name="Application" entry="blah blah">
               <properties>

                  <property name="TopicManager.Proxy" value="DemoIceStorm/TopicManager@IceStorm"/>
                  <property name="Ice.MessageSizeMax" value="0"/>
               </properties>
               <adapter name="Application" endpoints="tcp -p 21001" id="ApplicationAdapter"/>
            </service>
         </icebox>
 </node>
   </application>
</icegrid>

Windows machine has many IP's. One of them is 192.168.99.1. if i login to the iceregistry machine , i see the ip as 172.17.0.2. I am able to ping 192.168.99.1 from this machine.

Networklogs
Attached network log files. till 9:38 in the registry the logs are due to GUI.

what could be the issue here?. Do i need to set any port forwarding. How is GUI able to connect and not the node?

thanks in advance.

Tagged:

Comments

  • xdm
    xdm La Coruña, Spain

    Hi,

    Seems that Ice.Default.Locator in your node configuration is using the wrong identity, it should be DemoIceGrid\Locator instead of IceGrid\Locator

  • ooops!!

    thanks for the reply