X-Git-Url: https://git.proxmox.com/?p=pve-docs.git;a=blobdiff_plain;f=local-zfs.adoc;h=a20903f9af8a5fb951cd2abd12e77823dbb6764b;hp=ff602ed13503587c79353ae3150fe05a8182a61f;hb=8c1189b640ae7d10119ff1c046580f48749d38bd;hpb=128b18c0e58d73e6bc8c0acc0f12515658edf1d0 diff --git a/local-zfs.adoc b/local-zfs.adoc index ff602ed..a20903f 100644 --- a/local-zfs.adoc +++ b/local-zfs.adoc @@ -64,12 +64,12 @@ increase the overall performance significantly. IMPORTANT: Do not use ZFS on top of hardware controller which has it's own cache management. ZFS needs to directly communicate with disks. An HBA adapter is the way to go, or something like LSI controller flashed -in 'IT' mode. +in ``IT'' mode. If you are experimenting with an installation of {pve} inside a VM -(Nested Virtualization), don't use 'virtio' for disks of that VM, +(Nested Virtualization), don't use `virtio` for disks of that VM, since they are not supported by ZFS. Use IDE or SCSI instead (works -also with 'virtio' SCSI controller type). +also with `virtio` SCSI controller type). Installation as root file system @@ -80,11 +80,11 @@ root file system. You need to select the RAID type at installation time: [horizontal] -RAID0:: Also called 'striping'. The capacity of such volume is the sum -of the capacity of all disks. But RAID0 does not add any redundancy, +RAID0:: Also called ``striping''. The capacity of such volume is the sum +of the capacities of all disks. But RAID0 does not add any redundancy, so the failure of a single drive makes the volume unusable. -RAID1:: Also called mirroring. Data is written identically to all +RAID1:: Also called ``mirroring''. Data is written identically to all disks. This mode requires at least 2 disks with the same size. The resulting capacity is that of a single disk. @@ -97,12 +97,12 @@ RAIDZ-2:: A variation on RAID-5, double parity. Requires at least 4 disks. RAIDZ-3:: A variation on RAID-5, triple parity. Requires at least 5 disks. The installer automatically partitions the disks, creates a ZFS pool -called 'rpool', and installs the root file system on the ZFS subvolume -'rpool/ROOT/pve-1'. +called `rpool`, and installs the root file system on the ZFS subvolume +`rpool/ROOT/pve-1`. -Another subvolume called 'rpool/data' is created to store VM +Another subvolume called `rpool/data` is created to store VM images. In order to use that with the {pve} tools, the installer -creates the following configuration entry in '/etc/pve/storage.cfg': +creates the following configuration entry in `/etc/pve/storage.cfg`: ---- zfspool: local-zfs @@ -112,7 +112,7 @@ zfspool: local-zfs ---- After installation, you can view your ZFS pool status using the -'zpool' command: +`zpool` command: ---- # zpool status @@ -133,7 +133,7 @@ config: errors: No known data errors ---- -The 'zfs' command is used configure and manage your ZFS file +The `zfs` command is used configure and manage your ZFS file systems. The following command lists all file systems after installation: @@ -167,8 +167,8 @@ ZFS Administration This section gives you some usage examples for common tasks. ZFS itself is really powerful and provides many options. The main commands -to manage ZFS are 'zfs' and 'zpool'. Both commands comes with great -manual pages, worth to read: +to manage ZFS are `zfs` and `zpool`. Both commands come with great +manual pages, which can be read with: ---- # man zpool @@ -177,8 +177,8 @@ manual pages, worth to read: .Create a new ZPool -To create a new pool, at least one disk is needed. The 'ashift' should -have the same sector-size (2 power of 'ashift') or larger as the +To create a new pool, at least one disk is needed. The `ashift` should +have the same sector-size (2 power of `ashift`) or larger as the underlying disk. zpool create -f -o ashift=12 @@ -222,7 +222,7 @@ Minimum 4 Disks It is possible to use a dedicated cache drive partition to increase the performance (use SSD). -As '' it is possible to use more devices, like it's shown in +As `` it is possible to use more devices, like it's shown in "Create a new pool with RAID*". zpool create -f -o ashift=12 cache @@ -232,7 +232,7 @@ As '' it is possible to use more devices, like it's shown in It is possible to use a dedicated cache drive partition to increase the performance(SSD). -As '' it is possible to use more devices, like it's shown in +As `` it is possible to use more devices, like it's shown in "Create a new pool with RAID*". zpool create -f -o ashift=12 log @@ -240,7 +240,7 @@ As '' it is possible to use more devices, like it's shown in .Add Cache and Log to an existing pool If you have an pool without cache and log. First partition the SSD in -2 partition with parted or gdisk +2 partition with `parted` or `gdisk` IMPORTANT: Always use GPT partition tables (gdisk or parted). @@ -262,14 +262,15 @@ ZFS comes with an event daemon, which monitors events generated by the ZFS kernel module. The daemon can also send E-Mails on ZFS event like pool errors. -To activate the daemon it is necessary to edit /etc/zfs/zed.d/zed.rc with your favored editor, and uncomment the 'ZED_EMAIL_ADDR' setting: +To activate the daemon it is necessary to edit `/etc/zfs/zed.d/zed.rc` with your +favourite editor, and uncomment the `ZED_EMAIL_ADDR` setting: ZED_EMAIL_ADDR="root" -Please note {pve} forwards mails to 'root' to the email address +Please note {pve} forwards mails to `root` to the email address configured for the root user. -IMPORTANT: the only settings that is required is ZED_EMAIL_ADDR. All +IMPORTANT: The only setting that is required is `ZED_EMAIL_ADDR`. All other settings are optional. @@ -279,7 +280,7 @@ Limit ZFS memory usage It is good to use maximal 50 percent (which is the default) of the system memory for ZFS ARC to prevent performance shortage of the host. Use your preferred editor to change the configuration in -/etc/modprobe.d/zfs.conf and insert: +`/etc/modprobe.d/zfs.conf` and insert: options zfs zfs_arc_max=8589934592 @@ -302,16 +303,16 @@ to an external Storage. We strongly recommend to use enough memory, so that you normally do not run into low memory situations. Additionally, you can lower the -'swappiness' value. A good value for servers is 10: +``swappiness'' value. A good value for servers is 10: sysctl -w vm.swappiness=10 -To make the swappiness persistence, open '/etc/sysctl.conf' with +To make the swappiness persistent, open `/etc/sysctl.conf` with an editor of your choice and add the following line: vm.swappiness = 10 -.Linux Kernel 'swappiness' parameter values +.Linux kernel `swappiness` parameter values [width="100%",cols="