Cloudy in client node
From Guifi.net - English Wiki
Cloudy uses a system to publish and search services, to share them with the other Cloudys. For this purpose, actually Serf is used.
This software opens a TCP port in the server (Cloudy) to listen to petitions and to be able to communicate to others.
Therefore, some additional steps are needed to allow a Cloudy installed in a client node to interact to other Cloudys:
1. Know the node’s public IP address (10.x.x.x); not the one assigned to Cloudy but the IP assigned to the client node.
- You can go to the Guifi page of your node to know what is its IP.
2. Edit a couple of files and declare the public IP of the node. You have to add the IP in the configuration files in order to allow the software to announce correctly the public IP instead the private IP.
- To do it, with the root user, write in the command line the following:
root@cloudy:~# echo "ADVERTISE_IP=10.x.x.x" >> /etc/avahi-ps-serf.conf root@cloudy:~# echo "PUBLIC_IP=10.x.x.x" >> /etc/getinconf-client.conf root@cloudy:~# /etc/init.d/serf restart (where 10.x.x.x is the public IP of your node)
Exemple: in a node with IP address 10.1.2.3 the files should be like this:
/etc/avahi-ps-serf.conf SERF_RPC_ADDR=127.0.0.1:7373 SERF_BIND=5000 SERF_JOIN=10.139.40.82:5000 ADVERTISE_IP=10.1.2.3 /etc/getinconf-client.conf #!/bin/sh # Automatically generate file GTC_SERVER_URL=http://10.139.40.84/index.php NETWORK_NAME=demo NETWORK_KEY=demo INTERNAL_DEV=eth0 # PORT=665 # GETINCONF_IGNORE=1 GETINCONF_IGNORE=1 PUBLIC_IP=10.1.2.3
3. Do a port forwarding for the port 5000 (Serf). And if you want more services you will have to redirect (forward) the port of each service.
- The configuration to do that depends on the device you have.