Multiple IPFS peers on the same machine - ipfs

I am trying to setup multiple IPFS peers on the same Windows machine, in order to test file sharing and pubsub service.
I have created a different .ipfs folder for each peer, that is .ipfs1, .ipfs2.
In each config file i have replaced the ports 4001, 5001 and 8080 to not overlap.
So when i want to run all the daemons at the same time i open 2 console windows and input in each one:
set IPFS_PATH=C:\Users\MyName\.ipfsX (X = the peer number)
ipfs daemon --enable-pubsub-experiment
When i want to execute commands in a specific peer i open a new console window and type:
set IPFS_PATH=C:\Users\MyName\.ipfsX (X = the peer number)
cmd
So let's get to the problem. I want to run 2 peers, subscribe both to the same pubsub channel and exchange messages.
I have 6 open console windows, 3 for each peer:
1 for the running daemon
1 for executing sub and listening for messages
1 for inputing commands
The issue is that when i send a pubsub message, only the same peer receives it.
Only Peer1 listens to messages created by Peer1, etc.
Is there something wrong with my multi-peer setup? Any help would be appreciated.

A better approach is to use docker or VMs, the setup you described is very likely to cause issues. Try doing ipfs swarm peers to see if your nodes are connected to any of the peers.

Related

Waiting for enough suitable peers before syncing

I am running an ethereum node on Windows 11. I am using Geth for my execution client along with Prysm for my consensus client. They have been syncing for the past two days but no data is being written to my hard drive by Geth and no progress is being made towards a working ethereum node.
I installed Geth through the download page.
I installed Prysm with this command in an administrative Git Bash in the Prysm directory;
curl https://raw.githubusercontent.com/prysmaticlabs/prysm/master/prysm.bat --output prysm.bat
I run both Geth and Prysm in separate administrative command prompts.
This is the command I use to start Geth;
geth --datadir D:\ethereum --authrpc.addr localhost --authrpc.port 8551 --authrpc.vhosts localhost --authrpc.jwtsecret jwt.hex
This is the command I use to start Prysm;
prysm.bat beacon-chain --execution-endpoint=http://localhost:8551 --jwt-secret=jwt.hex --suggested-fee-recipient=0x01234567722E6b0000012BFEBf6177F1D2e9758D9
I always start Prysm after starting Geth.
My Geth terminal repeats the message "Beacon client online, but never received consensus updates. Please ensure your client is operational to follow the chain"
My Prysm terminal commonly displays messages such as
←[90m[2023-01-17 20:30:44]←[0m ←[32m INFO←[0m←[36m initial-sync:←[0m Waiting for enough suitable peers before syncing ←[32mrequired←[0m=3 ←[32msuitable←[0m=0
Below are screenshots of my Geth and Prysm terminals.
Geth terminal
Prysm terminal
Why is Geth not writing any data? My friend who has a working node says it should write about 800gb.
If your node does not find any peers in the peer-to-peer network, it cannot download any data and sync.
This is usually a sign of a local network issue. Make sure your node has a public IP address or has properly exposed ports to Internet. Preferably any computer in Internet should be able to connect to your computer running Prysm.
See the documentation here.

How to configure interactive web terminal on docker+machine GitLab runners?

I've added the following configuration to the runner toml config:
[session_server]
listen_address = "[::]:8093" # listen on all available interfaces on port 8093
advertise_address = "runner-host-name.tld:8093"
session_timeout = 1800
The manager instance and workers are running in the same VPC on AWS. I have put the manager's private IP address in the advertise_address option. This address and port are reachable from worker machines. But when I click on the Debug button in the job, it opened the debug page with the black rectangle and nothing more, no shell appears in it. No errors or warnings related to the session server connectivity in the job log. What I'm doing wrong?

My ipfs node have zero peers connected, when i am connected to my home network 0 peers and with cellular data to my computer the node works fine

My ipfs node can't connect to other peers, i have the latest go-ipfs 0.8.0 and ipfs desktop 0.15.0, peers count is zero.
My ipfs node have zero peers connected, when i am connected to my home network 0 peers and with cellular data to my computer the node works fine.
I believe you've been bitten by go-ipfs#8120.
Currently the solution is simply to do these steps to get peering rolling again. In IPFS Desktop:
Select peers on the left sidebar
Select "+ Add Connection" in the upper-right corner
In the popup field paste the following: /ip4/149.56.89.144/tcp/4001/p2p/12D3KooWDiybBBYDvEEJQmNEp1yJeTgVr6mMgxqDrm9Gi8AKeNww
That will add a peer to the peer table and allow the IPFS daemon to start properly with a swarm of peer connections.
Credits to ppmSilver for the answer.

Exception occurred while flushing email queue on Ionos virtual cloud server

I have a Symfony 4 application running on 1und1 on a package called "1&1 Unlimited Plus". The SMTP config looks like this:
MAILER_URL=smtp://smtp.1and1.com?username=****&password=******
and it works fine. I also have a development copy of this application on my local dev server with same config. This dev copy can send emails, too.
Since the databases on "1&1 Unlimited Plus" are limited to 1GB, I ordered another cloud server from Ionos. With the same config I am not able to send emails. I got this error in dev.log:
Exception occurred while flushing email queue: Connection could not be established with host smtp.1and1.com [Connection timed out #110]
Ping on smtp.1and1.com works, it reveals the same IP like if I ping on my dev server. On this cloud server I have running:
Plesk Onyx
Ubuntu 18.04.2 LTS‬
DNS turned off. I have just an A-record on the origin server to the IP of cloud server. NO MX-records set.
I checked the firewall rules. No outgoing limits found, just incoming. I added TCP 25 to incoming rules but I dont know if it is necessary.
I tried another ports but then I got this:
Exception occurred while flushing email queue: Expected response code 220 but got an empty response []
More config:
swiftmailer:
url: '%env(MAILER_URL)%'
spool: { type: 'memory' }
Any idea whats wrong?
I found the solution. Ionos closes the outgoing port 25 per default. This is nothing I can find or change in admin area, only technical support can open this port.

How to configure a new host and virtual machine on opennebula?

We're using OpenNebula to simulate a simple replicated JBoss application.
We've installed all opennebula packages, qemu and kvm and libvirt.
We have created a simple ethernet network ad hoc between my pc (a node) and the one of my friend (which is both node and front-end) by plugging an ethernet cable between me and him (10.0.0.1 and 10.0.0.2).
So we can ping each other correctly, we've set everything to that we can ssh without a password to each other with "oneadmin" user.
We've configured all files such as below:
/etc/libvirt/libvirtd.conf
/etc/default/libvirtd-bin
And so on...
kvm and kvm-intel are both enabled.
The daemon
libvirtd -d -l
seems to start correctly.
In fact, from the gui of opennebula in the front end, we can see both the hosts monitored.
Anyway there's a problem when we try to start the virtual machine on the node which is not the front-end. I mean when we try to do a deploy of a VM on the other node. The error is something like this
cannot stat `/var/lib/one/datastores/1/f5394317d377beaa09fc07697df9ff68
but if, from the front end which has virtual machine n°1 we perform,
cd /var/lib/one/datastores/1
then we can see that file, we've also given all the permissions to it...
Any idea? :(
This may be related with the datastore configuration. If you left the default values, OpenNebula expects a shared filesystem (ie NFS) between the front-end and the virtualization nodes.
More context on the error (which I believe can be found in /var/lib/one/oned.log) would help analysing this problem.