Episode Transcript
Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Speaker 1 (00:03):
Hi there, everyone,
and welcome to another episode
of the Uncast Show.
So I want to wish you a goodmorning, good evening, good
afternoon to wherever you'rewatching this from in the world.
Now, today's video is theofficial Uncast video about
Unraid 7.
So this video is going to beabsolutely great.
Now, in this video, we're goingto be talking not only about
(00:28):
all of the new features.
We're going to be talking aboutthings such as unraid subpools
or auxiliary VDEVs.
We're going to be talking aboutthe fact that we don't need an
unraid array anymore, and we'regoing to be looking at how we
can actually remove it andsetting up a server from scratch
without an array as well.
And as we'll be setting up aserver from scratch, of course
(00:49):
we're going to be talking aboutz-pools.
Now, have you ever wonderedwhat's the difference when
you've got four drives, if youput that into a RAID Z2,?
So you have two drives ofredundancy, or you chose to have
two sets of two mirrored drives?
Well, you're going to have thesame amount of redundancy, but
is there any difference?
(01:10):
Well, we'll be talking aboutthat later Now.
As you all probably know,there's loads of new cool docker
features, and we've talkedabout them before in previous
Uncast videos, but we'll belooking at that as well.
But there's also loads ofactually awesome VM features as
well, and we're going to betaking a bit of a deep dive into
VMs.
We're going to be looking atall of the new features that the
(01:32):
VM manager offers, and we'realso going to be looking at
snapshots and how we actuallyrestore them.
Now there's going to be thisand much, much more in this
video.
Now, the first thing we're goingto be talking about in this
video is riser FS, or, in Unraid7, you could say, the lack of
riser FS, as it's being phasedout.
So we're going to start withthat now.
(01:52):
It's a pretty long video, guys,so grab yourself a coffee, a
beer, sit back and relax, andI'm going to go over to my desk
and let's make a start.
So Unraid 6.12 is the lastversion of Unraid that allows us
to actually format disks inRiser FS.
And even if we choose Riser FSin 6.12, we do get a warning
(02:15):
that Riser FS is depreciated andwe should use another file
system, and the file system touse in the array, in my opinion,
is XFS.
Now I don't want to actuallyformat this drive, so I'm just
going to remove it and startback up the array.
So let's upgrade this serverhere to unraid 7, and what I
(02:38):
like to do before any upgradesis I go to the plugins page and
check for updates and make sureall of my plugins are up to date
before I do any upgrades, andas well as upgrading the plugins
, I think it's a good idea toalso do a check for any Docker
container updates that we mighthave as well.
(02:59):
And the final thing I like todo is, with the Fix Common
Problems plugin installed, is tojust check my server for any
errors before I do any upgrades.
Okay, so we can see there's afew errors and warnings here.
Now the riserFS warning on mydisk 2, fix Common Problems
(03:20):
recommends that I migrate thisto XFS, and we'll do that in a
moment after we've upgraded toUnraid 7.
Now there's a new patch here,the Unraid patch plugin, which I
don't have installed on thisserver.
So let's install that now.
Basically, this plugin justkeeps the Unraid server up to
date with all the latest patchesfor the version of the OS that
(03:42):
you're running.
Okay, so other warnings I'vegot here.
There are two plugins that arenot compatible with the system
the Dynamics Cache Directoriesplugin and the Waken LAN plugin
is no longer supported, so I'mgoing to go across and remove
those.
So let's remove these.
And now, with our last check onfixed common problems Okay, so,
(04:09):
fixed common problems, all butthe riser FS error has got a
clean bill of health.
So before I go and update, let'sjust have a look at the kernel
that Unraid 6.12 is currentlyusing.
So it's using Linux kernel6.1.126.
And also, whilst we're here,let's have a look at the Docker
version that 6.12 is using, andthe Docker version is 24.0.9.
(04:34):
And finally, let's go to the VMmanager and have a look at the
libvert version, which is 8.7.0.
And QMU 6.12 is running 7.2.0.
Okay, anyway, it's ready for usto upgrade now.
So to do that we need to go totools here and under about here
(04:55):
we can see the upgrade OS button, so I'm going to click onto
that.
And here I can see there's onestable version of Unraid, which
is Unraid 7.0.0, which wasreleased on the 9th of January
this year.
So I'm going to click on toview changelog here.
And here we can view thechangelog of everything that's
(05:15):
new in Unraid 7.
But we're not going to readthat, because that's what this
video is all about.
So I'm going to click on hereto continue the update on
serenity, which is the name ofthis server, and so the update's
now being downloaded.
Okay, so everything'sdownloaded, so I'm going to
click onto done.
(05:36):
Okay, so at the top here we cansee the last thing we need to
do is to reboot the server.
So I'm going to click on hereto reboot, and rebooting the
server will bring us straightinto Unraid 7.
Okay, so let's log in and herewe can see we're straight into
Unraid 7.
Now, like I was saying earlier,when we're looking at Unraid
(05:57):
6.12, if I was to add this disknow, we can see here that the
option to actually format inriser fs has been removed from
unraid totally.
Now, the reason being is riserfs has actually been deleted
from the kernel as of linuxkernel 6.13, and for those of
you who don't really know aboutriser fs, it's actually got
(06:20):
quite a checkered history.
The person who actually maderiserfs, he actually ended up
murdering his wife, and it hasquite a whole dark history to it
, to be honest.
Anyway, that's not what we'rehere to talk about, but let's go
back to the Unraid server here,and what I'm going to do is I
(06:40):
don't want to add any moredrives to this server, so I'm
just going to start up the array.
Okay, so here we are in Unraid7.
So we can see, although wecan't actually format a disk in
RiserFS, well, we can stillactually use disks that we
already have in the server thatmay already be RiserFS, and
(07:03):
that's because we're notactually on the kernel.
That's actually droppedsupporters.
Yet this version of unraidunraid 7.0.0 is using linux
kernel 6.6.68.
Now, a great thing about thiskernel for everyone out there
who's using intel arc gpus well,this kernel gives full support
(07:24):
for those.
So that's really cool.
Even though this kernel versionhere does support riserfs, it's
a good idea, in my opinion, tomake preparations for when we do
actually go on to Linux kernel6.13.
Because when we do that, well,the riserfs disks are not going
to work in the array anymore.
So it's a good idea to actuallybe able to reformat these as
(07:47):
XFS.
And it's actually really easynow to be able to clear one of
these drives using Mover.
Now we can't actually use Moverfrom the GUI to do this, but it
really is super easy to do.
Now.
If I go here and we look atsome of the notes about this
release.
Here we can see we can usemover to empty an array disk.
(08:10):
We use this command here mover,space, start, space, hyphen e,
disk, and then the number of thedisk, and then we pipe that
into logger and at the end ofthe command here we can see an
and symbol, which means thisruns in the background.
So what I need to do, becauseI'm using disk 2 here, that's
(08:33):
riser fs.
What I want to do is clear offeverything here and have this
moved onto another disksomewhere in my array.
Obviously for me that's goingto be disk one, because there's
only two drives in this array.
But if you had multiple disksof, say, kind of 10, it will
just find somewhere to keep thedata and clear off that disk.
So what I'm going to do is I'mgoing to open up a terminal
(08:57):
window and I'm going to typemover, space, start, space,
hyphen e, space and disk 2that's the disk that I want to
clear, space and then pipe if Ican find that on my keyboard
here and logger, and then aspace and an.
And now this and at the end ispretty important because what
(09:19):
that does is it just runs thisin the background.
So by having that on the end itmeans we can close this window
and the command will still berunning.
So let's hit enter and we cansee here we've got a response.
So I can close this now.
And if we scroll down, we cansee here that move is now
running.
So we just need to wait formover to finish and what it will
(09:42):
do is it will move the filesand folders off my disk too, and
because I've only got twodrives in this array, it's going
to put it onto disk one.
But if you had more drives itmay well actually scatter it
across multiple drives,especially if you didn't have
enough space on the actual firstdrive.
And we can see here the readsand writes, the activity on this
(10:06):
drive.
So we can see things are moving.
So we just need to wait forthis to finish and then we can
move to the next stage.
Okay, so it looks like here thedisk activity is finished.
So let's scroll down and see ifmove is still running.
No move is finished now.
So if I scroll up here and Ilook on this disk, we can see
now this disk is empty and thecontents have been put onto my
(10:30):
disk one here.
So what I need to do now is nowthis disk is empty is I can
stop the array and reformat thisin XFS.
So let's stop the array and nowall we need to do is to
actually select this disk hereand change the file system from
riserfs to one of these otherfile systems here.
(10:53):
Now, if we wanted to as well, wecould actually encrypt this
drive and we could use the samesystem to be able to encrypt any
drive that we want on the array.
So we could just clear thatdrive and then we could reformat
it encrypted if we wanted to gothrough and encrypt some disks.
So why not encrypt this one?
(11:13):
I'm going to click on to applyhere and done, and I'm going to
scroll down to the bottom hereand click on to start Now.
Here we can see that it saysunmountable and it's the wrong
file system.
This is perfectly normalbecause this hasn't been
formatted as yet.
So I'm going to scroll backdown to the bottom here and I'm
(11:34):
going to check this box here andI'm going to click on to format
.
Now you may be wondering, if I'mformatting this drive encrypted
, why it's not asking for a passphrase.
Well, there are these otherdrives that I have in the server
that are already encrypted, andso Unraid's going to use the
same password for those.
But if I didn't have anyencrypted drives at all in the
(11:54):
server, it would in fact ask fora passphrase before formatting.
And now we can see that theformer riserfs disk is now all
formatted correctly in XFS andalso it hasn't affected parity
at all.
Just because we've reformattedthe drive.
It doesn't actually breakparity, so the array is going to
(12:15):
be working absolutely fine.
Now I'm sure that most of us outthere we don't have riserfs
drives in our server, but I justwanted to go over that first
before moving on to what I'dcall the more exciting things
about unraid 7.
Now, as I said earlier, I'dreally recommend doing this
sooner rather than later.
Yes, on unraid 7 currently wecan still read riser fs disks,
(12:40):
and that's because unraid 7,like I was earlier, is on kernel
6.6.68.
But what I want to do is showyou what happens when we
actually go to a kernel abovethis.
So let me show you that now.
Now what will happen when weupdate to a newer kernel, and on
this Unraid, I've updated hereto Linux kernel 6.14 RC2, which
(13:06):
is the newest kernel.
As of making this video Now,this isn't actually officially
supported by Unraid, so I don'tsuggest you upgrade your kernel,
but I just wanted to show youhere when it is upgraded to this
kernel, well, any kernel above6.13, well, riserfs is not going
(13:26):
to work, and we can see here itsays that it's unmountable and
there's no file system.
So that's why it's a good ideato now, whilst it's still easy
and you're not going to have todowngrade to earlier versions of
Unraid to come off your riserfsdisks.
I really suggest doing it nowif you've got any in your system
.
Okay.
So in my opinion, one of thebiggest things in unraid 7 is
(13:50):
the fact that we don't actuallyneed to have an unraid array
anymore.
If we go across to my serverhere, battlestar, we can see an
example of this.
Now this server has only twoz-ps, both of which are SSDs.
This top one here has a usablespace of about 10 terabytes and
(14:14):
it consists of two terabyte SATASSDs.
Now this faster pool beneathhere.
This is made up of three 4terabyte NVMe drives and, as you
can see, here there is nounraid array.
Oh, and there's a third poolhere I forgot about, which I
call z rust, basically becausethis drive here is a 12 terabyte
regular hard drive.
Hence I call this one z rust asin zfs rust pool.
(14:37):
Okay, so one thing I want tomention about nvmes and ssds in
general is it's highlyrecommended not to actually use
them in a regular Unraid array,and the reason for that is
because inside of the Unraidarray, trim, or discard, as it's
called, is not actuallysupported on SSDs.
(14:57):
So if we use SSDs in our server, we should always use them in a
pool.
Now, before we actually goahead and look at how we can
have our Unraid server withoutan array, I just want to say
that I really do love the Unraidarray.
If we go to my main server here, basestar, we can see here that
I still have an Unraid array.
(15:19):
I think the Unraid array isabsolutely excellent.
I think the Unraid Array isunbeatable for media duties, for
storing your media, for thingslike Plex, jellyfin or MB.
You can't actually beat theUnraid Array because whenever
you need more space you can justadd another drive really easily
without any problem at all.
And my favorite file system forthe Unraid Array, as I said
(15:41):
earlier, is XFS.
But you'll notice that I doactually have a ZFS drive in my
Unraid array, and the reason Ihave one driver ZFS is because I
like to actually have some ofthe other Z pools in this server
be able to replicate ZFS datainto the array onto this
(16:01):
particular drive.
But we're not going to talkabout ZFS replication today.
We can have a look at that inanother video sometime in the
future.
Now let's go back to the serverthat we were on at the beginning
of this video.
Now we can see here we've justgot this small array of three
drives, one parity and two data.
So if we wanted to actually getrid of this array now, maybe I
(16:27):
decide that I don't want toactually have an unraid array
anymore.
I still want to use thesedrives, but I want to use them
in a pool.
Now, obviously, one thing tonote if you ever change your
unraid array and you want tomake it as a pool, you're going
to have to move the data fromyour unread array to somewhere
else, and we can't actually doit in the same way as what we
(16:50):
did a moment ago using mover.
We'd have to actually manuallymove all of the data somewhere
else first if we wanted toconvert our unread array into a
pool.
Okay, so I don't have any dataon this array that I actually
care about.
So I'm going to stop the arrayhere and what we need to do is
unassign all of these drives andthen, with all of the drives
(17:13):
unassigned, we go to slots hereand we set the slots to none.
So here we can see.
Now there's currently nounrayed array, okay.
So now, with these drivesremoved from the array, I can
now set them, if I want to, tobe in their own pool.
Now, if I scroll down here, wecan see here I've got five
(17:34):
drives I can choose from.
There are four 4TB drives herewhich are spinning Rust drives
they're regular hard drives andalso I've got a 1TB SSD regular
hard drives and also I've got aone terabyte SSD.
So what I'm going to do, I'mgoing to make a new pool, so I'm
going to click on add pool hereand I'm going to give it a name
let's call it rusty and forslots, because I've got four,
(17:56):
four terabyte drives.
I think I'm going to choosefour and I'm going to click on
to add.
Okay.
So now we can see here thatanother pool has been created.
So now I just need to selectthe disks of which I want to
have this pool made from.
So here I've selected all of myfour terabyte drives.
Now one thing I like to dobefore I actually start is I
(18:18):
come along and I click onto thepool here, and before I do
anything I always click erasepool, and to do that I just need
to confirm the name of the pool.
Here, and before I do anything,I always click erase pool, and
to do that I just need toconfirm the name of the pool.
So I'm going to type in rustyand now that's erased the pool,
getting rid of any data that Imight have had on those drives.
For pools made up of multipledisks, we've got the choice of
(18:38):
either zfs or butterfs.
Now, if we were only to haveone drive in the pool, we would
also have the choice of XFS.
But for multiple drives it'seither ZFS, butterfs or the
encrypted Lux versions of thosefile systems.
Now, in my opinion, zfs winshands down, although there are
(18:59):
use cases for ButterFS.
I do prefer ZFS If we're usinga RAID 5 or equivalent.
Well, butterfs isn't the bestfor that.
Raid 5 in ButterFS, in fact, isstill not officially marked as
stable.
So I'm going to use ZFS hereand now I get the choice of how
I want to use these disks in myZpool.
(19:20):
So what I've got here?
I've got the choice of stripe,mirror, raid Z1, raid Z2, and
RAID Z3.
So a stripe what's that?
Well, if I was to use a stripe,this would put all of my four
disks together and stripe allthe data across it, but there'd
be no redundancy at all.
This would give me the bestspeed, but it would be quite a
(19:42):
risky thing to do.
So the next thing here is amirror.
So with a mirror, that'sexactly what it sounds like it
mirrors the data on differentdrives.
So here I can have two VDEVs oftwo devices, so that's
basically two groups of twodrives that would be mirrored.
Or I can have one VDEV of fourdrives, so that would just give
(20:03):
me four copies of the data, eachdrive being a copy of the other
.
Now, obviously, when you'reusing mirrors, we are losing a
significant amount of space.
So in my opinion, using RAID-Zis a good compromise between the
both.
So what are RAID-Z levels?
Now, if you're familiar withregular RAID levels, raid-5 is
(20:24):
basically what RAID-Z levels.
Now, if you're familiar withregular RAID levels, raid 5 is
basically what RAID-Z 1 is.
Now, the properties of RAID-Z 1mean we stripe the data across
all four drives but we lose thespace of one drive in the parity
calculations that are actuallywritten to these drives.
Unlike what we're used to in aregular unraid array where one
(20:45):
drive holds all of the parity,in RAID C1 the parity
information is striped acrossall of the four drives.
In fact this is one reason whyunraid arrays are really easy to
actually add disks to, becausethe parity is kept separately.
And in fact if we look at myunraid array here, you can see
(21:05):
here that I've got one drive ofparity making up my pool.
So basically a one disk parityarray is very similar to RAID C1
, because we lose one disk insize of available space in the
actual pool or the array due toparity.
Using RAID C1, I would havethree of the four terabyte
(21:27):
drives available for data, soI'd have a usable space of 12
terabyte.
Now if I wanted to be a bitmore cautious, I could choose
RAID C2.
And this would give me twodrives out of the four that
would be used for parity.
But because I've only got fourdrives that make up the pool, I
would be losing 50% of usablespace.
(21:50):
So RAID Z2 would allow me tolose any two drives in my pool
and still not lose any data.
But because I've only got fourdrives in this pool, I would be
losing two drives worth of space.
So it would give me a verysimilar protection and usable
space than if I chose a mirrorand had two VDEVs Now a VDEV
(22:13):
being a group of drives thatwere mirrored.
So again, I would lose 50% ofthe space.
But I could lose two drives andstill actually be okay.
Now I want to actually talkabout, when we come to choices
like this, of what actually isthe difference.
So if I'm going to lose, say,50% of the space of these drives
(22:35):
, what would be the advantage ofhaving a mirror of two groups
of two devices or choosing RAIDZ2 and having one VDEV of four
devices?
Well, if I chose the mirrorhere, in my opinion this is
actually going to give meslightly better performance
having two mirrored VDEVs thanif I used RAID Z2.
(22:58):
But with RAID Z2 I can lose anytwo of these drives and not
lose data.
But with a mirror with twogroups of two devices let's say
we've got group A and group B.
If I lost one drive from groupA and one drive from group B,
everything's cool, I'm not goingto lose any data.
(23:18):
If the two drives that failedwere both from group A, well I'm
going to lose the whole pooland I'll lose all of my data.
So if I want to actually besuper safe, I would use RAID Z2.
So any two drives can actuallyfail and it doesn't matter which
two that do fail, because I'veonly got one group of four
(23:38):
devices.
But if I wanted to go for alittle bit more performance, I
would probably use the mirrorand the two groups of two
devices.
Okay, so let's move on and thinkabout RAID Z3.
Now again, this just wouldn'tbe used really, if you've only
got four drives in your pool.
It's really pointless.
(23:58):
But what this allows us to dois have any three drives fail
and we don't lose any data.
Now if I had, say, 12 drives inthis pool, raid Z3 might be a
good fit.
But for my little 4x4 terabytepool I've got here, raid Z1 is
going to give me the best bangfor buck.
I can lose any one drive in thepool.
My performance is going to bepretty good.
(24:19):
So that's what I'm going tochoose.
Now you can see here that I'vegot compression turned on.
Now a lot of people worry aboutturning on compression.
They think if they turncompression on, well, it's got
to actually slow down the server.
Well, in fact, in 99% of casesit's the reverse of that.
It's quicker to actually readcompressed data and less of it
(24:43):
off the drives than it is toread more data that's
uncompressed and read that offthe drives.
Modern CPUs are so fast that itdoesn't really touch the sides
when decompressing compresseddata.
So the read and write speedsare just faster from having the
compression and plus we get tofit more data on our drives.
So in my opinion, it's awin-win.
(25:03):
Okay, so that's how I'm settingup my pool.
So with that done, I'm going toclick on our drives.
So in my opinion, it's awin-win.
Okay, so that's how I'm settingup my pool.
So with that done, I'm going toclick on to apply and then done
.
Okay.
So now we can see.
Here are my four drives in thepool.
Okay, so now let's take a lookat here where it says add
subpool.
Now these are basicallyauxiliary VDEVs.
(25:24):
Unraid calls subpools, andthat's because their additional
devices that can be added to thezpool provide specific
performance or functionalitybenefits.
So, unlike the main pool, thesesubpools serve specialized
purposes that can help improveperformance, but only in certain
workloads.
(25:45):
However, there's one criticalthing that we need to remember
If some of these auxiliary VDEVsfail, we can end up losing all
of the data on a pool.
So that's really somethingimportant to keep in mind.
And what I like to say is ifyou're not sure whether you need
a sub pool, well, you probablyactually don't, but anyway,
let's go through each type, whatthey do and whether, in fact,
(26:08):
they might be useful for you.
Now, I think for most unraidhome labbers, the only two of
these really that are worthconsidering is the slog and the
l2 arc.
The others, like specialmetadata and deduplication, in
my opinion, they're often moretrouble than what they're worth.
So, first up, we've got the SLOG, or what that stands for is
(26:30):
Separate Log Device.
This is for what are calledsynchronous writes.
Now, most everyday writes areactually not synchronous at all,
they're actually asynchronousand don't use this.
But some applications, such ascertain databases or NFS shares
these do actually require syncrights to guarantee the data
(26:51):
integrity.
So what does this slog actuallydo?
What it does is it gives a fastlocation for these rights to be
committed to before they'rewritten to the main pool.
So it basically makes thesynchronous writes faster
because it's going to like afast SSD first and so it can
improve reliability andconsistency for these type of
(27:12):
workloads.
Now, what a slog doesn't do?
It won't make your gaming VMrun faster.
It won't speed up your filetransfers unless they do rely on
synchronous writes.
I like to think of a slog a bitlike a car spoiler.
It looks fancy on, kind of likesupercars and things like that,
and, yes, it does provideaerodynamic benefits for those
(27:34):
type of cars.
But if we just got a littlefamily car and we only drive it
at 30 miles an hour, well, wecould stick a spoiler on it and
besides looking really cool andthat's debatable most home users
just don't need one.
So unless you know, yourworkload relies heavily on sync
rights, you don't really need aslog.
(27:54):
Okay, next, l2 arc, or whatthat stands for, is level 2
adaptive replacement cache, andthis acts as a secondary cache
for ZFS, which primarily usesthe RAM for caching recently
accessed files.
So when data is frequently read,zfs tries to keep a copy of the
(28:15):
most recent data in either itsRAM or, if you have an L2 arc,
when the RAM's maxed out, it cankeep it there as well.
So what does this do?
Well, it speeds up the readsfor data we constantly access.
But it only does that if ourRAM becomes full.
If it doesn't, then this won'tactually do anything at all.
(28:36):
So, in my opinion, if you'vegot a choice between an L2 arc
and adding more RAM to yourserver, add more RAM to your
server.
Zfs loves RAM, it's super fast.
And also more RAM in yourserver.
It benefits the server allround.
Now, one thing I think as wellthat a lot of people sometimes
forget with an L2 Arc device isit must be significantly faster
(29:01):
than the actual main pool.
Okay, so I think it's time foranother analogy Now.
I really do love my analogies.
Now, if you like coffee, likeme and I've got mine here
Imagine you go to work andthere's a Starbucks across the
street from your office.
You go in there and you pick upa cup of coffee and you put it
(29:21):
onto your desk.
Now, the fastest way to getyour caffeine hit is obviously
to reach across your desk, grabthe coffee and to take a sip.
But what happens when you runout of coffee?
Well, you're going to have towalk all the way back to
Starbucks and get another cupout of coffee, well, you're
going to have to walk all theway back to starbucks and get
another cup.
So imagine the starbucks islike the pool and the cup of
(29:41):
coffee on your desk is like theram or just the regular arc
cache.
Now an l2 arc is a bit like youput a coffee machine down the
hall a bit in the break room andso you don't have to go all the
way to starbucks to get acoffee.
You can more quickly get one bygoing to the break room.
But if you put that same coffeemachine up on, say, the third
(30:03):
or fourth floor, then you mighthave to go all the way up the
stairs.
It's going to be really tiringand it'll take you longer than
it would do just to pop out thedoor, pop across the street to
Starbucks and grab a coffee.
So my roundabout way with thiscrazy silly story is basically
what I'm trying to say is youalways have to make sure with
your L2 arc device that it isactually faster than the actual
(30:26):
pool you're pulling the datafrom.
If it isn't, then you're reallywasting your time having an L2
arc because it would be as fastor faster just to pull the data
straight from the pool anyway.
Okay, so let's move on to myleast favorite auxiliary VDEVs.
Now I'm going to talk about thespecial meta VDEV.
Now, this auxiliary VDEV canstore metadata like file
(30:48):
structure and small files on afast device, basically to
improve access time.
So what does this driveactually do?
Well, it speeds up operationsthat involve lots of metadata
lookups, like directories withthousands and thousands of files
.
Now there is a big downside.
The downside is, if this VDEVis lost like you don't have it
(31:10):
mirrored, you only had one youwould actually lose the whole
pool.
So imagine that you had, say,10, 20 terabyte drives in your Z
pool and you just had one 1terabyte NVMe that you used as a
special metadata VDEV, and thatone NVMe fails.
Well, you're going to lose thedata on the whole of the pool.
(31:32):
So unless you've really got aspecial reason to use a special
VDEV, then I would advise not to, and personally, if I was going
to use a special VDEV, I wouldprobably have it triple mirrored
.
You really don't want that tofail because you would lose all
of the data on the pool.
Okay, I think it's time foranother analogy.
(31:52):
So imagine a pool without aspecial metadata VDEV.
It's basically like a deliverydriver who uses a map.
He gets around, he looks up theaddress, looks on the map, gets
his paper map out, has a lookand gets to the destination.
So having a special metadatavdev is a bit like he's got a
gps, so it's great, he caneasily get around much quicker
(32:15):
than using the map.
But as soon as that GPS failsand he doesn't have that anymore
, well, he can't actually do anydeliveries at all.
He knows the addresses, buthe's got no maps and he can't
see where anything is.
So, in my opinion, for us homelabbers, we probably don't
really have the use case thatwe'd need to have a special
(32:36):
metadata VDEV.
So I think it's probably, in myopinion, best avoided, and the
same I'd say with thededuplication VDEVs as well.
So how does deduplication workin ZFS?
Well, basically we don'tactually need to have a
dedicated deduplication VDEV inorder to use deduplication.
(32:58):
It will normally just use RAM,but it does use huge amounts of
RAM.
I think it's about five gigsper terabyte of deduplicated
data that we need to have fordeduplication to work properly.
And so what the deduplicationVDEV does is we can add an
additional drive to actuallystore the deduplication tables
(33:19):
on that drive when we don't haveenough RAM.
But for most of us we probablydon't have loads of duplicated
data.
Now if we had millions of, say,windows 10 install ISOs, yes,
we'd probably save a lot ofspace.
But for people who use mediaservers and that kind of thing,
I doubt you're going to havehundreds of copies of the same
movie and that kind of thing.
(33:40):
Now an analogy for deduplicationImagine that I hire someone to
stay at home and I say when I goto the shop I'm going to call
you, look in my cupboards andcheck I don't buy the same
groceries.
So I give them a call and I say, hey, pasta, do I have pasta?
And they say, no, you got nopasta.
(34:00):
I think, well, yeah, that'sbecause I ate it all last week
and I wouldn't be going shoppingif my cupboard was full of food
.
So what I'm trying to say herewith my analogy is it's costing
me more money to pay that personto be at home looking in my
cupboards and my shopping trip'staking me twice as long because
I'm having to call them and say, is that food in the cupboard,
yes or no?
And then they have to tell me.
(34:21):
So basically, deduplication aswell.
If that VDEV actually failed, Iwould lose access to the data
on that pool, just the same as Iwas talking about with these
special VDEVs earlier.
So I think for most people youprobably don't need to use a
D-Duke VDEV.
That's just my opinion.
(34:43):
Now the last auxiliary VDEVs I'mgoing to speak about.
They're not fully supported inUnraid yet, but they are coming
soon.
They're spares and they areexactly what they sound like,
basically a spare drive you canadd to a pool.
So should one of the drivesfails, it will automatically
basically a spare drive you canadd to a pool.
So should one of the drivesfails, it will automatically use
that spare drive, pop it intothe pool, re-silver the data and
(35:05):
you don't actually have to swapout the drive yourself.
So really, really useful in myopinion, right, okay?
So anyway, that's enough aboutthe sub pools, let's move on and
have a look at some otherthings.
Okay, well, that took me a bitlonger to actually talk about
the auxiliary vdevs than Iactually thought it would.
So now here I'm on a differentserver.
(35:27):
This is a fresh install ofUnraid here, because I wanted to
show you, with Unraid 7, what anew install would look like.
So with Unraid 7, by default,the slots for the array devices
are automatically set to noneand there are no pool devices.
So if I wanted to add an array,well, I would choose the amount
(35:49):
of slots here.
Now the minimum is three andthe maximum here we can have up
to actually 30.
So that would be two paritydrives and up to 28 data drives.
Like I said, I do love theUnraid array.
It is so versatile One of myfavorite things about the whole
OS.
To be quite honest, now I'mgoing to just say I'm going to
(36:11):
use three drives here.
No, in fact, I'm going to usefour, because two slots will
always be taken by parity.
So I'm going to put one paritydrive in here and two data
drives.
Now I've still got two drivesleft here, so I could actually
add them to the array or I couldadd them into a separate pool.
(36:35):
I think what I'm going to do isI'm going to add these into a
separate pool.
I think what I'm going to do isI'm going to add these into a
separate pool.
I'm going to have two differentslots, add those drives in here
and use my favorite file systemfor pools.
I'm going to choose these to beZFS and I'm going to mirror the
two drives and put oncompression.
Okay, so when you've got yourstorage set up how you want, all
(36:59):
we'd need to do then is just toclick start, and what this will
do is it will start up thearray and it will format all of
these drives and start buildingparity.
Now, as we can see here, all ofthe drives they're currently
not formatted.
So I actually have to come hereand choose to do that and
(37:19):
format all of the unmountabledisks.
So I'm going to do that andclick format.
Ok, so we just need to wait forthese drives to format and then
after that, the parity sync tobe completed.
Ok, so everything's done now.
So we can see here a freshserver on Unraid 7 is all set up
(37:41):
so slightly different how weset up a server from scratch on
Unraid 7, the changes being justhow we actually select the
drives and pulls.
Okay, so I'm going to popacross now to another server
this one here that's alsorunning Unraid 7, and let's
check out on this server all ofthe cool new features that we
(38:02):
can find in Unraid 7.
Okay, so now in Unraid 7.0,let's get a little bit of
insight based off numbers.
So, if you can remember,earlier we had a look in Unraid
6.12 what kernel version we had,what Docker, docker version,
libvert and QMU.
So let's do the same here.
Okay, so, kernel version.
(38:23):
I think we've probablymentioned this multiple times
today, but anyway, let's mentionit one more time.
So Linux kernel version in 7.0is 6.6.68.
6.6.68.
And let's have a look at Docker, and the Docker version we can
see here is 27.0.3.
Now let's have a look at thehypervisor.
(38:49):
Let's click on the VM managerhere.
So here we can see the libvertversion is 10.7.0.
And QMU we're running 9.1.0.
Okay, so that's the boringnumbers out the way.
Now let's go across and have alook at the dashboard.
Okay, so here we are on thedashboard in Unraid 7.
But I've also got anotherserver up that's running Unraid
(39:10):
6.12, so we can just compare thedashboards on each.
Now this is obviously 6.12.
And if we look at this tilehere, where it gives the name of
the server, the model, thelicense type and the uptime,
well, if we go across to Unraid7, we can see this tile's been
greatly improved.
I really like the fact thatit's got a clock, and clicking
(39:33):
onto the clock brings us throughto the date and time settings.
If we need to make any changesNow.
The next thing that is greatlyimproved, in my opinion, on the
dashboard is this system tabhere, which shows our RAM usage,
flash drive usage, log usageand Docker image here.
Now, if we compare it to theearlier version of Unraid, we
(39:56):
actually had five things that wecould see here RAM, zfs, flash,
log and Docker.
As we can see, it was in abasic bar graph here.
Now let's pop back to Unraid 7.
And what we can see with theRAM here.
Now there's not much RAM beingused on this server for me, but
the RAM usage is actually splitup into different colors as well
(40:18):
as being written down here whatit consists of.
So my system ram's using fourgigs cfs only 625 megs, docker
633 megs, so I've got 120 gigsfree.
So this is a really nice,presentable way to show
everything really, really,really easily.
It's much less confusing, Ithink, than the original, where
(40:41):
it is just these bar graphs.
Ok, so other things that arenew the Docker container part
here, which shows the Dockercontainers on our server, where
we can toggle it on from all ofthe containers to just the
started ones.
This has remained well exactlythe same.
Looking here, we can see nothingadditional has actually been
(41:02):
added.
But let's look at the virtualmachine one underneath here.
Well, nothing's actuallychanged in Unraid 7 for that
particular piece, but if I startup a virtual machine here and
we can see this one's runningnow underneath here, we can see
some stats here for the virtualmachine usage.
So we can see that the guestCPU is using 1.6% of what I've
(41:25):
assigned and the host CPU, well,it's only using 1.5% as well,
and we also get some nicemetrics here for memory, disk
and network.
So that is a really cool thing.
I think that's been added.
It's nice to be able to seethat on the dashboard.
And whilst we're just lookingat this virtual machine usage, I
think why not go over and lookat the VMs tab here on 7, and we
(41:48):
can see that same informationis presented at the top above
all of my VMs here.
So two places to see it on thedashboard or on the VM tab
itself.
So other than that, I don'tthink there's really much
different on the dashboard thanthere was in Unraid 6, but
definitely some really niceimprovements that make it look a
(42:09):
lot better.
Okay, let's move on to the maintab now.
Well, obviously, as what wepointed out before we don't need
to have an Unraid array anymore.
And if I go across to my otherserver here, we can see here
that we actually have to have anarray.
Hence I've got one here.
Now I don't have a parity driveon this array, basically
(42:30):
because this server is not onall the time and all it does is
actually back up my mainserver's array here.
So that's why you don't see aparity disk.
So, going back across ontoUnraid 7, onto the main tab here
, one other thing that'sslightly different that you may
not notice is if we scroll rightdown to the bottom here, well
(42:50):
there is something different,very minor, that you won't
really see Now, obviouslybecause this Unraid 7 server
doesn't have an array now.
This would be present if it didhave an array.
There's no history button here.
If I go on to a server with anarray this Unraid 6 one here
well, here's a history buttonhere, and if I go on to my main
(43:11):
server, we can see the paritycheck history displayed at the
bottom.
So obviously, no Unraid array,no parity check history.
Okay, so now let's look atwhat's new in shares here.
But before looking at what'snew, I think it makes sense.
Really, we go back to theUnraid 6 server here and we can
see here I've got the array,I've got one cash pool here and
(43:35):
a second here.
And for those of you guys whoare really paying attention, yes
, this second pool wasn't here amoment ago.
I've got one cache pool hereand a second here.
And for those of you guys whoare really paying attention, yes
, this second pool wasn't here amoment ago.
I've just added it todemonstrate this next part.
So if I go to the shares tab onUnraid 6 and I click add share,
well, let's make a share andcall it test and we can choose
the primary storage from any oneof the pools in the server.
(43:56):
So if I wanted the primarystorage to any one of the pools
in the server, so if I wantedthe primary storage to be the
regular cache here, I couldchoose that.
And then for my secondarystorage I've only got the option
of having the array and themover action.
It can move it from the cacheto the array.
So the first place the filescan be written can be on some
fast storage on the SSD cacheand then mover later on moving
(44:21):
it across to the array.
But there's no option here toactually have any other pool as
my secondary storage, and that'sthe big change in Unraid 7.
If we go back to Unraid 7 nowand here we add a share and we
call it test the same, and formy primary storage again, I've
got three pools here.
So if I added it to say warpspeed, all of my primary files
(44:45):
will go here first.
But for my secondary storage Ican choose any pool or the array
.
I can have it go anywhere Iwant.
So if I want it to go to ZR, Ican add that as my secondary
location and mover action, justas before.
We can have it move either way,the standard where we write the
files to the fast pull firstand then later on move them to
(45:07):
the slower pull.
But also we can do it the otherway around.
So you might think well, ifwe're writing it to the primary
storage, which is warp speed,why would you want mover to move
it from z rust to warp speed?
Well, there's a very goodreason for that is if I have my
primary storage and this mightbecome full, what this share
will do then is it will continuewriting the data onto the
(45:29):
secondary storage z rust here,and then what mover will do
instead of moving everythingfrom the primary to the
secondary.
If it ever sees anything on thesecondary and there's enough
free space on the primary, itwill move it back.
So setting mover to thisdirection basically makes your
primary storage the preferredlocation for data when space
(45:51):
allows, and that's anotherreally good reason why to put a
minimum free space amount in,another really good reason why
to put a minimum free spaceamount in.
So if I put 100 gigs here forthis share, if there's ever less
than 100 gigs, it will startputting it on ZRust, but
otherwise everything will alwaysstay on warp speed.
Okay, so that's all that's newwith shares, but something I
(46:12):
think that is really reallyuseful.
Okay, for the next new featurein Unraid 7 that wasn't in 6,
I'm going to go across to mymain server, I think.
Okay for the next new featurein Unraid 7 that wasn't in 6,
I'm going to go across to mymain server, I think.
And here at the top you can seethere's a tab called Favorites.
If I click onto that you cansee here I've got Docker Fix,
common Problems, samba SystemDevices, system Drivers,
(46:32):
tailscale, usb Settings, updateOS and VM Manager.
So how do these all get here?
Well, let's go back to thisserver here, and if we go to
either the settings tab here andwe hover over any of these, if
we click the little heart buttonhere, it adds it to favorites.
And we can do exactly the samefrom the tools menu.
(46:54):
Here as well, we can add thingsinto a favorite, which I find
really useful, because sometimes, to be honest, I tend to forget
if an item is in tools orsettings, because they're both
quite similar.
So once we actually add thingsinto our favorites here, we can
just put the things here that weuse a lot and we don't really
(47:15):
have to remember where they are.
And if you don't want itanymore, well, you just click on
to the little trash can hereand remove them off and your
favorites bar will disappear.
Okay, now let's move on tosettings here, because we have
got a few new settings in Unraid7.
The first thing here that's newwe've got this power mode which
(47:36):
basically allows us to run ourserver in different ways.
We can run it with bestperformance, balanced, if that's
available, or best powerefficiency.
Now you might wonder why thisis grayed out.
Basically, because my CPUdoesn't have that option, but
some CPUs will and the ones thatdo, obviously well, they're not
(47:57):
going to be grayed out.
So I've got the choice of bestpower efficiency or best
performance.
Now this server I have runningas best performance because this
is my most powerful server forrunning VMs, but my main server
here you'll notice the powermode on this one is running as
best power efficiency becausethis one's on 24-7.
(48:18):
Okay, so another new featureunder the network services here
is this outgoing proxy manager.
So, simply put, an outgoingproxy is a bit like a middleman
that sits between your unraidedserver and the internet and what
it does is it routes certaintypes of network traffic through
another server.
Now, this can be useful inworkplaces or places where you
(48:41):
need to route all of theinternet traffic through a
specific system for things likesecurity and monitoring.
So in Unraid this will be usedby the web interface and some
processes, but it won't be usedby docker containers and VMms.
So that's something to keep inmind.
But basically, the key point Ithink is if your server's
(49:01):
already up and running, andrunning smoothly, and you're
thinking, what even is anoutgoing proxy?
Well, don't bother about it,because you probably just don't
need it.
If you're going to use thisfeature.
You probably already know thatyou need it.
It can be used in some workenvironments or just for users
who want to control theirnetwork traffic flow more
carefully.
Okay, so I think everythingelse in the settings is just the
(49:26):
same.
Now plugins again, nothing newon the plugins tab, but if we
come across the docker, well,there is a whole load of new
things here.
Now I have spoken in detailabout the tailscale integration
into unraid docker container, soI'm not really going to go into
it that much in this video.
(49:48):
So if you want to know allabout tailscale and unraid, then
I really suggest you watch theuncast video where we really
deep dive into that, looking atall of it in detail.
But for those of you whohaven't seen it, we'll quickly
talk about it.
What we can do is we can take acontainer.
So let's take this Firefoxcontainer here and if I go to
(50:09):
edit and scrolling down here,you can see this button here
we've got called use tailscale.
If I toggle that on, what thisallows me to do is install
tailscale directly into thisdocker container.
So what I will do is I'll callit firefox and then scroll down.
I'm not going to set anythingelse at all here.
(50:29):
I'm just going to click on toapply.
And now at the bottom you'llnotice on docker pages, we've
got a little button here thatsays view container log.
Now this is just quite usefulfor nothing to do with tailscale
, just generally, I find itquite useful to be able to view
the log straight away afterinstalling a container.
But we're setting up tailscalefor the first time, we do
(50:50):
actually have to click thisbutton, or well, we have to view
the log anyway, so we can seehere that the server's installed
Tailscale into this container,and so all I need to do now is
authenticate this by signinginto my Tailscale account, which
will then add this containerstraight into my Tailnet.
So why is that useful?
Well, it means we can accessthe containers from anywhere we
(51:13):
like, but also we can actuallyshare them with other people.
You just pop their emailaddress in and click on to share
, and then that means anyonethat I want to, I can have them
share this firefox containertotally privately.
It's not exposed on theinternet.
So a really useful feature inunraid 7.
And now, if we look back at theinstalled container here, we
(51:37):
can see there's a little iconthat tells us that Tailscale is
installed inside of thiscontainer.
And now, clicking on thecontainer here, you can see
we've got an additional web GUIbutton here which uses the
Tailscale address.
So if I click onto that,allowing us in this case to log
into Firefox through ourTailscale address.
(51:57):
So definitely a very usefulfeature, okay, so moving on to
the VMs tab now.
Now there's a lot of changeshere.
We've already seen at the tophere where we can see various
metrics about the running VMs,and if I was to start up another
one, we can see metrics foreach that are running.
(52:17):
And if I was to start upanother one, we can see metrics
for each that are running.
Now, one very nice feature aswell is we can actually now
create snapshots of our VMs.
So here, if I click createsnapshot, I can actually create
a snapshot of this running VM.
And when I have this littlebutton checked here memory dump
it will even make a snapshot,dumping the whole ram of this vm
(52:40):
as well into the snapshot.
So what that means is, when Istart back up the vm, it will be
in the exact same position asit is now.
So if I had an excelspreadsheet open, for instance,
that same spreadsheet would beopen if I was halfway through
watching a video.
It would continue from thatpoint in time where the snapshot
(53:00):
was taken that I was watchingthe video.
So here we can see we've got asnapshot name and we can give it
a description.
So the description I'm justgoing to call it uncast.
So you can see here that thenative file system that I'm
using is ZFS.
So if I check this, it woulduse ZFS to make the snapshot.
(53:21):
If it's unchecked, it will useQEMU to make the snapshot.
Now I'm going to use QEMUmyself here.
Now for this VM.
I'm not going to do a memorydump and I'll explain why in a
moment.
So I'm going to click onproceed and take the snapshot.
And now if we look at this VM,we can see this VM has got one
(53:42):
snapshot.
And if we look at the othershere we can see it says they all
have none.
Well, in fact this NixOS one,it looks like I've made a
snapshot before.
Now I did say I wasn't going toactually take a snapshot of
this VM and dump the memory atthe same time.
Now I'm going to show you why.
So if we look at this VM here,I've got an RTX 3080
(54:06):
pass-through to it.
So if I try and take a snapshotnow let's call this Uncast 2 as
the description and I leaveMemory Dump enabled and click,
click, proceed I'm going to getan error.
You can see here thepass-through devices are
mentioned here saying that VFIOmigration is not supported in
(54:28):
the kernel.
Now, basically, this is becauseI'm trying to take a snapshot
of the RAM in the VM andpass-through hardware does
complicate matters.
So if you get that error, justkeep that in mind.
You won't get that error if youtake a snapshot of a VM with no
hardware pass-through.
Okay, so let's create a brandnew VM and we'll take a snapshot
(54:51):
of that in a moment because itwill give me a good opportunity
to show you some of the cool newfeatures in Unraid 7 regarding
VMs.
So obviously I'm going to clickon to add VM here and I'm going
to choose a template.
I'm going to install a Linux VM, so I'm going to choose Linux,
so I'm going to give it a nameand I'm going to call it PopOS.
(55:13):
So just as we to we can put ina description here.
So let's call it test1vm.
But underneath here we can seethere's something different.
Now I'm going to go back across, I think, to Unraid 6 quickly
so we can see the VM templatethere.
So here's the exact sametemplate on Unraid 6.
(55:34):
So we can see, here we've onlygot description.
Then we come to CPU mode andthen our logical CPU.
So let's go back to 7.
And here we have a web UI thatwe can actually start from, and
clicking here on the littlequestion mark here it expands
(55:55):
information that we can seeabout the various sections.
And here under Web UI, we cansee here that we can actually
change the Web UI for which wewant, when we click on it, for
the VM to go to.
And a great example of this ifwe look on my other VM here
where I run Home Assistant, onmy other VM here where I run
Home Assistant, clicking ontohere and then going Open Web UI
(56:23):
here I've specified the web UIof the Home Assistant VM then
clicking here it goes straightinto Home Assistant.
But also one thing to notice iswe can still also just go into
the normal VNC console as well.
So in my opinion a reallyuseful feature for VMs that may
be running various services,because we can just click on the
open web UI and go straight in.
So basically any OS that'smanaged by a web UI.
(56:45):
Well, we can actually specifyit here, and it makes it super
easy for us to be able to accessand manage it.
Okay, so next we can choose thehost CPU or an emulated QMU CPU.
But if we see here, there'sthis extra part here where it
says migratable, and this can beturned on and off.
(57:05):
Okay, so just what is thismigratable?
Well, in QMU, migratable isactually by default turned on,
and what it's used for is forlive migration.
It lets you move a virtualmachine between two different
physical servers withoutactually shutting them down.
Now, here's one thing, though,is Unraid doesn't actually
(57:27):
support live migration, so wedon't need this feature, and
actually leaving it on can limitthe CPU's performance in VMs,
because it hides some advancedfeatures that keeps things
compatible across differenthardware.
So, since we don't need it, myadvice is to actually turn it
off, and you're going to getbetter performance, because your
(57:49):
VM then can take advantage ofthe full power and all of the
features of your CPU.
Okay, so, obviously, I'm goingto leave this turned off.
Now I'm going to choose somelogical virtual CPUs here.
I think that's going to beenough.
Now.
(58:11):
Personally, I never have thefirst CPU ever pinned with my
VMs, because Unraid tends towant to use that one, so I think
it's best actually to leavethat unpin.
Okay, so memory I think eightgigs is going to be enough.
And machine type here we canchoose QMU or I440FX and we can
see we can go up to 9.1 here.
That's because it's related towhat we saw earlier when we
(58:32):
looked at the QMU version here.
So whatever the QEMU version is, you're always going to have
that version that we choose inour VMs here.
So I'm going to use Q35 here.
Now, everything else here isthe same as it was in Unraised 6
.
But there's one thing I'm goingto show you in a moment is
connecting an install ISO to theVM.
(58:54):
Now, of course, course, we cando it as we used to, by clicking
here, and then that brings upthe ISO share on the server and
we can choose our ISOs this way.
And now I'm actually going tochoose the wrong ISO.
I'm going to choose BASITE hereand I'm not actually going to
be installing BASITE, becausethis is Pop OS, and I'm going to
come back and show you how wecan easily change the ISO in a
(59:16):
moment.
So let's scroll down now andadd a virtual disk.
So let's make this 50 gigs andI'm going to select a QCAL 2
disk because I prefer QCAL 2personally.
Now there's one new thing herewe can see here discard.
We can basically turn the trimon and off on the VM if the
VDISC is on an SSD.
(59:37):
Now we didn't have this inUnraid 6, as you can see here.
So by default this is actuallyon Now, just as in Unraid 6, we
can specify a serial number forthe VDISC if we want to.
But let's move down to the nextnew feature.
Here is if we pass through aGPU.
So here, say, I was going topass through my RTX 3080 and
(01:00:00):
obviously, passing through a GPU, you should always pass through
the sound counterpart.
But what we can do now inUnraid 7 is we can, when we're
passing through a GPU, we canenable multi-function here, and
what this does is it basicallymakes the GPU appear like a real
piece of hardware, becauseobviously with a GPU, the VGA
(01:00:22):
part and the sound part are onthe same piece of silicon that's
plugged into your PCI slot.
So if we don't enablemultifunction, it can make the
GPU look like it's two separatepieces of hardware.
So by enabling multifunction.
This gives us betterperformance in the VM when we're
passing through a GPU.
Now, the only way to do that inUnraid 6 was to actually edit
(01:00:44):
the XML, which could be rathertricky.
So now we've got the optionhere to be able to turn this on
and off from inside of a GUI.
So I think that's a really,really nice improvement.
But I'm not actually going to beusing a pass-through GPU for
this VM.
I'm going to be using a virtualGPU, and let's get rid of the
sound as well.
So here, nothing really that'sbeen added.
(01:01:06):
So let's scroll down to thenext new feature Now in Unraid 6
, this would have been the endof the actual template, but can
you see here it says advancedtuning options.
Well, let's go to Unraid 6, andat the bottom we don't see that
at all.
So if I scroll down evenfurther, we can see there's some
more advanced features that formost users you probably won't
(01:01:27):
need, but they can be really,really cool.
Now, something I really likehere is this QMU command line
part where we can put inbasically special XML that
allows us to do fancy thingswith our VM.
Now I'm going to show you onething on another VM where I use
this and that's this VM herewhich is called Razer Laptop.
(01:01:49):
Now, this VM actually, I neveractually created it as a VM
specifically.
This actually used to be myRazer laptop before I was
drinking a cup of tea and Imanaged to drop it on the laptop
and destroy the machine.
It was a really sad day for me.
But so what I did is I took outthe NVMe and I popped it into
(01:02:11):
the Unraid server and I copiedthe NVMe.
That's why we can see here it'sabout a terabyte.
Now I had a lot of software onthere and various kind of
licensed software that I wantedto make sure would run properly.
So what I did is, if we look atthe template of this one and I
scroll down, you can see hereI've put in some extra QMU
(01:02:35):
command line.
So what I've done is I'vespecified various things to make
this look like it was my Razerlaptop, and so this is actually
the VM running Now, the Razerlaptop.
It had a 3080 inside of it, sothat was quite lucky because it
was the same GPU I had inside ofmy server.
(01:02:55):
So we can see that's here.
But if I open up the settingshere and look about system, we
can see here that it thinks it'sa Razer Blade 15 advanced model
mid-2021.
Now, also, I made sure that thedevice ID and product ID
matched for this Windows VM sothat all of my software would
(01:03:17):
work.
Now, something else that ispretty cool is if we check what
the UUID of this actual VM is.
That's the UUID here.
Now, I specified this insidethe QMU command line as well.
Inside the QMU command line aswell, and putting it here
overrides what's in the XML whenthe VM is first created.
(01:03:39):
Now I'm going to show yousomething pretty cool which I
didn't show you earlier is we'vealso, in Unraid 7, got this
little button here where we canshow inline XML.
So what this can do is show usthe XML alongside the graphical
GUI display of the VM.
So I think that's really coolthat we can see both together.
(01:04:00):
So here you can see the UUID ofthis actual VM that the
hypervisor specified.
Well, I've overridden it withwhat the UUID was really on my
Razer laptop at the time.
So what this did is allow me tobasically keep running my
laptop, and Windows wasn't anythe wiser.
(01:04:20):
Now, using this in combinationwith other techniques can be a
good way of making an OS thinkthat it's not running actually
as a VM Now I might do adetailed video in to do that at
some time.
So if you want me to, if enoughpeople ask, then we might make
a video on that.
Okay, so that's what the QMUcommand line part of the VM
(01:04:40):
templates for here Now.
Also here we can change theclock offset and the timer
source.
And a very interesting thing atthe bottom here is something
called EvDev.
Now this is another way ofpassing through things like
keyboard and mice.
Now I don't actually haveanything plugged into my server
at the moment, but what it doesis it allows you to pass it
through in a different way,basically, than when you plug in
(01:05:04):
a USB keyboard or mouse intoyour system and have it pass
through that way.
So EvDev can have twoadvantages.
It's got slightly betterperformance and lower latency
than even if you pass throughyour USB keyboard and mouse as a
USB device here.
It also allows us to passthrough USB keyboard and mice to
(01:05:24):
really old systems.
You know things like Windows 95that don't even have USB
drivers and still be able topass through keyboards and mice
to systems like that.
Okay, so that is all of the newthings in VMs in Unraid 7.
So I better not click on Createbecause, remember, I've got the
Bazite ISO here.
(01:05:44):
So I'm going to untick Start VMAfter Creation and I'm going to
click on to Create.
Okay, so here's the VM.
Now, if we move across here, wecan see this column here where
it says V disks and VCDs.
So V disks well, we all knowwhat that is virtual disk, and
here VCDs is basically ISOimages, virtual CDs and DVDs.
(01:06:06):
Now, remember, I had the BASITEimage in and if I click here we
can actually see that.
Now, notice this little ejectbutton.
So I could remove it this way.
So now we can see no CD isinserted.
So I could either click here orhere now, and now we can select
an ISO image.
But the good thing is is we canselect it from anywhere on the
(01:06:26):
server.
Now, when we're doing it in thetemplate, it only allows us to
select from the ISO share.
So say, you've just downloadedan ISO and it's in your download
share on the server.
Well, this would be the way youwant to add it.
Because here you see, I canbrowse through all of my shares
here and add an ISO image fromanywhere I want.
So anyway, I'm installing Pop OS, so let's install this one here
(01:06:49):
, and I'm going to click on toinsert, and so now you see that
we've actually swapped over theimage to the correct one.
So now I can actually start upthe VM and do the install.
Oh, ok, so it's all installed.
Let's log in.
Ok, so I'm going to open upYouTube here.
(01:07:10):
Oh God, no, I'm not a robot.
Right, let's type youtubecomrather than assert.
Now let's put on a cat video,okay.
So as this is a short, itshould just keep replaying and
replaying.
So I'm going to minimize thisnow.
(01:07:32):
So what I'm going to do is I'mgoing to try and take a snapshot
now.
But I'm actually going to haveanother error Now.
I wanted to show you this soyou can understand why the
errors happen and not worryabout it if you have the error.
So I'm going to click on tocreate snapshot and, if you
remember, I said that we candump the memory when there's no
(01:07:53):
hardware being passed through.
I said that we can dump thememory when there's no hardware
being passed through.
So I'm just going to call thisfirst install and I'm going to
choose memory dump and I'm notgoing to check this.
I want to use a QEMU snapshotand I'm going to click proceed.
So three, two, one error.
So what we can see here is itcannot migrate the domain.
So remember, when I was talkingabout the migratable setting in
(01:08:17):
the VM template, I said Unraiddoesn't actually use this
feature to migrate a VM from oneserver to another, but if we
want to make snapshots and dumpthe memory, we do kind of need
this.
So it's a choice that you haveto make.
Do you want slightly betterperformance and have migratable
turned off, or do you want to bewant to take snapshots of the
VM and dump the memory at thesame time?
(01:08:38):
Okay, so let's turn off this VMand edit it, and we'll change
the CPU to be migratable andstart it back up and go straight
back to YouTube and play ourcat video.
Let's minimize this now, andnow let's try and take our
snapshot.
So, third time, lucky, hey.
So I'm going to click on tocreate snapshot Again.
(01:09:00):
I'm going to call it first,install, I'm going to dump the
memory and I'm going to clickproceed, okay.
So finally, we've actually gotour snapshot, along with the
memory being done.
Okay, so let's go back and thevideo is still playing.
So let's close this, okay, sothat's all closed and let's shut
this down.
Okay, so how do we actuallyrestore a snapshot?
(01:09:22):
Well, what we do is we go toour VM and we click onto it.
Now.
Here we can see snapshots atthe bottom here's the
description I gave it, sayingfirst install, the date and time
the snapshot was made and thetype of snapshot that it was.
And here it tells us the parent, which is the base install when
I actually installed the VM.
(01:09:43):
And we can see here that theVDISC is no longer the VDISC one
like we had earlier.
So let's start back up the VMand let's go in here and just
delete a whole bunch of files.
So I'm going to delete thesefolders here, move them to trash
and let's empty the trash andwe'll imagine those folders were
(01:10:05):
all full.
So let's shut down the VM.
So, back at the VM, let's goahead and restore the snapshot.
So let's click onto the VM hereand at the bottom here we can
see snapshots and here, if weclick on these little two lines
here here I can click revertsnapshot and go back to this
snapshot.
So I'm going to click onto thatnow and what we can see here is
(01:10:27):
it's going to remove this vdiskhere, which is what we're
pointing to at the moment.
So I'm going to click on toproceed and do that.
And so now do you see thatwe've gone back to vdisk1.qcal2.
So that was the base image ofwhat the snapshot was actually
using.
So it's kind of slightlydifferent to what you might be
(01:10:47):
used to with ZFS snapshots,where you actually roll back to
the snapshot.
When you roll back with a QMUsnapshot, you kind of roll back
to the snapshot.
When you roll back with a QMUsnapshot, you kind of roll back
to the moment just before youtook the snapshot.
So we can see the VM is runninghere now.
So let's open up the VNC windowand, hey, the cat video is
playing, absolutely awesome.
(01:11:08):
So because we actually dumpedthe memory as well, the VM is
just continuing from that momentin time.
And if we close this now and wego and look at our files and
folders, well, they're all backas well.
So it's very easy to be able totake snapshots and restore VMs.
But just remember the caveatswhen it comes to snapshots and
(01:11:31):
the criteria you need if youwant to make a snapshot and dump
the memory at the same time.
Okay, so I think that's prettymuch everything in the new
Unraid.
I can't think of anything elseto tell you, but I'm pretty sure
after publishing this videoI'll think of something.
But hey, I'm going to show youguys something before I go.
(01:11:53):
I've just got a new hard drivethis morning.
This is actually the largestone I've ever had 22 terabytes
and I'm going to be using thisin an upcoming uncast video that
should be out very soon, whereI'm going to build an extremely
low power server.
It's going to be sippingelectricity in the same way as a
(01:12:14):
politician sips the truthsparingly, if at all.
Anyway, everyone, this bringsus to the end of this Uncast
show.
Now, remember, if you want towatch about Talescale, then
check out the Talescale episodeon the Uncast show and, as
always, I'll catch you all inthe next one.