Migrate existing Docker Run nodes to TrueNAS Scale apps

Does anyone out there have experience with moving their old nodes with docker run/ compose into TrueNAS scale app / helm/k8s?

I’m looking into making this move to eliminate iSCSI and removing extra points of failure.

Not knowing much about k8s, I think i may try to learn this general concept to understand how truecharts crafts each node. I’m a bit lost at the moment after diving in and trying to start a fresh solo node with both the official app, and truecharts app. So far I’ve not even been able to get that to work.

1 Like

k8s is an overkill in this case and cumbersome, but you may try. You need to be familiar with k8s and how to manage their resources, how to check logs, etc.
You need to provide all values for the helm chart and deploy it to k8s, it should create a persistent volumes and fail, because I do not see the setup step, but perhaps they uses the modified storagenode image. If it’s fail, then you could try to transfer data and identity of your node to the persistent volumes. If it’s not fail, then they perhaps implemented the identity generation and setup step in their docker image for storagenode.
In both cases you would need to scale down the Deployment to zero. Then you should connect to your TrueNAS via ssh and find mounted volumes for identity and data.
First you need to transfer your data to the data volume, the identity should be transferred to identity volume last, otherwise your node could start with partial data and will be disqualified. When all data and identity are transferred, you may try to scale up the Deployment to 1. I would expect some problems with permissions, so you need to monitor your logs. You can do it with kubectl or their UI (I did not use TrueNAS Scale, so I do not know - do they have a UI for k8s, if not, you probably would need to install Kubernetes Dashboard). The next step would be to make an Ingress to work (change port forwarding rules on your router).
I would recommend to test this app with a new node first to do not lose your working old node.

So I guess it would be simpler to use either direct docker run command as before but now on TrueNAS or try to use their app (which likely a wrapper around docker anyway).
The identity and data should be transferred to TrueNAS already.
You need to provide a path to your identity and data (do not mess with paths!), ports, wallet, address, etc.

For the TrueCharts version to work you first run it with it in setup mode. Then turn off setup and restart the chart.
It was pretty confusing to get it working honestly, plus the log info doesn’t appear on the logs you can view on the website, so you need to get them manually to see what is actually wrong when it doesn’t start.

1 Like

been wanting to change from proxmox to truenas scale for a while…
and tho i really like truenas scale, i haven’t actually gotten my main server moved to it, due to various interface related stuff.

truenas scale does seem to be amazing, i really like how simple and easy accessible everything is.
moving the nodes would be like migrating to anything else…
at the heart truenas scale is just debian linux…

if i was running a more simple server setup i would be running truenas scale.
only thing that sort of makes me worried about truenas is all the mysterious stuff that runs on the backend of it… its built upon kubernetes and has all sorts of weird stuff it does…
this can be good and bad… its done that way to allow multiple truenas scale systems to for clusters and such.

like, but don’t understand it well enough to take the plunge and go all out truenas scale.
also truenas scale is rather new… which can cause all sort of unexpected things to happen.
that being said, i think truenas scale is about ready for usage in production.

i’m got myself locked into the proxmox ecosystem, and now its difficult for me to leave…
but not very happy with proxmox… i love it as much as i hate it…

atleast truenas scale is easy to work with.
i would recommend not to do to much outside the gui…
it gets advanced really quick and straying from the defaults can come back and bite you easily.

whatever ecosystem you choose, expect to get locked into it…
tho i have tested moving vm’s between truenas scale and proxmox and worked like a charm.
so in theory its easy to move infrastructure over.

i had my hopes up with truenas scale being debian linux that it would easily take advantage of ZFS local storage and the simplicity of docker and docker-compose. But they’ve really went in with the kubernetes option. I can’t tell that they support basic docker commands, and see warnings that if you divert from the standard apps option in the UI that it may break in future updates. I have a lot to learn here to get this right if one of my prod nodes is going to move over. I’ll def start with testing a new node and see if i can get it to survive an update, and a maintenance event.

With the advent of the ixsystems partnership i imagine this may be looked at a little closer in the long run.

Permissions have definitely been a problem with initial testing. I’ve been pulling my hair out on this on another project with migrating plex data.

I’m ok with lockin, as moving away from QNAP i feel there are a lot of other options that beat this platform. Trying to pick the right one has been an adventure so far. So many tradeoffs in this area, where you win in one area, you give up some in another.

2 Likes

I’ve been told there is a Storj Node plugin included with Scale. I intend to install TrueNas this week and see if I can get it running as a node. You might try it if you are able to locate it.

1 Like

When I last looked at it there was an unofficial one from TrueCharts, although it’s not really documented on how to set it up.

Looks like there is now an official one included, I can try spinning up my truenas scale server and see what it is like. charts/charts/storj at master · truenas/charts · GitHub

The official storj app seems a bit wonky, it doesn’t appear to set the options in the config file so the node address, email and wallet are missing.
I also can’t see an easy way to migrate to it from anything else as it defaults to generating an identity.
Has anyone else tried it yet?

they passing them as variables (as for docker version).

It could be migrated though, if you provide an existing mounts:

1 Like

I feel at the current time, the App is designed to get Scale users to try out Storj and store some data. As a host to migrate to, you don’t really need their interface as you could just open the Linux shell and install it manually and migrate what you like. I don’t see any benefit to using the applet to do this right now. Down the road they may build it out more.

I think it’s a nice solution for Scale users who want to try out being a SNO without much difficulty. Advanced users would gain more by doing a manual install at this time, in my opinion.