 Tommy here from Orange Systems and we're going to talk about the 45 Drives Houston Command Center. And there's a couple of things I want to mention right up front. First, this is not a sponsored video. The servers that we have that we're being demoing this on were purchased by me for a project where a partner with 45 Drives. But I want to make sure that's clear up front. Second, you don't have to own or buy a 45 Drives to use the Houston Command Center. It is open source. It is available for free via the 45 Drives GitHub. And we're only going to cover some of the basic features of it and why I like it because they have a lot of great tutorials over on the 45 Drives YouTube channel that once again are not 45 Drives specific, but their tutorials on some of them how to use the Houston Command Center and a whole lot more on storage, best practices and lots of open source goodness over there. So I do recommend checking out their channel and their knowledge base. Now the Houston Command Center, everything I'll be showing is available at the open source with the minor exceptions of the chassis specific features that I'll be showing. And those are highlights of what happens when you mix the hardware company and the software people all together, you get a really nice UI that allows you to manage all those different drives and be able to visualize them. So we'll be covering those parts and those I will say are unique to having a 45 Drives chassis along with this software. But as far as the ZFS manager, it's great. And that's the part I really want to highlight is the fact that it makes managing ZFS on Linux easy. So let's just drive into it and log into the console. Now something I'll note before I log in is I will be zooming in and out right now it's at the 100%. Just in case you think things are wrapping a little weird, I do that to make things more viewable and more easier to consume from the viewers here because sometimes things can be a little bit small, but it does look great on a 1080 screen. So we're going to log in, we're logging in with root because we need to do things with a high level of privilege to make all these changes. And now here's the basic interface to kind of get you started. Here's the overview. We have some information here. We have some statistics that it has over time to look at things like, you know, load averages. It's kind of neat the way it scrolls this way. And you can see when I was actually doing some more testing on the server here, but gives you a brief overview when you get in there. There is a networking module so you can go through and set your network settings. For example, we can look at this particular adapter. We can see that it's connected at 10 gigs. We'll zoom in a little bit, make it a little easier to see. And then if we need to edit any of these settings, changing it from your standard DHCP, we can click edit. And from there, we can go and set the different functions. So we can change it to manual, put an address, gateway, set our DNS, set our routes, set our DNS search domains. Each one of these can be set all through here. I'll leave it at DHCP for now. Also nice that you have history. So when you're looking at some of the networking, you can quickly kind of get an overview of the type of traffic going across the adapters that are connected. Now, we'll do the ZFS part last. I want to run through some of the other features. And the reason there's a separation between ZFS and storage devices is because storage devices encompasses all of them, including the two boot drives that the system has that are set up in a mirror. So that is going to show these two devices here. It does list all the other drives, but these other drives are all managed in a ZFS array. So it has that information here, it has your storage log information here. So you can monitor like our boot array, which is just a standard Linux mirror, and all the ZFS goodness is all over here. Now, I'm not going to get much into the virtual machines. It's not something I spent any time testing at all, but it is a function they have in here to do some basic VM management. And we have a user account manager where we can see I have a root user LTS user and user. I'm actually going to jump down here though, they have an identity manager, which is a more advanced and more feature rich system with the users and groups. And that does things like for example, the LTS user here, I can even do things like set a separate Samba password, or even generate an SSH key pair for this particular user. So it gives you a few more enhancements. It's just like an extra add on that's from 45 drives that goes on top of this system. Now, coming back up to the top, and as we go down user accounts services, I'll be bringing this part back up, because when we're setting some things, there are sometimes a service you have to restart. And I really like having the service manager built in here. If we expand it out, it looks a little better. And we can search for different services and be able to quickly find them. And like this one right here, the ZNAP Zend ZFS backup system. If I need to stop, reload, restart that service or disable that service, stop and disable, I can just click the button there. And we'll click it because we actually need the service enabled. And we'll let it start again. And we can click here and just simply do a restart if we need. Obviously, all this can be done from the command line. But for those not familiar with the command line, this is actually a really handy way to be able to jump in here, look at it, and see the service logs that are attached to that particular service that's running. So we'll go back over here to services, you have a few other ways you can look at it through the sockets that are open, we'll actually fill, remove the filter, look at the targets, timers and pass really nice the way that's all integrated makes it easy to use. We're going to appear our logs, and you can choose the log priority level. So only emergency logs go only things that are really a pertinent or alert and above, like when Tom typed in a password wrong here, here's that log for me typing that in, go back over here, we scroll down, maybe we want error and above. And then from there, you can also choose the different identifiers, whether it was a sudoer, a smart D error, something with root, etc. So it gives you drill downs for any of these to be able to get a little bit deeper into any of the logs. And down here we have navigator, which is just a simple file navigator right through the web interface here, and file sharing. Now file sharing has two components to it inside of here. So we have the file sharing that is controlled right here within these menus for setting up a share, but we also have them again under ZFS. And what this is showing you with the include at C cockpit ZFS shares.com, we're including the extra shares that were managed inside of ZFS. And that's actually a really easy place to manage. And we'll show in the ZFS. So you they will be included here, but they won't necessarily show here. But that's why there's two different places. One is your normal Samba shares, the other one is going to be for your shares as you're doing them in ZFS. And we have NFS over here. And the same thing, we can share something with NFS within ZFS, or we can share something from here, we're going to do it all within the ZFS. But before we get to it, two more things I want to talk about. And these are the unique to the 45 drive chassis. This shows me all of the drives. So this is a layout that matches the layout of our 45 drive server. So we can click on any of these disks, we can look at the serial numbers on them, partition information, and even more, we can see the V dev they belong to, if they're part of a ZFS pool. So this is specifically part of the ZFS pool. It's the RAID Z one V dev and the V dev type is storage. So you have all this information. And we know exactly which drive I clicked on. So for each drive we click on, we get that information changing across here. So RAID Z two V dev one, this one right here that's in slot one dash 14 is the RAID Z two zero. So it's a second part of a different V dev. I like that level of detail that you can have. Now, there's a couple of drives here in the middle that look a little different. That's because these are SSDs. So by clicking this one, it's not currently part of anything. So it's just a drive that's in here, we can have all the drive information over here. And then we have this one that's listed as a cash V dev type. So these other ones were listed as storage. This one's listed as cash. And I simply set it up as a cash drive added it. And it's nice to be able to visualize these. So if there's any problems, or I need to find a drive that was given me a difficulties, I can pinpoint exactly which one in a chassis, or if I'm wondering what any drive in the chassis is doing, I can click on them. This is obviously tied tightly with them developing this based around the labeling on their chassis. And the same thing with the motherboard here. So we click this, it's going to read all the motherboard information. And it's a super micro motherboard, it was the one selected by 45 drives for this. And it populates not only the cards that it shipped with, it actually is populating the card that I put in as well. So in this CPU slot to PCIe is a 10 gig network card, specifically an Intel one with RG 45 ports. And it displays this one when it refreshed, I thought that was clever that they were able to put that in there. So now I know what this card is as well. Now to go a step further, I know which memory is in these, it even knows the temperature of the memory. So it's pulling all that information together, making it easy to find and easy to read. And if we go down here, it also gives us what's plugged into the SATA connectors. And this is those boot array, they're plugged into this one and this one. So once again, you're getting a visual for where these things are plugged in. And all of these are empty. But if I were to plug something in there, it would have to be able to pull and consolidate that information there. Now the last part that is unique to 45 drives is this 45 drive system, where it tells me the model number, the serial number, the exact motherboard that's in here. And a lot of this information that was visualized like in the motherboard viewer is just summarized here and an easy to read list so we can see what's in different slots, the CPU, the memory, the memory manufacturer, any piece of information that is able to be pulled by the motherboard is then all pulled right into here, all viewable, even the network information, Ethernet IP address. And even down here at the bottom, we have the IPMI address that's for this motherboard all consolidated into one page. Now if we go all the way to the bottom here, we have the software updates, we can go ahead and check and it's just running your standard package check update for a bunch of and we'll see if there's any updates. And if there is, I can load them from here and follow the process. No updates because I have it all up to date. And the nine packages that were update were listed here from the last update. Now they do have a benchmarking utility as well in here. This is just running FIO for the benchmarks and the FIO benchmarks that they have can do Max Serpent, Max IOPS or performance spectrum. If you're not familiar with FIO, I've talked about it before in a channel, it's also popularly used inside of Veronica's, which gives you some really nice menus. But this is kind of a easy basic way to point at a path and see what the performance of that path, if that path is within a ZFS array, or if that path is with just any of the drives that are on there, you can get some ideas for benchmarks, maybe when you're setting these up and doing some tuning. Now let's get over to the fun part of managing ZFS. The ZFS management, when I already have created this called ZFS, the system here, and we expanded out, I've got a few different file systems here created, and I've already got snapshots running. So we have all these different snapshots that have been kind of just hanging out here that running, well, it looks like every 30 seconds I have one running here. Then we go down here, I think these ones are running, yeah, every minute for this one, and I actually have a VM attached to this. So there's some data moving around in here. So the snapshots have some data in between there. And then here's our status. But let's start at the file system. We have our primary ZFS array we made here for the pool. And then we want to go ahead and create, let's say another data set. You can start with the parent file system being the root of it, or nest them by choosing this, and then you can nest more data under it. Or if we just chose this, Tom's YouTube demo. And from there, if we need an encryption, like to put a passphrase on there to unlock it, we would put that here, or we can just go through and leave all of these things at default. Or if we needed to enable a Samba Share, which we'll go ahead and do that. So we hit Samba Share there, maybe an NFS share as well, and it'll put all the NFS options. Now, even though I created these here, and now it lets me know it, the shares were successfully created as well as that data set, you now have the ability if I need to, because this one says NFS plus Samba, which is this one here, we're going to click onto three dots that you see next to each one of them. And if we needed to configure it or edit it, that option is now in there. So we can reconfigure the file system, changes permissions, or go down here and say configure replication task. Now, the replication task, this was a little different than I've done some of the ZFS before. But once you kind of get the hang of the menus, they make sense. This is both a replication task and or snapshots. So you can have both or just one. So you have to have a snapshot in order to do replication in ZFS, or we can just do snapshots, like we've been doing here, because I don't have another destination at this time set up, I want to send these two. Now, they have some more in depth videos talking about some of the nuance of this over on the 45 drives channel, but I'll give you a basic idea. So our retention time is how long do we want to keep the snapshots? And let's say we want to keep them for one, we'll say hour, or even two hours. What's the interval you want to run every second? Do you want them to run? Let's say every 10 seconds, we need a snapshot run, it's gonna be a whole lot of snapshots. But hey, why not? This is a demo and I only have to wait 10 seconds for it to create snapshots. Now, if you wanted to have multiple retention plans, you can actually click the plus, and you can have another retention plan. Sometimes you do this where you need a frequent set of snapshots for things that's happening frequently, and then a long term data retention plan for your snapshots where you maybe keep something, let's say a retention time of 90 days. And we're going to say we're going to run this in days, and then the interval time, obviously that would be way too many every one second. So we're going to say, we do two snapshots, and we do them a day. So we have two snapshots a day that we keep for 90 days. Or you can say maybe we do two snapshots a week that we keep for 90 days, that seems like a better retention. But you can then tune these and create these stacked plans for which ones expire and then auto delete. So we're going to hit configure again. So now we've got these two separate plans. Now, what's not going to happen, we're going to go ahead and click refresh here. What's not going to happen is we won't get those snapshots working because there's something I didn't do. And this is in their manual and under documentation that I only skim through and then realize when it wasn't working that it was my mistake, that once you do this, the services that need to be restarted or service specifically that needs to be restarted is the ZNAP send service. And all we have to do is restart it. Once you restart it, it's going to go here and read all the different ones. And there's our new one that says found veil backup plan for Tom's YouTube demo. So as you go through these, this is where you get that extra little thing to make sure you read the manual as I didn't. But now that service has been restarted, it reads those plans that are attached to those data sets and says, hey, now we're going to go ahead and start creating those. And it shouldn't take long with a 10-second time. So we go back over here to ZFS. We'll go ahead and refresh, see if they've started. And here we go. We've already got three of them in that short period of time because, well, I skipped ahead a bit. There's some gaps. I edited it out. So now we've got three of them because it's already been that many seconds, 30 seconds has passed since we restarted that. Then it's as simple as that. If you need to roll them back or destroy that snapshot, but it will automatically purge them on its own through that process because we set an expiration time on them. Now, one of the last things I want to show here, and we'll go over here to status because just like any ZFS pool, there are some things you can change, like adding DVV devs symmetrically, so you can expand them that way. Or if we need to add a cache drive. And if you remember, if we go back over here to the 45 drives disk, we have this drive in slot two dash eight, that's not doing anything. It's not part of the ZFS pool like the one here in one dash eight. So we're going to go back over here to ZFS, go status. We're going to add a virtual device. That virtual device is going to be, let's say a log drive, because we added a cache last time, hit add. But now that we've selected that, we now have a log device attached to our ZFS. But how do we know if that updates over here? Well, it's cached. So we just got to hit refresh on the page, reload the disk page. It's rereading them. And now when we click it, it's part of there. And then vdev type is log. Pretty straightforward how that works. It's a nice way to handle, especially if you have a fully populated system with all 30 drives in there or one of the store coordinator excels with 60, or just having the ZFS manager when you're managing ZFS swapping drives around, even if it's a custom build, once you have a lot of drives, it can be a bit much to manage them all inside of just Linux from the command line, depending on your familiarity with the command line, of course. And the reverse is true in terms of managing the ZFS from here that we can expand this out, go status, go pull those same drives, and we're just going to head and remove virtual disk. I'm going to clear the information on the disk. That one's been removed. Then we'll go ahead and remove the cache one as well. So scroll down and remove virtual disk. I want to clear the label on it. So there's nothing on it. Go back over here to our 45 drive disk. Once again, we're just going to quickly refresh this page. And it's going to reread all the disk information. And now those are free again to do whatever I please with. Even if I went over here to ZFS, because you can have multiple pulls, we can actually create another storage pool. And because those two have been freed up, they could become part of a mirror if I needed them to be. So there's another pool, do this, and then they would be a separate ZFS pool and refresh a disk and I'd be able to manage them just like all the others. Now, my overall, I really like the 45 drive ZFS manager. The only minor thing that, well, is not there out of the box default and there's not a way to manage it in a UI is doing a scrub. Now you can manually choose to do a scrub. They have a menu for that in that ZFS manager. But as you may have known from a pretty famous YouTuber, when Linus forgot to set up scrubbing on his system, well, that caused a big amount of chaos. Therefore, you really should set up a scrub task. And it's really easy to configure one set one up just as a cron job to run. I'm hoping at some point, maybe that'll be something in a menu, but it's just something when you're building this manually, that you want to think about and having those features in place. So you set up a job to run for that particular pool at some level of frequency, depending on your needs, to run a scrub. Now, the final question is probably already come up down below in the comments section is why use this over an appliance based ZFS system that maybe I've talked about on my channel. And the reason for that is really simple. It comes down to what the needs are for the project. Building something based on an appliance software that dedicates a box to being an ass is wonderful, provided that your use case really needs that. But what if your use case needs some custom software loaded on this particular server, and you don't want to monkey with so to speak and go outside or off script of what that appliance was designed to do as far as loading tools on there. This is a challenge because if your needs exceed that, you still want to have easy to access, easy to manage web menus for things like ZFS and some of the other things I've shown with this tool, but you also have this custom need for some custom software on there. And that's where this is another option that we look at. Now, if your task at hand is well suited to what that appliance can do, then perfect. If you don't have any needs to go outside of it, and that maybe is a good choice because it's easy for you to manage. So both are valid options. It just comes to we have a lot of resources at our disposal here at Lawrence Systems. And we look at those different options because when we're discussing things with clients, we know not every single solution is exact fit for the problem. And I try to think about a lot of the best in class solutions. And that's where it leads me to solutions like this one here that I'm talking about with their Houston UI, I still have the ease of management, I still am able to manage drives, especially if you're doing something larger like a Stornator XL 60 and 60 drives and managing a chassis and finding them in case there's ever a problem is a need you still have. But maybe there's a custom application that you have to run that would do well having that native storage right there. But that ease of use, you kind of get the idea. There's different solutions for different problems. And this is just another one of the solutions. But I wanted to bring it up to people because it could be a solution for you as well, using this CFS manager, if you're tasked with managing a lot of CFS drives and well, you have to run them in Linux. It's directly pretty cool. It's open source. It's easy to install. It's easy to set up. But nonetheless, I will leave some links down below to the 45 drives teams, GitHub, their knowledge base, their YouTube channel that you should probably subscribe to. And leave some comments down below on your thoughts on this, what you like, what you don't like, or have my forums for a more in depth discussion. And thank you for making it all the way to the end of this video. If you've enjoyed the content, please give us a thumbs up. If you would like to see more content from this channel, hit the subscribe button and the bell icon. If you'd like to hire a short project, head over to lauranceystems.com and click the hires button right at the top. To help this channel out in other ways, there's a join button here for YouTube and a Patreon page where your support is greatly appreciated. For deals, discounts, and offers, check out our affiliate links in the description of all of our videos, including a link to our shirt store where we have a wide variety of shirts that we sell and designs come out well randomly, so check back frequently. And finally, our forums. Forums.LauranceSystems.com is where you can have a more in depth discussion about this video and other tech topics covered on this channel. Thanks again for watching and look forward to hearing from you.