Jump to content

Truenas scale setup


Recommended Posts

Posted

Hey so i've been planning on switching to Truenas scale from Truenas core for awhile now but i don't know which way is best to install and use Emby on it. Do you make a docker and install it through command line? Do you use the truechart thing? The offical chart thing? I have no idea why there are multiple options or if they are even the same option. I've found several posts on the forum about it but sadly they all seem outdated or different  then what i saw. So far i've been looking at it through a VM since i didn't want to mess up my current Truenas scale install.

I'll link these two in particular as they seemed to hold the most promise to me but sadly i saw options that the guide didn't have or explained what to do with them. So if someone can tell me which option to use then i can start from there. If someone has a more up to date way for installing Emby on Scale then i would love to see or hear it. 

 

 

Posted (edited)

Yes, but because it's just one of several options i figured i should ask here which option is the best one.

 

EDIT: Just realized it might be nice to say WHY i'm asking in the first place. With Core there was either the pluging from official or public catalogue and the command line option. Turned out after awhile that command line option was the better, more constantly working option. So now with Scale  i want to avoid potentially having to switch things later on by asking these questions first.

Edited by jerren
Posted

The main reason to use the method listed on our website is that it's packaged by us and it's what we're testing ourselves.

Posted

Since the guide just says where you can find the app and i think everyone can click install. What are you supposed to fill in or change with the window that pops up? I found some posts touching on this but their options seem different so i'm guessing it's an older version in those and things have change since then.

Server config.

Application name, best to leave it alone? Then there is version, can't change that so kind of irrelevant. After that is Environment Variables for Emby Server, anything we have to add here?

Networking.

Do we need to enable host networking? Do we need to configure the HTTP Service? Port seems obvious as that is up to personal choice and local network i assume.

Storage.

Can't click on emby server storage or config volume so not sure why they are there. Do i enable host path for emby server config volume? If so, what does it do? Clicking add shows mount path in pod, judging from the explanation from the question mark i assume this is the same as mounting points in freebsd? I see that with the Host path i can point to the pool which will have the data so not entirely sure what the mount path in pod is about.  Read only option is that usefull or what does it do?

Scaling/upgrade policy

Should we chose to create new pods and then kill old ones or the other option which is the reverse?

Resource reservation

I see gpu configuration so i assume if your box has a gpu you can say that the gpu is allowed to transcode things? ( doing this on a vm to avoid problems so it doesn't have it) Is it worth doing or will a cpu pull it's weight just fine? Asking since i got an old gpu laying around.

Resource limits

Should we enable the pod resource limits? Is it usefull to limit the cpu or memory?

 

Sorry for all these questions or if it sounds impolite, know that it is not my intention to sound like that and am just curious. I managed to learn my way around keeping Emby going in Core which is FreeBSD with the wonderfull help people gave me here. So now i'm hoping that with Scale i'm going to learn to handle Linux in a similar way ( if it ends up being smoother that's ok too ^^ ).  I posted screenshots from the window that pops up below this so that you can see what it currently asks after hitting install.

 

 

image.png.d1cd58b077debda3f6f7fd58620f3ae6.png

image.png.0a79e9495e17e0367899b2a1f54d2358.png

Posted (edited)

My 2 cent, as i run scale from start and it's months down that path, blindly use official charts!

Regarding accessing the server with domain name, I scraped all reverse proxy etc, and just made a private VPN connection, so everything i have on my scale is available from were ever i need (some setup required if you want to access the server on a new machine, i only care about the family phones and tablets, and my vacation place ( so all this are already setup).

Use Host Network! so the dnla and Chromecasts working, do a self signed certificate so in home you will see all google devices to cast,as google only cast to https.

the user that run emby is always bin, so add your user to bin group etc. 

Also use the paths, assign a config path and the movies tv, etc

Hope that helps, if you go my path.

 

Regards

Dinos

 

Edited by dgrigo
Posted

Sorry was busy with things and didn't have time to check back yet. I don't want my scale box to be accesible from anywhere so not going to use a vpn for it. I personally set up Emby on my family's devices which is all they need and less hassle for me afterwards ^^.

Will turn on the host network and note down to add my user to the bin group.

When you say assign a config path and the movies, tv, etc. I'm not sure what you meant there @dgrigo

 

Gonna list up the questions here and add in the answer i got so far to keep it quickly viewable what i still need to know before i can install it.

 

Server config.

Environment Variables for Emby Server.                         Don't know what to do with this.

Networking.

Do we need to enable host networking?                            Turn on if you use devices like chromecast or use DLNA.

Do we need to configure the HTTP Service?                          Don't know what to do with this.

Storage.

Can't click on emby server storage or config volume so not sure why they are there. Do i enable host path for emby server config volume? If so, what does it do? Clicking add shows mount path in pod, judging from the explanation from the question mark i assume this is the same as mounting points in freebsd? I see that with the Host path i can point to the pool which will have the data so not entirely sure what the mount path in pod is about.  Read only option is that usefull or what does it do?

Dgrigo touched on this but his explanation wasn't entirely clear to me. Maybe once i do it, it will be crystal clear but right now i can't understand it.

Scaling/upgrade policy

Should we chose to create new pods and then kill old ones or the other option which is the reverse?     Don't know what pods are, which option is best?

Resource reservation

I see gpu configuration so i assume if your box has a gpu you can say that the gpu is allowed to transcode things? ( doing this on a vm to avoid problems so it doesn't have it) Is it worth doing or will a cpu pull it's weight just fine? Asking since i got an old gpu laying around.

Need an answer on this. So far i'm thinking cpu will transcode things fine since it's been handling emby fine in Core but since the option is here i rather known more about it.

 

Resource limits

Should we enable the pod resource limits? Is it usefull to limit the cpu or memory?

Need an answer on this, maybe once i understand pods i can make sense of it but right now it's unclear.

 

Tried to keep it basic so it's clear but since these are the first things that you have to decide on after clicking install i think it's fairly important.

 

Posted (edited)
@jerren

config paths :

mount point /movies

in my storage that points to mnt/storage/library/movies (mnt / name of my raid volume / dataset name (library) / mount point

mount point /tv

that points to mnt/storage/library/TV

etc etc for the rest of directories, like music that you need to share and have as libraries in emby.

if you make those directories they will have root or admin perm, so you need to chown or give permitions to your user. 

leave pod resources alone

if you put a gpu, select the gpu 0 * thats the 1st id

scaling upgarde as it is default.

Config volume, I have another raid for the programs, so i use a volume/dataset that i named apps and inside a directory named emby, so the mountpoint is /config and points to mnt/apps/emby.

that way the config stay untouched from installation deinstallation, and all my thumbs stay put, on next install/upgrade etc.

Http , i use only http and not exposing my server to internet in anyway, except i use a vpn server and self signed certificate for local network, to connect to my home full network from my mobiles etc, wherever i am in the world.

also i scraped all nginx , domains etc and made a personal CA and certficate , just to be able to use chromecasts from emby web on all my computers.

So its a fake HTTPS.

Dunno , if you can do the last parts like VPN server and self signed certificate, need milages on the OS.

so forget for start...

oh, env variables you need uid ,gid and gidlist, on glist make sure you have the groups your group,video,render,bin,apps, cant remember numbers from my head and can't check my server as i am doing a revocation of homelab, i know that my user is 1000, and bin is 2, if you serch my posts ,i have shared the numbers.

uid =1000

gid =2

gidlist= what i explained just find the id, from users.

also you need to give permitions for the libraries to your user and bin group to be able to access them.

Hope that helps a little to start.

 

Edited by dgrigo
Posted

Server config.

Environment Variables for Emby Server.                         

environment variables you need ui, guid on glist. This is in scale’s user management. What about the others you mentioned? The groups video, render, bin apps, is that for other apps or are they also needed to make emby work? If it’s for other apps then i can tackle those ui and guid’s when it’s time for those. If it’s for Emby then what do they do? Would the numbers be the same as on Freebsd or not? If it’s the same then i could copy them from apps i use right now.  Is it app dependent? If so then i’ll go look for them when needed.

 

Numbers provided by Drgrigo

uid=1000

gid=2

gidlist=

Also you said we need to give permissions for each library to the user and bin group that will acces them. Does that mean every emby user needs acces to each folder?

On Core that wasn’t necessary, Emby's users were purely present in Emby. If it's necesssary, will they still have their viewing history and such after migrating or not?

Is there a specific user group we use for emby or do we make our own for emby?

I don’t see a emby or media group so i assume we make our own?

Networking.

Do we need to enable host networking?                            Turn on if you use devices like chromecast or use DLNA.

Do we need to configure the HTTP Service?                          Just noticed this option  disappears when enabling host networking so guess it becomes irrelevant at that point? For emby atleast.

 

Storage.

Config volume 

Enable host path for server config volume option , tag it if you want to store the config in a separate folder, correct?

If so then can do a separated volume in the storage set for programs. In the example given, call it apps, have a directory called emby when this is put with the config volume path then whatever configuration that's currently set in emby is saved from installation deinstallation, same for thumbnails. Mount point would look like mnt/apps/emby in this example.

Is that option needed when you have premiere since that saves configuration every 24 hours too if i recall correctly?

Mouth path in Pod assigning followed by mount path which shows /mnt/datapool/volume

It kinda sounds like mounting points in freebsd. Link library to mnt /name of your raid volume/dataset name (library) ,  For example  in case of tv - mnt / name of your raid volume / tv or for movies - mnt/nameofyourraidvolume/movies. 

If i’m reading it right then mount path in Pod means the library in emby? And host path is the mount point in your storage pool on the scale machine. If my previous question’s answer is Yes, does that mean when i log into the web ui i don’t need assign libraries anymore?  

 

To clarify, on Core i just mounted a media folder which held my series, movies, music folders and then in the webgui of emby i assigned the libraries by pointing to the media mount paint and selecting the series, movies or music folder in there. So in Core it currently is /mnt/pool/dataset which in my case the dataset is named media, when i go to emby to add a library, i tag the + next to folders go to the correct set, into media and there i see all my folders from which i can choose to add a library. So if i want to add movies i would do /media/movies and emby would see it. (If permissions are all set up properly ofcourse which on my Core machine they are)

 

When i find a moment i’ll do research on what pods actually are because that seems the proverbial wrench for me right now.

 

 

Scaling/upgrade policy

Should we chose to create new pods and then kill old ones or the other option which is the reverse?     Don't know what pods are (will do research when time permits) But i will leave as default like you said. (atm that’s kill pods before creating new ones)

Resource reservation

Gpu config - if you have a gpu in the machine then select gpu # (if none are in it like with my vm right now then there will be nothing to select)

Resource limits

Don’t limit pod resources.

 

I think that answers quite a few questions and raises a few new ones. I try to keep it all in order of appearing in the list when hitting install.

Posted

Wanted to edit last post but seems i'm unable too after a certain amount of time. Been looking into pods and it seems they are sort of like jails on Core?

GrimReaper
Posted
2 minutes ago, jerren said:

Wanted to edit last post but seems i'm unable too after a certain amount of time.

Yes, 3 hrs upon posting for Regular user group. 

  • Thanks 1
  • 2 weeks later...
Posted

Figured i would try to repost it with only the questions that remain and not the full original questionnaire to keep it a bit more obvious what my questions are at this point.

 

Environment Variables for Emby Server.                         

environment variables you need ui, guid on glist. This is in scale’s user management. What about the others you mentioned?

The groups video, render, bin apps, is that for other apps or are they also needed to make emby work?  If it’s for other apps then i can tackle those ui and guid’s when it’s time for those. If it’s for Emby then what do they do? Would the numbers be the same as on Freebsd or not? If it’s the same then i could copy them from apps i use right now.  Is it app dependent? If so then i’ll go look for them when needed.

 

Also you said we need to give permissions for each library to the user and bin group that will acces them. Does that mean every emby user needs acces to each folder?

On Core that wasn’t necessary, Emby's users were purely present in Emby. If it's necesssary, will they still have their viewing history and such after migrating or not?

Is there a specific user group we use for emby or do we make our own for emby?

I don’t see a emby or media group so we have to make our own?

Do we need to configure the HTTP Service?   Just noticed this option  disappears when enabling host networking so guess it becomes irrelevant at that point? For emby atleast?

Is the host path for server config volume option needed when you have premiere since that saves configuration every 24 hours too if i recall correctly? 

 

Mouth path in Pod assigning followed by mount path which shows /mnt/datapool/volume

It kinda sounds like mounting points in freebsd. Link library to mnt /name of your raid volume/dataset name (library) ,  For example  in case of tv - mnt / name of your raid volume / tv or for movies - mnt/nameofyourraidvolume/movies. 

If i’m reading it right then mount path in Pod means the library in emby? And host path is the mount point in your storage pool on the scale machine. If my previous question’s answer is Yes, does that mean when i log into the web ui i don’t need assign libraries anymore?  

 

To clarify, on Core i just mounted a media folder which held my series, movies, music folders and then in the webgui of emby i assigned the libraries by pointing to the media mount paint and selecting the series, movies or music folder in there. So in Core it currently is /mnt/pool/dataset which in my case the dataset is named media, when i go to emby to add a library, i tag the + next to folders go to the correct set, into media and there i see all my folders from which i can choose to add a library. So if i want to add movies i would do /media/movies and emby would see it. (If permissions are all set up properly ofcourse which on my Core machine they are)

Been looking into pods and it seems they are sort of like jails on Core? Their own little seperate instance so it can't influence the host box?

 

Thanks again for the replies so far as it's given me new insights in how the whole operation should work.

  • Thanks 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...