Partitioning ============ Default Partitioning -------------------- Partitions system are configured with a standard schema using LVM, so that they can be possibly changed afterwards. By default the whole space available on the first block device is used and any existing partition is removed. Alternatively you might set the sysdb attribute ``system_disk`` with the device name of the disk which should be used instead:: bob node set-attr $FQDN system_disk=md126 The default partition schema for RHEL 7 is: - create one primary ``/boot`` partition of 1Gb; - create the ``vg_root`` Volume Group that uses the rest of the disk; - on ``vg_root`` create the following logical volumes: - ``lv_root`` of 12 Gb size for ``/root``; - ``lv_var`` of 8 Gb size for ``/var``; - ``lv_var_log`` of 2 Gb size for ``/var/log``; - ``lv_tmp`` of 2 Gb size for ``/tmp``. For RHEL 8 it is: - create one primary ``/boot`` partition of 1Gb; - create the ``vg_root`` Volume Group that uses the rest of the disk; - on ``vg_root`` create the following logical volumes: - ``lv_root`` of 14 Gb size for ``/root``; - ``lv_home`` of 2 Gb size for ``/home``; - ``lv_var`` of 8 Gb size for ``/var``; - ``lv_var_log`` of 3 Gb size for ``/var/log``; - ``lv_var_tmp`` of 2 Gb size for ``/var/log``; - ``lv_tmp`` of 2 Gb size for ``/tmp``. Partial Custom Partitioning --------------------------- To increase these sizes of the above listed default volumes, you might use :doc:`vgroot::path <../puppet/profiles/vgroot>` in Hiera:: vgroot::path: lv_root: 50GB lv_var: 30GB To add a new volume to the system disk (Volume Group ``vg_root``), you need to address the `lvm Puppet module `_ directly in Hiera:: lvm::volume_groups: vg_root: physical_volumes: - /dev/nvme0n1p3 logical_volumes: lv_data: size: 3TB fs_type: 'xfs' mountpath: '/mnt/data' size_is_minsize: true Please note that you need also to list the partition on which ``vg_root`` is located. The same you can do to add partitions outside of the system disk, but here you need to define the full LVM volume group:: lvm::volume_groups: vg_data: physical_volumes: - '/dev/sdb' logical_volumes: lv_usr_local: mountpath: '/usr/local' fs_type: 'xfs' Full Custom Partitioning ------------------------ It is possible to customize the partitioning by using the ``partitions`` attribute on sysdb. The ``partitions`` attribute can take two values: - ``manual``: this will not partition the disks and the installation process will wait for manual partitioning; - ````: it is assumed to be a file containing the partitioning commands as used in kickstart. If it is not possible to download the given URL the system fails-back to manual at installation time. Please also note that no check is done on the URL content.