I’m trying to migrate from Ubuntu Docker to Windows GUI, I have followed the guide and copied over the identity and storage folders / data and ran the install and pointed to the correct locations - all looks good. But the storage node service keeps stopping and i’m unable to get to the dashboard, did i do something wrong ?
So I did some digging around whilst waiting for the reply and if i point it to another folder on the same drive (though i am 99% sure the docker was not using that folder) the service will remain up, but i still cannot access the dashboard - it does not load …
Heres the 20 lines from the folder i believe to be correct … but I see there is a storage folder within it so this is outside of the storage folder…
2020-03-13T00:25:35.174Z INFO Configuration loaded from: C:\Program Files\Storj\Storage Node\config.yaml
2020-03-13T00:25:35.199Z INFO Operator email: *********
2020-03-13T00:25:35.199Z INFO operator wallet: *********
2020-03-13T00:25:36.012Z INFO version running on version v0.34.6
2020-03-13T00:25:37.382Z INFO db.migration Database Version {"version": 31}
2020-03-13T00:25:40.140Z INFO preflight:localtime start checking local system clock with trusted satellites' system clock.
2020-03-13T00:25:40.990Z INFO preflight:localtime local system clock is in sync with trusted satellites' system clock.
2020-03-13T00:25:40.990Z INFO Node 12o9pkuq3KfHQTQmiJrTq5nvpJEmYtkpTuKCC3XjQc3GTVCZDcX started
2020-03-13T00:25:40.990Z INFO Public server started on [::]:28967
2020-03-13T00:25:40.990Z INFO Private server started on 127.0.0.1:7778
2020-03-13T00:25:40.990Z INFO bandwidth Performing bandwidth usage rollups
2020-03-13T00:25:40.990Z INFO trust Scheduling next refresh {"after": "6h11m23.016412979s"}
2020-03-13T00:25:41.110Z INFO version running on version v0.34.6
2020-03-13T00:25:41.150Z ERROR piecestore:cache error persisting cache totals to the database: {"error": "piece space used error: context canceled", "errorVerbose": "piece space used error: context canceled\n\tstorj.io/storj/storagenode/storagenodedb.(*pieceSpaceUsedDB).UpdatePieceTotals:174\n\tstorj.io/storj/storagenode/pieces.(*CacheService).PersistCacheTotals:100\n\tstorj.io/storj/storagenode/pieces.(*CacheService).Run.func1:85\n\tstorj.io/common/sync2.(*Cycle).Run:87\n\tstorj.io/storj/storagenode/pieces.(*CacheService).Run:80\n\tstorj.io/storj/private/lifecycle.(*Group).Run.func1:56\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57"}
And heres the same lines from the folder i am not sure is the correct, but the service stays up …
2020-03-13T00:28:22.693Z INFO Configuration loaded from: C:\Program Files\Storj\Storage Node\config.yaml
2020-03-13T00:28:22.730Z INFO Operator email: ******
2020-03-13T00:28:22.730Z INFO operator wallet: ******
2020-03-13T00:28:23.656Z INFO version running on version v0.34.6
2020-03-13T00:28:23.925Z INFO db.migration.7 Drop certificate table.
Please, do not experiment with a different folders locations, your node will be disqualified very quick.
Stop the storagenode service.
If you migrated from a docker, your storage.path: option in the "%ProgramFiles%\Storj\Storage Node\config.yaml" should point to the folder ended with storage, like this:
storage.path: X:\storagenode\storage\
Please, provide a way how you migrated from the Ubuntu Docker to the Windows GUI.
Also, please specify the path, which you have used for the storage on the windows PC.
Manually copy off the identity folder from Ubuntu and copy into the documents on Windows GUI…
Run the GUI installer filling in the same details - payout address, email etc … I also pointed the identity to the newly copied folder…
I then reconnected the drive to the Windows machine (This was added as an iscsi drive on Ubuntu, and is iscsi again on windows) making sure to point the gui to the same folder structure, IE: F:\DATA\storage
I appreciate you push towards local storage only, but for now this used to work fine and hopefully will continue to work…
I would believe the settings to be correct based on the above. Please let me know if you think of anything I may have done wrong or what to check next.
I may have found the underlying issue… on Ubuntu the iSCSI volume was formatted as EXT4, when I’ve moved over to Windows this cannot natively read that FS so I installed ext2 volume manager and I was able to access.
I thought that Storage Node would be find reading and writing based on this but I am guessing not now ? The plan is migrate the data over to an NTFS volume and we should be back in business - would you agree?
I assume I will be able to access the Dashboard from other machines on the same network like I could when on Ubuntu Docker ? Do i need to allow / change anything?
Yes, you should uncomment this line in the "%ProgramFiles%\Storj\Storage Node\config.yaml":
# console.address: 127.0.0.1:14002
And replace the 127.0.0.1 to 0.0.0.0, save the config and restart the storagenode service either from the Services applet or from the elevated Powershell:
So all the data seemed to copy over fine and the service is now running and i can access the dashboard.
Though one thing i see is the bandwidth used this month and disk space used this month are at 0 and have been for some while ?
Also in the logs every so often i see …
2020-03-17T23:08:45.994Z ERROR console:endpoint api handler server error {"status code": 500, "error": "storagenode console web error: storage node dashboard service error: bandwidthdb error: database disk image is malformed", "errorVerbose": "storagenode console web error: storage node dashboard service error: bandwidthdb error: database disk image is malformed\n\tstorj.io/storj/storagenode/storagenodedb.(*bandwidthDB).getDailyUsageRollups:435\n\tstorj.io/storj/storagenode/storagenodedb.(*bandwidthDB).GetDailyRollups:342\n\tstorj.io/storj/storagenode/console.(*Service).GetAllSatellitesData:268\n\tstorj.io/storj/storagenode/console/consoleserver.(*Server).satellitesHandler:147\n\tnet/http.HandlerFunc.ServeHTTP:2007\n\tgithub.com/gorilla/mux.(*Router).ServeHTTP:212\n\tnet/http.serverHandler.ServeHTTP:2802\n\tnet/http.(*conn).serve:1890"}