FreeNAS install and configuration
FreeNAS is based on FreeBSD, a Unix- like open-source OS developed in the When the FreeNAS Console Setup menu appears (tap the Escape key if the. Building a FreeNAS Home Server - Kindle edition by Cameron Bishop. Download it once and The Linux Command Line Beginner's Guide · Jonathan Moeller. Apr 8, FreeNAS and it's plugins jails promised to do most of what I was doing of this, the PBI jail for Owncloud is stuck at , dating back to November of All this means that you will have to disable root squashing for things to work; At the RancherOS command line, run the installation one-liner on the.
This should be obvious, but the recommendations regard the provisioning of CPU and RAM resources are just that; depending on what you intend on running within your Docker VM, assign system ressources as necessary. In my case, assigning just one VCPU held back my bitcoin node from properly syncing.
Console menu (menù) missing | FreeNAS Community
Adding another one fixed the problem and made all the services running in containers visibly more snappy. A word of warning on giving the VM more system ressources: I had problems giving the machine more than 2 virtual CPUs; the machine seems to want to boot up, with Bhyve init stuff showing up on the serial console, but the OS stalled shortly before all the services could go up.
Storage The modularity of Docker is what makes its strength, but in order to be truly useful, if must be built on a stack that is itself just as modular. For example, in continuity with the spirit of containerizing, I aught to be able to be able to snapshot and replicate individual containers to back them up locally or offsite.
Storing everything on the raw disk image just isn't compatible with that vision of things. You could store everything on ZFS vdevs through additional VM volume assignments, but then you lose the ability to snapshot under certain conditions. Rancher has convoy that can make docker volumes persistent, and store them on a variety of backends, but the additional layer of docker-style volumes doesn't really need to be there. I opted instead to use nfs-client and bind-mounts in my containers to my install of FreeNAS, with the method detailed here.
I modified the steps to fit my application slightly. First of all, I elected to created a child dataset for every container, in order to be able to snapshot and replicate as mentionned above. With this larger amount of shares, listing the NFS mounts was done directly in my cloud-config.
You might be tempted to use SMB, which is also supported by RancherOS; this isn't a good idea if you plan on running any container that includes Apache because it is heavily reliant on UNIX-style permissions to function properly, and that just won't translate over SMB. First of all, RancherOS runs all it's Docker processes as root along with the NFS client; secondly, NFSv3 uses client-side info on the user accessing the share to determine if it has the permission to access the share or not.
This is obviously horrible security, because any rogue machine can now access your shares as root if your client ACLs are too loose. The way around this is making sure that the network access to the address that the NFS service is bound to is impossible for everything but your Docker VM. The ideally you'd also want to use a dedicated network bridge to pass the traffic off between your storage and the VM.
The problem is that the web UI does not show you bridge interfaces when offering you the options for VM NIC mapping; my workaround was to plug in a dead-end VLAN in an unused interface on my server, and have all the Docker-related traffic come in through this interface. A note on pre If you are experiencing weird issues after configuring your networking in the RancherOS VM, check your network configuration with ifconfig. You should get something like this: My primary objectives when selecting parts were as follows: I considered the Norco RPC for a while, but the SuperMicro chassis is much higher quality and has better thermal design i.
The PSUs the chassis came with are really loud, so I purchased some quieter ones. The stock system fans are also loud, so I replaced those too.
More information on the replacement backplane, PSUs, and fans below. I currently have 8 open drive bays to allow for future expansion. I picked up a 3rd M when I got my new drives. I bought a spare drive in 4TB and 8TB to have on hand in case of a failure. They're sold as external drives WD EasyStorebut it's pretty easy to "shuck" them to get at the drive within. I also got a 9th drive to serve as a "scratch" disk that I installed in a mount inside the chassis.
Eventually, I want to expand the 10G capabilities of my home network to some other machines, but the gear is still pretty expensive. Note that with this 10G network card, there were all sorts of network-related tunables I had to add to FreeNAS to get everything running a full-speed. More notes on that below. I have no idea what the actual limitations are; these numbers are purely arbitrary examples. It has 6 mini-SAS ports on the back, each of which directly connects to 4 hard drives.
These can also be found at a reasonable price on eBay. This is usually reasonably priced and would have been a good option in my build, but I had a hard time finding one on eBay when I was doing all my purchasing. With this backplane, you would only need to use one port on a single M card and the backplane would expand that single connection out for all 24 hard drives. People typically use USB drives for their boot device, but for a build like this, the gurus recommend using SSDs for increased system reliability.
The controllers on most USB drives are pretty unreliable, so it was a worthwhile upgrade for me. My motherboard doesn't have an M.
I had to tinker around with some settings in iohyve to make sure everything was pointed to the right place, but it ended up being a fairly painless process.
VM performance after the change improved significantly.
I was initially nervous about its fit with my motherboard and chassis, but it ended up working out pretty well. You can sort of see what I mean here same case exists on the other side ; notice the RAM slot just under the edge of the cooler in the pictures here and here.
Console menu (menù) missing
Front Fan Shroud and mm Fans: I ended up taking fairly drastic measures to resolve this. I designed a custom fan shroud in Sketchup that allows me to mount 3x mm fans blowing air into the drive bays from the outside. The fans are powered by a cable I ran through a vent hole on the side of the case. I have much more information on this fan shroud in sections below. Fortunately, the fan wall is removable and 3x mm fans fit perfectly in its place.
I zip-tied the mm fans together and used tape-down zip tie mounts to secure them to the chassis. I have pictures of the fan wall install process and more information in the section below. These Noctua 80mm fans fit perfectly in their place. I was able to use the hot-swap fan caddies that came with the chassis, but I have it bypassing the hot-swap plug mechanism that SuperMicro built in.
Obviously, it's much easier to work on machines in a proper rack, but I realize these aren't a practical solution for everyone. With that in mind, I will leave the information on the Ikea coffee table rack in the article in hopes that someone will find it useful. I have metal corner braces on each leg to provide extra support to the lower shelf and a 2x4 piece propping up bottom of the lower shelf in the middle.
I have some more notes on the Lack Rack assembly process in the section below. They were amazingly easy to install and make the machine so much easier to work on. I also used a ton of zip ties and some tape-down zip-tie mounts to make the cables all nice and tidy. I also installed a small 4 CFM blower fan to cool the scratch disk; more info on that below. I have a few future upgrades in mind, including a proper rack and rails Update: Build Process For the most part, the system build was pretty similar to a standard desktop computer build.
The only non-standard steps I took were around the HDD fan wall modification, which I discussed briefly in the section above. The stock fan wall removal was pretty easy, but some of the screws securing it are hidden under the hot swap fan caddies, so I had to remove those first. With the fan wall structure out of the way, there were only two minor obstructions left — the chassis intrusion detection switch and a small metal tab near the PSUs that the fan wall screwed in to.
The intrusion detection switch was easily removable by a pair of screws and I cut the small metal tab off with a Dremel but you could probably just bend it out of the way if you wanted to.
With the fan wall gone, swapping out the EOL backplane which came pre-installed in my chassis for the new version I purchased was pretty easy. Some of the screws are a little tough to access especially the bottom one closest to the PSUsbut they all came out easily enough with some persistence.
There are 6x Molex 4-pin power connectors that plug into the backplane to provide power to all the drives. Drive activity information is carried over the SAS cable and all my fans are connected directly to the motherboard. Maybe they meant the 8 pin and 24 pin power connectors? I also made note of the SAS addresses listed on the back of each of the M cards before installing them. These addresses are needed in the initial system configuration process. This pool would just be a single disk and would be fore data that didn't need to be stored with redundancy on the main pool.
This drive is mounted to a tray that sits right up against the back of the power supplies on the inside of the chassis and it tended to get much hotter than all the front-mounted drives. My fan control script goes off of maximum drive temperature, so this scratch disk kept the fans running faster than they would otherwise.
To help keep this drive cool, I drilled new holes in the drive tray to give a bit of space between the back of the drive and the chassis wall. I also cut a small hole in the side of the drive tray and mounted a little blower fan blowing into the hole so that air would circulating behind the drive. I had to cut away a portion of the SSD mounting tray to accommodate the blower fan. In the end, I'm not sure if the blower fan with its whopping 4 CFM of airflow makes any difference, but it was a pain to get in there so I'm leaving it.
In fact, I ended up just modifying the fan script to ignore this scratch disk, but I do keep an eye on its temperature to make sure it's not burning up. A picture of the blower fan is below: Make sure you order some extras or have some on-hand.
I will note here that the cooler came with 2 different sets of mounting brackets for the LGAv3 narrow ILM system so you can orient the airflow direction either front-to-back or side-to-side allowing you to rotate the cooler in 90 degree increments. Obviously, for this system, I wanted air flowing in from the HDD side and out the back side, so I had to use the appropriate mounting bracket or, more accurately, I realized there were two sets of narrow ILM brackets only after I installed the incorrect set on the cooler.
The connectors for all the front panel controls and LEDs are also contained in one single plug with 16 holes and no discernible orientation markings.
After studying the diagrams in the motherboard manual, I was able to determine that the NMI button header pins are the 2 pins on this JF1 assembly that are closest to the edge of the motherboard, then moving inwards there are 2 blank spots, and then the 16 pins for the rest of the front panel controls and LEDs. The 16 pin front panel connector plugs into these inner 16 pins and should be oriented so the cable exits the 16 pin connector towards the PSU side of the chassis.
I also swapped out the rear fans for quieter Noctua 80mm models at this point. I took out this whole hotswap mechanism because the Noctua fan cables are much longer than the stock fan cables and the Noctua PWM connectors are missing a small notch on the plug that is needed to secure it in the hot swap caddie.
With all the server guts installed and connected, I did some basic cable management and prepared to install my mm fan wall. I started by using zip-ties to attach the 3 fans together obviously ensuring they would all blow in the same direction. I put the fan wall in place in the chassis and marked off where the zip tie mounts should be placed with a marker, stuck the mounts on the marks 4 in total on the bottomand used more zip ties to mount the fan wall in place.
With the bottom of the fan wall secured in place, the whole thing is pretty solid, but I added one more zip tie mount to the top of the wall on the PSU side. This sort of wedges the fan wall in place and makes it all feel very secure.FreeNAS 11.1 Now Available! New Cloud Sync, Updated UI & Net Data Added To The Services Menu
Once the fans were secure, I connected them to the 3-to-1 PWM fan splitter, attached that to the FANA header this is important for the fan control script discussed laterand cleaned up all the cables. In addition to upgrading my original fans, I made a few minor modifications to improve overall cooling efficiency for the whole system: I used masking tape to cover the ventilation holes on the side of the chassis.
These holes are on the hard drive side of the fan wall and are intended to prevent the stock fans from starving, but with lower speed fans they allow air to bypass the hard drives which cuts the total cooling efficiency.
I cut pieces of index cards and used masking tape to block air from flowing through the empty drive bays. The air flow resistance through the empty bays was much lower than it was through the populated bays so most of the air was bypassing the hard drives.
You can see a picture of it here. I measured the wood strip to be a very tight fit and zip-tied it to the fans to secure it in place. I even cut out little divots where the zip ties cross the top of the wood strip to be extra cautious. You can see this wood strip in the 3rd and 4th pictures in the section above.
I designed a bezel that fits over the front part of the chassis and allows me to mount 3x mm fans blowing air into the drive bays from the outside. The bezel is secured in place with zip ties and powered via a PWM extension cable that I ran through one of the side vent holes and along the outside of the chassis.
This fan bezel has had a substantial improvement in overall airflow and noise level. More information on it just below. You can check relative airflow levels to the hard drive bays by holding a piece of paper up in front of the drive bays and observing the suction force from the incoming air. With a heavy workload, the fans sometimes spin up to RPM for a minute or two, but overall the system is very quiet.