4. System¶
The System section of the administrative GUI contains these entries:
- Information provides general TrueNAS® system information such as hostname, operating system version, platform, and uptime
- General configures general settings such as HTTPS access, the language, and the timezone
- Boot creates, renames, and deletes boot environments
- Advanced configures advanced settings such as the serial console, swap space, and console messages
- Email configures the email address to receive notifications
- System Dataset configures the location where logs and reporting graphs are stored
- Tunables provides a front-end for tuning in real-time and to load additional kernel modules at boot time
- Update performs upgrades and checks for system updates
- Cloud Credentials is used to enter connection credentials for remote cloud service providers
- Alert Services configures services used to notify the administrator about system events.
- CAs: import or create internal or intermediate CAs (Certificate Authorities)
- Certificates: import existing certificates or create self-signed certificates
- Support: view licensing information or create a support ticket.
- Proactive Support: enable and configure automatic proactive support (Silver or Gold support coverage only).
- Failover: manage High Availability.
Each of these is described in more detail in this section.
4.1. Information¶
System → Information
displays general information about the TrueNAS® system. An example is
seen in
Figure 4.1.1.
The information includes the hostname, the build version, type of CPU (platform), the amount of memory, the current system time, the system’s uptime, the number of users connected at the console or by serial, telnet, or SSH connections, and the current load average. On servers supplied or certified by iXsystems, an additional Serial Number field showing the hardware serial number is displayed.
To change the system’s hostname, click the Edit button, type in the new hostname, and click OK. The hostname must include the domain name. If the network does not use a domain name, add .local after the hostname.
Fig. 4.1.1 System Information Tab
4.2. General¶
System → General
is shown in
Figure 4.2.1.
Fig. 4.2.1 General Screen
Table 4.2.1 summarizes the settings that can be configured using the General tab:
| Setting | Value | Description |
|---|---|---|
| Protocol | drop-down menu | protocol to use when connecting to the administrative GUI from a browser; if modified from the default of HTTP to HTTPS or to HTTP+HTTPS, select the certificate to use in Certificate; if you do not have a certificate, first create a CA (in CAs), then the certificate itself (in Certificates) |
| Certificate | drop-down menu | required for HTTPS; browse to the location of the certificate to use for encrypted connections |
| WebGUI IPv4 Address | drop-down menu | choose from a list of recent IP addresses to limit the one to use when accessing the administrative GUI; the built-in HTTP server will automatically bind to the wildcard address of 0.0.0.0 (any address) and will issue an alert if the specified address becomes unavailable |
| WebGUI IPv6 Address | drop-down menu | choose from a list of recent IPv6 addresses to limit the one to use when accessing the administrative GUI; the built-in HTTP server will automatically bind to any address and will issue an alert if the specified address becomes unavailable |
| WebGUI HTTP Port | integer | allows configuring a non-standard port for accessing the administrative GUI over HTTP; changing this setting might also require changing a Firefox configuration setting |
| WebGUI HTTPS Port | integer | allows configuring a non-standard port for accessing the administrative GUI over HTTPS |
| WebGUI HTTP –> HTTPS Redirect | checkbox | when this box is checked, HTTP connections are automatically redirected to HTTPS if HTTPS is selected in Protocol, otherwise such connections will fail |
| Language | drop-down menu | select the localization from the drop-down menu and reload the browser; view the status of localization at pootle.freenas.org |
| Console Keyboard Map | drop-down menu | select the keyboard layout |
| Timezone | drop-down menu | select the timezone from the drop-down menu |
| Syslog level | drop-down menu | when Syslog server is defined, only logs matching this level are sent |
| Syslog server | string | IP address_or_hostname:optional_port_number of remote syslog server to send logs to; once set, log entries are written to both the console and the remote server |
After making any changes, click the Save button.
This screen also contains these buttons:
Factory Restore: reset the configuration database to the default base version. However, this does not delete user SSH keys or any other data stored in a user’s home directory. Since any configuration changes stored in the configuration database will be erased, this option is useful when a mistake has been made or to return a test system to the original configuration.
Save Config: save a backup copy of the current configuration
database in the format hostname-version-architecture to the computer
accessing the administrative interface. Saving the configuration after
making any configuration changes is highly recommended. TrueNAS®
automatically backs up the configuration database to the system
dataset every morning at 3:45. However, this backup does not occur if
the system is shut down at that time. If the system dataset is stored
on the boot pool and the boot pool becomes unavailable, the backup
will also not be available. The location of the system dataset can be
viewed or set using
System → System Dataset.
Note
SSH keys are not stored in the configuration database and must be backed up separately.
There are two types of passwords. User account passwords for the base operating system are stored as hashed values, do not need to be encrypted to be secure, and are saved in the system configuration backup. Other passwords, like iSCSI CHAP passwords or Active Directory bind credentials, are stored in an encrypted form to prevent them from being visible as plain text in the saved system configuration. The key or seed for this encryption is normally stored only on the boot device. When Save Config is chosen, a dialog gives the option to Export Password Secret Seed with the saved configuration, allowing the configuration file to be restored to a different boot device where the decryption seed is not already present. Configuration backups containing the seed must be physically secured to prevent decryption of passwords and unauthorized access.
Warning
The Export Password Secret Seed option is off by default and should only be used when making a configuration backup that will be stored securely. After moving a configuration to new hardware, media containing a configuration backup with a decryption seed should be securely erased before reuse.
Upload Config: allows browsing to the location of a previously saved configuration file to restore that configuration. The screen turns red as an indication that the system will need to reboot to load the restored configuration.
NTP Servers: The network time protocol (NTP) is used to synchronize the time on the computers in a network. Accurate time is necessary for the successful operation of time sensitive applications such as Active Directory or other directory services. By default, TrueNAS® is pre-configured to use three public NTP servers. If your network is using a directory service, ensure that the TrueNAS® system and the server running the directory service have been configured to use the same NTP servers.
Available NTP servers can be found at https://support.ntp.org/bin/view/Servers/NTPPoolServers. For time accuracy, choose NTP servers that are geographically close to the TrueNAS® system’s physical location.
NTP servers are added by clicking on
NTP Servers → Add NTP Server
to open the screen shown in
Figure 4.2.2.
Table 4.2.2
summarizes the options available when adding an NTP server.
ntp.conf(5)
explains these options in more detail.
Fig. 4.2.2 Add an NTP Server
| Setting | Value | Description |
|---|---|---|
| Address | string | name of NTP server |
| Burst | checkbox | recommended when Max. Poll is greater than 10; only use on your own servers i.e. do not use with a public NTP server |
| IBurst | checkbox | speeds the initial synchronization (seconds instead of minutes) |
| Prefer | checkbox | should only be used for NTP servers that are known to be highly accurate, such as those with time monitoring hardware |
| Min. Poll | integer | power of 2 in seconds; cannot be lower than 4 or higher than Max. Poll |
| Max. Poll | integer | power of 2 in seconds; cannot be higher than 17 or lower than Min. Poll |
| Force | checkbox | forces the addition of the NTP server, even if it is currently unreachable |
4.3. Boot¶
TrueNAS® supports a ZFS feature known as multiple boot environments. With multiple boot environments, the process of updating the operating system becomes a low-risk operation. The updater automatically creates a snapshot of the current boot environment and adds it to the boot menu before applying the update. If the update fails, reboot the system and select the previous boot environment from the boot menu to instruct the system to go back to that system state.
Note
Boot environments are separate from the configuration
database. Boot environments are a snapshot of the
operating system at a specified time. When a TrueNAS® system
boots, it loads the specified boot environment, or operating
system, then reads the configuration database in order to load the
current configuration values. If the intent is to make
configuration changes rather than operating system changes, make a
backup of the configuration database first using
System → General → Save Config.
As seen in Figure 4.3.1, two boot environments are created when TrueNAS® is installed. The system will boot into the default boot environment and users can make their changes and update from this version. The other boot environment, named Initial-Install can be booted into if the system needs to be returned to a pristine, non-configured version of the installation.
If the Wizard was used, a third boot environment called
Wizard-date is also created, indicating the date and time
the Wizard was run.
Fig. 4.3.1 Viewing Boot Environments
Each boot environment entry contains this information:
- Name: the name of the boot entry as it will appear in the boot menu.
- Active: indicates which entry will boot by default if the user does not select another entry in the boot menu.
- Created: indicates the date and time the boot entry was created.
- Keep: indicates whether or not this boot environment can be pruned if an update does not have enough space to proceed. Click the entry’s Keep button if that boot environment should not be automatically pruned.
Highlight an entry to view its configuration buttons. These configuration buttons are shown:
- Rename: used to change the name of the boot environment.
- Keep/Unkeep: used to toggle whether or not the updater can prune (automatically delete) this boot environment if there is not enough space to proceed with the update.
- Clone: used to create a copy of the highlighted boot environment.
- Delete: used to delete the highlighted entry, which also removes that entry from the boot menu. Since you cannot delete an entry that has been activated, this button will not appear for the active boot environment. If you need to delete an entry that is currently activated, first activate another entry, which will clear the On reboot field of the currently activated entry. Note that this button will not be displayed for the default boot environment as this entry is needed in order to return the system to the original installation state.
- Activate: only appears on entries which are not currently set to Active. Changes the selected entry to the default boot entry on next boot. Its status changes to On Reboot and the current Active entry changes from On Reboot, Now to Now, indicating that it was used on the last boot but will not be used on the next boot.
The buttons above the boot entries can be used to:
- Create: a manual boot environment. A pop-up menu prompts for entry of a Name for the boot environment. When entering the name, only alphanumeric characters, underscores, and dashes are allowed.
- Scrub Boot: can be used to perform a manual scrub of the boot devices. By default, the boot device is scrubbed every 7 days. To change the default interval, change the number in the Automatic scrub interval (in days) field. The date and results of the last scrub are also listed in this screen. The condition of the boot device should be listed as HEALTHY.
- Status: click this button to see the status of the boot devices. Figure 4.3.2, shows only one boot device, which is ONLINE.
Fig. 4.3.2 Viewing the Status of the Boot Device
If one of the boot devices has a Status of OFFLINE, click the device to replace, select the new replacement device, and click Replace Disk to rebuild the boot mirror.
Figure 4.3.3 shows a sample boot menu.
Fig. 4.3.3 Boot Environments in Boot Menu
The first entry is the active boot environment, or the one that the
system has been configured to boot into. To boot into a different boot
environment, press the spacebar to pause this screen, use the
down arrow to select Boot Environment Menu, and press
Enter. A menu displays the other available boot environments.
Use the up/down arrows to select the desired boot environment and
press Enter to boot into it. To always boot into that boot
environment, go to System → Boot, highlight that
entry, and click the Activate button.
4.4. Advanced¶
System → Advanced
is shown in
Figure 4.4.1.
The configurable settings are summarized in
Table 4.4.1.
Fig. 4.4.1 Advanced Screen
| Setting | Value | Description |
|---|---|---|
| Show Text Console Without Password Prompt | checkbox | unchecking this box replaces the console menu shown in Figure 2.2.1 with a login prompt |
| Use Serial Console | checkbox | do not check this box if the serial port is disabled |
| Serial Port Address | string | serial port address in hex |
| Serial Port Speed | drop-down menu | select the speed used by the serial port |
| Enable screen saver | checkbox | enable or disable the console screen saver |
| Enable powerd (Power Saving Daemon) | checkbox | powerd(8) monitors the system state and sets the CPU frequency accordingly |
| Show console messages in the footer | checkbox | display console messages in real time at bottom of browser; click the console to bring up a scrollable screen; check the Stop refresh box in the scrollable screen to pause updating and uncheck the box to continue to watch the messages as they occur |
| Show tracebacks in case of fatal errors | checkbox | provides a pop-up of diagnostic information when a fatal error occurs |
| Show advanced fields by default | checkbox | several GUI menus provide an Advanced Mode button to access additional features; enabling this shows these features by default |
| Enable autotune | checkbox | enables Autotune which attempts to optimize the system depending upon the hardware which is installed |
| Enable debug kernel | checkbox | when checked, next boot uses a debug version of the kernel |
| Enable automatic upload of kernel crash dumps and daily telemetry | checkbox | when checked, kernel crash dumps and telemetry (some system stats, collectd RRDs, and select syslog messages) are automatically sent to the development team for diagnosis |
| MOTD banner | string | message to be shown when a user logs in with SSH |
| Periodic Notification User | drop-down menu | user to receive security output emails; this output runs nightly but only sends an email when the system reboots or encounters an error |
| Report CPU usage in percentage | checkbox | when checked, CPU usage is reported as percentages in Reporting |
| Remote Graphite Server hostname | string | IP address or hostname of a remote server running Graphite |
| Use FQDN for logging | checkbox | when checked, include the Fully-Qualified Domain Name in logs to precisely identify systems with similar hostnames |
Click the Save button after making any changes.
This tab also contains this button:
Save Debug: used to generate a text file of diagnostic information. After the debug data is collected, the system prompts for a location to save the generated ASCII text file.
4.4.1. Autotune¶
TrueNAS® provides an autotune script which optimizes the system. The
Enable autotune checkbox in
System → Advanced is checked by default, so this
script runs automatically. It is recommended to leave autotune enabled
unless advised otherwise by an iXsystems support engineer.
If the autotune script adjusts any settings, the changed values appear
in
System → Tunables.
While these values can be modified and overridden, speak to your
support engineer beforehand as manual changes can have a negative
impact on system performance. Note that deleting tunables that
were created by autotune only affects the current session, as
autotune-set tunables are recreated at boot.
For those who wish to see which checks are performed, the autotune
script is located in /usr/local/bin/autotune.
4.5. Email¶
An automatic script sends a nightly email to the root user account containing important information such as the health of the disks. Alert events are also emailed to the root user account. Problems with Scrubs are reported separately in an email sent at 03:00AM.
Note
S.M.A.R.T. reports are mailed separately to the address configured in that service.
The administrator typically does not read email directly on the TrueNAS® system. Instead, these emails are usually sent to an external email address where they can be read more conveniently. It is important to configure the system so it can send these emails to the administrator’s remote email account so they are aware of problems or status changes.
The first step is to set the remote address where email will be sent.
Select
Users → View Users, click on root to highlight
that user, then click Change E-mail. Enter the email
address on the remote system where email is to be sent, like
admin@example.com.
Additional configuration is performed with
System → Email,
shown in
Figure 4.5.1.
Fig. 4.5.1 Email Screen
| Setting | Value | Description |
|---|---|---|
| From email | string | the envelope From address shown in the email; this can be set to assist with filtering mail on the receiving system |
| Outgoing mail server | string or IP address | hostname or IP address of SMTP server to use for sending this email |
| Port to connect to | integer | SMTP port number, typically 25, 465 (secure SMTP), or 587 (submission) |
| TLS/SSL | drop-down menu | encryption type; choices are Plain, SSL, or TLS |
| Use SMTP Authentication | checkbox | enable/disable SMTP AUTH using PLAIN SASL; if checked, enter the required Username and Password |
| Username | string | enter the username if the SMTP server requires authentication |
| Password | string | enter the password if the SMTP server requires authentication |
| Password Confirmation | string | enter the same password again for confirmation |
Click the Send Test Mail button to verify that the
configured email settings are working. If the test email fails,
double-check the destination email address by clicking the
Change E-mail button for the root account in
Account → Users → View Users.
Test mail cannot be sent unless the root email address has been set.
Configuring email for TLS/SSL email providers is described in Are you having trouble getting FreeNAS to email you in Gmail?.
4.6. System Dataset¶
System → System Dataset,
shown in
Figure 4.6.1,
is used to select the pool which will contain the persistent system
dataset. The system dataset stores debugging core files and Samba4
metadata such as the user/group cache and share level permissions. If
the TrueNAS® system is configured to be a Domain Controller, all of
the domain controller state is stored there as well, including domain
controller users and groups.
Note
When the system dataset is moved, a new dataset is created and set active. The old dataset is intentionally not deleted by the system because the move might be transient or the information in the old dataset might be useful for later recovery.
Fig. 4.6.1 System Dataset Screen
Note
Encrypted volumes are not displayed in the System dataset pool drop-down menu.
The system dataset can optionally be configured to also store the
system log and Reporting information. If there are lots of log
entries or reporting information, moving these to the system dataset
will prevent /var/ on the device holding the operating system
from filling up as /var/ has limited space.
Use the drop-down menu to select the ZFS volume (pool) to contain the system dataset. Whenever the location of the system dataset is changed, a pop-up warning indicates that the SMB service must be restarted, causing a temporary outage of any active SMB connections.
Note
It is recommended to store the system dataset on the
freenas-boot pool. For this reason, a yellow system alert
will be generated when the system dataset is configured to
use another pool.
To store the system log on the system dataset, check the Syslog box.
To store the reporting information on the system dataset, check the
Reporting Database box. Note that if this box is unchecked,
the system will automatically create a RAM disk to prevent reporting
information from filling up /var.
If you make any changes, click the Save button to save them.
If you change the pool storing the system dataset at a later time, TrueNAS® will automatically migrate the existing data in the system dataset to the new location.
Note
Depending on configuration, the system dataset can occupy a large amount of space and receive frequent writes. Do not put the system dataset on a flash drive or other media with limited space or write life.
4.7. Tunables¶
System → Tunables
can be used to manage the following:
- FreeBSD sysctls: a sysctl(8) makes changes to the FreeBSD kernel running on a TrueNAS® system and can be used to tune the system.
- FreeBSD loaders: a loader is only loaded when a FreeBSD-based system boots and can be used to pass a parameter to the kernel or to load an additional kernel module such as a FreeBSD hardware driver.
- FreeBSD rc.conf options:
rc.conf(5)
is used to pass system configuration options to the system startup
scripts as the system boots. Since TrueNAS® has been optimized for
storage, not all of the services mentioned in rc.conf(5) are
available for configuration. Note that in TrueNAS®, customized
rc.conf options are stored in
/tmp/rc.conf.freenas.
Warning
Adding a sysctl, loader, or rc.conf option is an
advanced feature. A sysctl immediately affects the kernel running
the TrueNAS® system and a loader could adversely affect the ability
of the TrueNAS® system to successfully boot.
Do not create a tunable on a production system unless you
understand and have tested the ramifications of that change.
Since sysctl, loader, and rc.conf values are specific to the kernel parameter to be tuned, the driver to be loaded, or the service to configure, descriptions and suggested values can be found in the man page for the specific driver and in many sections of the FreeBSD Handbook.
To add a loader, sysctl, or rc.conf option, go to
System → Tunables → Add Tunable,
to access the screen shown in seen in
Figure 4.7.1.
Fig. 4.7.1 Adding a Tunable
Table 4.7.1 summarizes the options when adding a tunable.
| Setting | Value | Description |
|---|---|---|
| Variable | string | typically the name of the sysctl or driver to load, as indicated by its man page |
| Value | integer or string | value to associate with Variable; typically this is set to YES to enable the sysctl or driver specified by the “Variable” |
| Type | drop-down menu | choices are Loader, rc.conf, or Sysctl |
| Comment | string | optional, but a useful reminder for the reason behind adding this tunable |
| Enabled | checkbox | uncheck if you would like to disable the tunable without deleting it |
Note
As soon as a Sysctl is added or edited, the running kernel changes that variable to the value specified. However, when a Loader or rc.conf value is changed, it does not take effect until the system is rebooted. Regardless of the type of tunable, changes persist at each boot and across upgrades unless the tunable is deleted or its Enabled checkbox is unchecked.
Any added tunables are listed in
System → Tunables.
To change the value of an existing tunable, click its Edit
button. To remove a tunable, click its Delete button.
Restarting the TrueNAS® system after making sysctl changes is recommended. Some sysctls only take effect at system startup, and restarting the system guarantees that the setting values correspond with what is being used by the running system.
The GUI does not display the sysctls that are pre-set when TrueNAS® is installed. TrueNAS® 11.0 ships with the following sysctls set:
kern.metadelay=3
kern.dirdelay=4
kern.filedelay=5
kern.coredump=0
net.inet.carp.preempt=1
debug.ddb.textdump.pending=1
vfs.nfsd.tcpcachetimeo=300
vfs.nfsd.tcphighwater=150000
vfs.zfs.vdev.larger_ashift_minimal=0
net.inet.carp.senderr_demotion_factor=0
net.inet.carp.ifdown_demotion_factor=0
Do not add or edit these default sysctls as doing so may render the system unusable.
The GUI does not display the loaders that are pre-set when TrueNAS® is installed. TrueNAS® 11.0 ships with these loaders set:
autoboot_delay="2"
loader_logo="truenas-logo"
loader_menu_title="Welcome to TrueNAS"
loader_brand="truenas-brand"
loader_version=" "
kern.cam.boot_delay="10000"
debug.debugger_on_panic=1
debug.ddb.textdump.pending=1
hw.hptrr.attach_generic=0
ispfw_load="YES"
module_path="/boot/kernel;/boot/modules;/usr/local/modules"
net.inet6.ip6.auto_linklocal="0"
vfs.zfs.vol.mode=2
kern.geom.label.disk_ident.enable="0"
hint.ahciem.0.disabled="1"
hint.ahciem.1.disabled="1"
kern.msgbufsize="524288"
kern.ipc.nmbclusters="262144"
kern.hwpmc.nbuffers="4096"
kern.hwpmc.nsamples="4096"
hw.memtest.tests="0"
vfs.zfs.trim.enabled="0"
kern.cam.ctl.ha_mode=2
kern.geom.label.ufs.enable=0
kern.geom.label.ufsid.enable=0
hint.ntb_hw.0.config="ntb_nvdimm:1:4:0,ntb_transport"
hint.ntb_transport.0.config=":3"
hw.ntb.msix_mw_idx="-1"
Do not add or edit the default tunables as doing so might make the system unusable.
The ZFS version used in 11.0 deprecates these tunables:
vfs.zfs.write_limit_override
vfs.zfs.write_limit_inflated
vfs.zfs.write_limit_max
vfs.zfs.write_limit_min
vfs.zfs.write_limit_shift
vfs.zfs.no_write_throttle
After upgrading from an earlier version of TrueNAS®, these tunables are automatically deleted. Please do not manually add them back.
4.8. Update¶
TrueNAS® has an integrated update system to make it easy to keep up to date.
4.8.1. Preparing for Updates¶
An update usually takes between thirty minutes and an hour. A reboot is required after the update, so it is recommended to schedule updates during a maintenance window, allowing two to three hours to update, test, and possibly roll back if difficulties are encountered. On very large systems, a proportionally longer maintenance window is recommended.
For individual support during an upgrade, please open a ticket at https://support.ixsystems.com, or call 408-943-4100 to schedule one. Scheduling at least two days in advance of a planned upgrade gives time to make sure a specialist is available for assistance.
Updates from older versions of TrueNAS® before 9.3 must be scheduled with support.
The update process will not proceed unless there is enough free space in the boot pool for the new update files. If a space warning is shown, use Boot to remove unneeded boot environments.
Operating system updates only modify the boot devices and do not affect end-user data on storage drives.
Available ZFS version upgrades are indicated by an Alert in the graphical user interface. However, upgrading the ZFS version on storage drives is not recommended until after verifying that rolling back to previous versions of the operating system will not be necessary, and that interchanging the devices with some other system using an older ZFS version is not needed. After a ZFS version upgrade, the storage devices will not be accessible by older versions of TrueNAS®.
4.8.2. Updates and Trains¶
TrueNAS® is updated with signed update files. This provides flexibility in deciding when to upgrade the system with patches, new drivers, or new features. It also allows “test driving” an upcoming release. Combined with boot environments, new features or system patches can be tested while still being able to revert to a previous version of the operating system (see If Something Goes Wrong). Digital signing of update files eliminates the need to manually download both an upgrade file and the associated checksum to verify file integrity.
Figure 4.8.1
shows an example of the
System → Update
screen.
Fig. 4.8.1 Update Options
By default, the system automatically checks for updates and issues an alert when a new update becomes available. The automatic check can be disabled by unchecking Automatically check for updates.
This screen lists the URL of the official update server in case that information is needed in a network with outbound firewall restrictions. It also shows which software branch, or train, is being tracked for updates.
Several trains are available for updates.
Caution
Only Production trains are recommended for regular usage. Other trains are made available for pre-production testing and updates to legacy versions. Pre-production testing trains are provided only to permit testing of new versions before switching to a new branch. Before using a non-production train, be prepared to experience bugs or problems. Testers are encouraged to submit bug reports at https://redmine.ixsystems.com/projects/freenas/issues.
These trains are available:
For Production Use
TrueNAS-11.0-STABLE (Recommended)
After new fixes and features have been tested as production-ready, they are added to this train. It is recommended to follow this train and to apply any pending updates from it.
Legacy Versions
TrueNAS-9.10-STABLE
Maintenance-only updates for the previous branch of TrueNAS®.
TrueNAS-9.3-STABLE
Maintenance-only updates for the older 9.3 branch of TrueNAS®. Use this train only at the recommendation of an iX support engineer.
The Verify Install button verifies that the operating system files in the current installation do not have any inconsistencies. If any problems are found, a pop-up menu lists the files with checksum mismatches or permission errors.
4.8.3. Checking for Updates¶
To see if any updates are available, click the Check Now button. Any available updates are listed.
4.8.4. Applying Updates¶
Make sure the system is in a low-usage state as described above in Preparing for Updates.
Click the OK button to download and apply the updates. Be aware that some updates automatically reboot the system after they are applied.
Warning
Each update creates a boot environment. If the update
process needs more space, it attempts to remove old boot
environments. Boot environments marked with the Keep attribute as
shown in Boot will not be removed. If space for a new boot
environment is not available, the upgrade fails. Space on the boot
device can be manually freed using
System → Boot.
Review the boot environments and remove the Keep attribute or
delete any boot environments that are no longer needed.
Updates can also be downloaded and applied later. To do so, uncheck the Apply updates after downloading box before pressing OK. In this case, this screen closes after updates are downloaded. Downloaded updates are listed in the Pending Updates section of the screen shown in Figure 4.8.1. When ready to apply the previously downloaded updates, click the Apply Pending Updates button. Remember that the system might reboot after the updates are applied.
Warning
After updates have completed, reboot the system. Configuration changes made after an update but before that final reboot will not be saved.
4.8.5. Manual Updates¶
Updates can be manually downloaded as a file. These updates are then applied with the Manual Update button. After obtaining the update file, click Manual Update and choose a location to temporarily store the file on the TrueNAS® system. Use the file browser to locate the update file, then click Apply Update to apply it.
Manual update files can be identified by their filenames, which end in
-manual-update-unsigned.tar.
Manual updates cannot be used to upgrade from older major versions.
4.8.6. Updating from the Shell¶
Updates can also be performed from the Shell with an update
file. Make the update file available by copying it to the TrueNAS®
system, then run the update program, giving it the path to the file:
freenas-update update_file.
4.8.7. Updating an HA System¶
If the TrueNAS® array has been configured for High Availability (HA), the update process must be started on the active node. Once the update is complete, the standby node will automatically reboot. Wait for it to come back up by monitoring the remote console or the graphical administrative interface of the standby node.
After the standby node has finished booting, it is important to perform a failover by rebooting the current active node. This action tells the standby node to import the current configuration and restart services.
Once the previously active node comes back up as a standby node, use
System → Update
to apply the update on the current active node (which was
previously the passive node). Once complete, the now standby node
will reboot a second time.
4.8.8. If Something Goes Wrong¶
If an update fails, an alert is issued and the details are written to
/data/update.failed.
To return to a previous version of the operating system, physical or
IPMI access to the TrueNAS® console is required. Reboot the system and
press the space bar when the boot menu appears, pausing the boot.
Select an entry with a date prior to the update, then press
Enter to boot into that version of the operating system before
the update was applied.
4.8.9. Upgrading a ZFS Pool¶
In TrueNAS®, ZFS pools can be upgraded from the graphical administrative interface.
Before upgrading an existing ZFS pool, be aware of these caveats first:
- the pool upgrade is a one-way street, meaning that if you change your mind you cannot go back to an earlier ZFS version or downgrade to an earlier version of the software that does not support those feature flags.
- before performing any operation that may affect the data on a storage disk, always back up all data first and verify the integrity of the backup. While it is unlikely that the pool upgrade will affect the data, it is always better to be safe than sorry.
- upgrading a ZFS pool is optional. Do not upgrade the pool if the the possibility of reverting to an earlier version of TrueNAS® or repurposing the disks in another operating system that supports ZFS is desired. It is not necessary to upgrade the pool unless newer ZFS feature flags are required. If a pool is upgraded to the latest feature flags, it will not be possible to import that pool into another operating system that does not yet support those feature flags.
To perform the ZFS pool upgrade, go to
Storage → Volumes → View Volumes
and highlight the volume (ZFS pool) to upgrade. Click the
Upgrade button as shown in
Figure 4.8.2.
Note
If the Upgrade button does not appear, the pool is already at the latest feature flags and does not need to be upgraded.
Fig. 4.8.2 Upgrading a ZFS Pool
The warning serves as a reminder that a pool upgrade is not reversible. Click OK to proceed with the upgrade.
The upgrade itself only takes a few seconds and is non-disruptive. It is not necessary to stop any sharing services to upgrade the pool. However, it is best to upgrade when the pool is not being heavily used. The upgrade process will suspend I/O for a short period, but is nearly instantaneous on a quiet pool.
4.9. Cloud Credentials¶
TrueNAS® can use cloud services for features like Cloud Sync. The credentials to provide secure connections with cloud services are entered here. Amazon S3, Azure Blob Storage, Backblaze B2, and Google Cloud Storage are supported.
Select
System → Cloud Credentials → Add Cloud Credential
to display the dialog shown in
Figure 4.9.1.
Fig. 4.9.1 Adding Cloud Credentials
Enter a descriptive name for the cloud credential in the Account Name field, then select a provider. The remaining options vary by provider, and are shown in Table 4.9.1.
| Provider | Setting | Description |
|---|---|---|
| Amazon S3 | Access Key, Secret Key | paste the Amazon account access key and secret key in the fields |
| Azure Blob Storage | Account Name, Account Key | enter the Azure Blob Storage account name and key in the fields |
| Backblaze B2 | Account ID, Application Key | enter the Backblaze account ID and paste the application in the fields |
| Google Cloud Storage | JSON Server Account Key | browse to the location of the saved Google Cloud Storage key and select it |
Additional fields are displayed after Provider is selected. For Amazon S3, Access Key and Secret Key are shown. These values can be can be found on the Amazon AWS website by clicking on the account name, then My Security Credentials and Access Keys (Access Key ID and Secret Access Key). Copy the Access Key value to the TrueNAS® Cloud Credential Access Key field, then enter the Secret Key value saved when the key pair was created. If the Secret Key value is not known, a new key pair can be created on the same Amazon screen.
4.10. Alert Services¶
TrueNAS® can use a number of methods to notify the administrator of system events that require attention. These events are system Alerts marked WARN or CRITICAL.
Currently available alert services:
Warning
These alert services might use a third party commercial vendor not directly affiliated with iXsystems. Please investigate and fully understand that vendor’s pricing policies and services before using their alert service. iXsystems is not responsible for any charges incurred from the use of third party vendors with the Alert Services feature.
Select
System → Alert Services to go to the Alert Services
screen. Click Add Service to display the dialog shown in
Figure 4.10.1.
Fig. 4.10.1 Add Alert Service
The Service Name drop-down menu is used to pick a specific alert service. The fields shown in the rest of the dialog change to those required by that service. Enter the required information, check the Enabled checkbox, then click OK to save the settings.
System alerts marked WARN or CRITICAL are sent to each alert service that has been configured and enabled.
Alert services can be deleted from this list by clicking them and then clicking the Delete button at the bottom of the window. To disable an alert service temporarily, click Edit and remove the checkmark from the Enabled checkbox.
Note
To send a test alert, highlight an alert entry, click Edit, and click the Send Test Alert button.
4.10.1. How it Works¶
A nas-health service is registered with Consul. This service runs
/usr/local/etc/consul-checks/freenas_health.sh periodically,
currently every two minutes. If an alert marked WARNING or
CRITICAL is found, the nas-health service is marked as
“unhealthy”, triggering consul-alerts to notify configured
alert services.
4.11. CAs¶
TrueNAS® can act as a Certificate Authority (CA). When encrypting SSL or TLS connections to the TrueNAS® system, either import an existing certificate, or create a CA on the TrueNAS® system, then create a certificate. This certificate will appear in the drop-down menus for services that support SSL or TLS.
For secure LDAP, the public key of an existing CA can be imported with Import CA, or a new CA created on the TrueNAS® system and used on the LDAP server also.
Figure 4.11.1
shows the screen after clicking
System → CAs.
Fig. 4.11.1 Initial CA Screen
If your organization already has a CA, the CA’s certificate and key can be imported. Click the Import CA button to open the configuration screen shown in Figure 4.11.2. The configurable options are summarized in Table 4.11.1.
Fig. 4.11.2 Importing a CA
| Setting | Value | Description |
|---|---|---|
| Identifier | string | mandatory; enter a descriptive name for the CA using only alphanumeric,
underscore (_), and dash (-) characters |
| Certificate | string | mandatory; paste in the certificate for the CA |
| Private Key | string | if there is a private key associated with the Certificate, paste it here |
| Passphrase | string | if the Private Key is protected by a passphrase, enter it here and repeat it in the “Confirm Passphrase” field |
| Serial | string | mandatory; enter the serial number for the certificate |
To instead create a new CA, first decide if it will be the only CA which will sign certificates for internal use or if the CA will be part of a certificate chain.
To create a CA for internal use only, click the Create Internal CA button which will open the screen shown in Figure 4.11.3.
Fig. 4.11.3 Creating an Internal CA
The configurable options are described in Table 4.11.2. When completing the fields for the certificate authority, supply the information for your organization.
| Setting | Value | Description |
|---|---|---|
| Identifier | string | required; enter a descriptive name for the CA using only alphanumeric,
underscore (_), and dash (-) characters |
| Key Length | drop-down menu | for security reasons, a minimum of 2048 is recommended |
| Digest Algorithm | drop-down menu | the default is acceptable unless your organization requires a different algorithm |
| Lifetime | integer | in days |
| Country | drop-down menu | select the country for the organization |
| State | string | required; enter the state or province of the organization |
| Locality | string | required; enter the location of the organization |
| Organization | string | required; enter the name of the company or organization |
| Email Address | string | required; enter the email address for the person responsible for the CA |
| Common Name | string | required; enter the fully-qualified hostname (FQDN) of the TrueNAS® system |
| Subject Alternate Names | string | newer browsers look for the values in this field to match the domain to the certificate; use a space to separate domain names |
To instead create an intermediate CA which is part of a certificate chain, click the Create Intermediate CA button. This screen adds one more option to the screen shown in Figure 4.11.3:
- Signing Certificate Authority: this drop-down menu is used to specify the root CA in the certificate chain. This CA must first be imported or created.
Any CAs that you import or create will be added as entries in
System → CAs.
The columns in this screen indicate the name of the CA, whether it is
an internal CA, whether the issuer is self-signed, the number of
certificates that have been issued by the CA, the distinguished name
of the CA, the date and time the CA was created, and the date and time
the CA expires.
Clicking the entry for a CA causes these buttons to become available:
- Sign CSR: used to sign internal Certificate Signing Requests created
using
System → Certificates → Create Certificate Signing Request. - Export Certificate: prompts to browse to the location to save a copy of the CA’s X.509 certificate on the computer being used to access the TrueNAS® system.
- Export Private Key: prompts to browse to the location to save a copy of the CA’s private key on the computer being used to access the TrueNAS® system. This option only appears if the CA has a private key.
- Delete: prompts for confirmation before deleting the CA.
4.12. Certificates¶
TrueNAS® can import existing certificates, create new certificates, and issue certificate signing requests so that created certificates can be signed by the CA which was previously imported or created in CAs.
Figure 4.12.1
shows the initial screen after clicking
System → Certificates.
Fig. 4.12.1 Initial Certificates Screen
To import an existing certificate, click the Import Certificate button to open the configuration screen shown in Figure 4.12.2. When importing a certificate chain, paste the primary certificate, followed by any intermediate certificates, followed by the root CA certificate.
On TrueNAS® High Availability (HA) systems, the imported certificate must include the IP addresses or DNS hostnames of both nodes and the CARP virtual IP address. These IP addresses or DNS hostnames can be placed in the Subject Alternative Name (SAN) x509 extension field.
The configurable options are summarized in Table 4.12.1.
Fig. 4.12.2 Importing a Certificate
| Setting | Value | Description |
|---|---|---|
| Identifier | string | required; enter a descriptive name for the certificate using only alphanumeric,
underscore (_), and dash (-) characters |
| Certificate | string | required; paste the contents of the certificate |
| Private Key | string | required; paste the private key associated with the certificate |
| Passphrase | string | if the private key is protected by a passphrase, enter it here and repeat it in the Confirm Passphrase field |
To instead create a new self-signed certificate, click the Create Internal Certificate button to see the screen shown in Figure 4.12.3. The configurable options are summarized in Table 4.12.2. When completing the fields for the certificate authority, use the information for your organization. Since this is a self-signed certificate, use the CA that was imported or created with CAs as the signing authority.
Fig. 4.12.3 Creating a New Certificate
| Setting | Value | Description |
|---|---|---|
| Signing Certificate Authority | drop-down menu | required; select the CA which was previously imported or created using CAs |
| Identifier | string | required; enter a descriptive name for the certificate using only alphanumeric,
underscore (_), and dash (-) characters |
| Key Length | drop-down menu | for security reasons, a minimum of 2048 is recommended |
| Digest Algorithm | drop-down menu | the default is acceptable unless your organization requires a different algorithm |
| Lifetime | integer | in days |
| Country | drop-down menu | select the country for the organization |
| State | string | required; enter the state or province for the organization |
| Locality | string | required; enter the location for the organization |
| Organization | string | required; enter the name of the company or organization |
| Email Address | string | required; enter the email address for the person responsible for the CA |
| Common Name | string | required; enter the fully-qualified hostname (FQDN) of the TrueNAS® system |
| Subject Alternate Names | string | newer browsers look for the values in this field to match the domain to the certificate; use a space to separate domain names |
If you need to use a certificate that is signed by an external CA, such as Verisign, instead create a certificate signing request. To do so, click the Create Certificate Signing Request button. A screen like the one in Figure 4.12.3 opens, but without the Signing Certificate Authority field.
Certificates that are imported, self-signed, or for which a
certificate signing request is created are added as entries to
System → Certificates.
In the example shown in
Figure 4.12.4,
a self-signed certificate and a certificate signing request have been
created for the fictional organization My Company. The self-signed
certificate was issued by the internal CA named My Company and the
administrator has not yet sent the certificate signing request to
Verisign so that it can be signed. Once that certificate is signed
and returned by the external CA, it should be imported using the
Import Certificate button so that is available as a
configurable option for encrypting connections.
Fig. 4.12.4 Managing Certificates
Clicking an entry activates these configuration buttons:
- View: use this option to view or edit the contents of an existing certificate. These fields can be edited: Identifier (name), Certificate, and Private Key.
- Export Certificate saves a copy of the certificate or certificate signing request to the system being used to access the TrueNAS® system. For a certificate signing request, send the exported certificate to the external signing authority so that it can be signed.
- Export Private Key saves a copy of the private key associated with the certificate or certificate signing request to the system being used to access the TrueNAS® system.
- Delete is used to delete a certificate or certificate signing request.
4.13. Support¶
The TrueNAS® Support tab, shown in Figure 4.13.1, is used to view or update the system’s license information. It also provides a built-in ticketing system for generating support requests.
Fig. 4.13.1 Support Tab
In this example, the system has a valid license which indicates the hardware model, system serial number, support contract type, licensed period, customer name, licensed features, and additional supported hardware.
If the license expires or additional hardware, features, or contract type are required, contact your iXsystems support engineer. Once you have the new license string, click the Update License button, paste in the new license, and click OK. The new details will be displayed.
To generate a support ticket, fill in the fields:
- Name is the name of the person the iXsystems Support Representative should contact to assist with the issue.
- E-mail is the email address of the person to contact.
- Phone is the phone number of the person to contact.
- Category is a drop-down menu to select whether the ticket is to report a software bug, report a hardware failure, ask for assistance in installing or configuring the system, or request assistance in diagnosing a performance bottleneck.
- Environment is a drop-down menu to indicate the role of the affected system. Choices are Production, Staging, Test, Prototyping, or Initial Deployment/Setup.
- Criticality is a drop-down menu to indicate the criticality level. Choices are Inquiry, Loss of Functionality, or Total Down.
- Attach Debug Info allows an overview of the system hardware and configuration to be automatically generated and included with the ticket. It is recommended to leave this box checked.
- Subject is a descriptive title for the ticket.
- Description is a one- to three-paragraph summary of the issue that describes the problem, and if applicable, steps to reproduce it.
- Attachments is an optional field where configuration files or screenshots of any errors or tracebacks can be included.
After completing the fields, click the Submit button to generate and send the support ticket to iXsystems. A pop-up menu provides a clickable URL to view the status of or add additional information to that support ticket. When not already logged into the iXsystems Support page, clicking this URL prompts for a login, or to register a new login.
4.14. Proactive Support¶
The Proactive Support feature can notify iXsystems by email when hardware conditions on the system require attention.
Note
The fields on this tab are only enabled for Silver and Gold support coverage level customers. Please contact iXsystems for information on upgrading from other support levels.
Fig. 4.14.1 Proactive Support Tab
The Proactive Support fields are:
- Enable automatic support alerts to iXsystems allows enabling or disabling Proactive Support emails to iXsystems. It is recommended to enable this automatic reporting.
- Name of Primary Contact is the name of the first person to be contacted by iXsystems Support to assist with issues.
- Title is the title of the primary contact person.
- E-mail is the email address of the primary contact person.
- Phone is the phone number of the primary contact person.
- Name of Secondary Contact is the name of the person to be contacted when the primary contact person is not available.
- Secondary Title is the title of the secondary contact person.
- SecondaryE-mail is the email address of the secondary contact person.
- Secondary Phone is the phone number of the secondary contact person.
To enable Proactive Support, complete the fields, make sure the Enable automatic support alerts to iXsystems box is checked, then click Save.
4.15. Failover¶
If the TrueNAS® array has been licensed for High Availability (HA), a Failover tab is added to System. HA-licensed arrays use the Common Address Redundancy Protocol (CARP) to provide high availability and failover. CARP was originally developed by the OpenBSD project and provides an open source, non patent-encumbered alternative to the VRRP and HSRP protocols. TrueNAS® uses a two-unit active/standby model and provides an HA synchronization daemon to automatically monitor the status of the active node, synchronize any configuration changes between the active and the standby node, and failover to the standby node should the active node become unavailable.
Warning
Seamless failover is only available with iSCSI or NFS. Other protocols will failover, but connections will be disrupted by the failover event.
To configure HA, turn on both units in the array. Use the
instructions in the Console Setup Menu to log into the
graphical interface for one of the units (it does not matter which
one). If this is the first login, the Upload License
screen is automatically displayed. Otherwise, click
System → Support → Upload License.
Paste the HA license received from iXsystems and press OK to activate it. The license contains the serial numbers for both units in the chassis. After the license is activated, the Failover tab is added to System and some fields are modified in Network so that the peer IP address, peer hostname, and virtual IP can be configured. An extra IPMI (Node A/B) tab will also be added so that IPMI can be configured for the other unit.
Note
The modified fields refer to this node as This Node and the other node as either A or B. The node value is hard-coded into each unit and the value that appears is automatically generated. For example, on node A, the fields refer to node B, and vice versa.
To configure HA networking, go to
Network → Global Configuration.
The Hostname field is replaced by two fields:
- Hostname (Node A/B): enter the hostname to use for the other node.
- Hostname (This Node): enter the hostname to use for this node.
Next, go to
Network → Interfaces → Add Interface.
The HA license adds several fields to the usual Interfaces
screen:
- IPv4 Address (Node A/B): if the other node will use a static IP address, rather than DHCP, set it here.
- IPv4 Address (This Node): if this node will use a static IP address, rather than DHCP, set it here.
- Virtual IP: enter the IP address to use for administrative access to the array.
- Virtual Host ID: the Virtual Host ID (VHID) must be unique on the broadcast segment of the network. It can be any unused number between 1 and 255.
- Critical for Failover: check this box if a failover should occur when this interface becomes unavailable. How many seconds it takes for that failover to occur depends upon the value of the Timeout, as described in Table 4.15.1. This checkbox is interface-specific, allowing you to have different settings for a management network and a data network. Note that checking this box requires the Virtual IP to be set and that at least one interface needs to be set as Critical for Failover to configure failover.
- Group: this drop-down menu is grayed out unless the Critical for Failover checkbox is checked. This box allows grouping multiple, critical-for-failover interfaces. In this case, all of the interfaces in a group must go down before failover occurs. This can be a useful configuration in a multipath scenario.
After the network configuration is complete, log out and log back in, this time using the Virtual IP address. Volumes and shares can now be configured as usual and configuration automatically synchronizes between the active and the standby node. A HA Enabled icon is added after the Alert icon on the active node. The passive or standby node indicates the virtual IP address that is used for configuration management. The standby node also has a red Standby icon and no longer accepts logins as all configuration changes must occur on the active node.
Note
After the Virtual IP address is configured, all subsequent logins should use that address.
When HA has been disabled by the system administrator, the status icon changes to HA Disabled. If the standby node is not available because it is powered off, still starting up, or is disconnected from the network, or if failover has not been configured, the status icon changes to HA Unavailable.
The options available in
System → Failover
are shown in
Figure 4.15.1:
and described in
Table 4.15.1.
Fig. 4.15.1 Example Failover Screen
| Setting | Value | Description |
|---|---|---|
| Disabled | checkbox | when checked, administratively disable failover which changes the HA Enabled icon to HA Disabled and activates the Master field; an error message is generated if the standby node is not responding or failover has not been configured |
| Master | checkbox | grayed out unless Disabled is checked; in that case, this box is automatically checked on the master system, allowing the master to automatically take over when the Disabled box is unchecked |
| Timeout | integer | specify, in seconds, how quickly failover occurs after a network failure; the default of 0 indicates that failover either occurs immediately or, if the system is using a link aggregation, after 2 seconds |
| Sync to Peer | button | open a dialog window to force the TrueNAS® configuration to sync from the active node to the standby node; after the sync, the standby node must be rebooted (enabled by default) to load the new configuration; do not use this unless requested by an iX support engineer, the HA daemon normally handles configuration sync automatically |
| Sync From Peer | button | open a dialog window to force the TrueNAS® configuration to sync from the standby node to the active node; do not use this unless requested by an iX support engineer, the HA daemon normally handles configuration sync automatically |
Warning
Booting an HA pair with failover disabled causes both nodes to come up in standby mode. The GUI shows an additional Force Takeover button which can be used to force that node to take control.
Tip
The TrueNAS® version of the ifconfig command adds
two additional fields to the output to help with failover
troubleshooting: CriticalGroupn and Interlink.