Requirements¶
Hardware Requirements¶
Synchro Foundation requires:
- 2,6GB of RAM exclusive for foundation platform (not included applications modules requirement).
- 10GB of disk storage at Root Volume (
/). Currently Synchro Foundation takes 4GB when installed. - 2G of disk storage at the foundation
$USERfolder ( usually/root/.foundation). - Disk storage on a volume of your choice: Check the Synchro4me requirements.
Sudo access
For Foundation installation and managment is mandatory sudo/root access.
Disk Storage
- If you are making the lite installation 8GB is enough for the Foundation itself.
- Disk Storage requirement may vary based on your use and how many Synchro Apps you have running. Please check application minimun requirements.
- If you don't have 2G in
/root/.foundationfolder, you can create a symbolic link to any place where you have this space. It is used to decompresstar.gz*.modulefiles via commandline. It's necessary in installation. When using foundation-view(web) you don't need this.
Warning
It's recommended a dedicated server to host Foundation (can be a virtual server).
Access requirements (for online installation)¶
Grant access to links below during the installation or upgrading of Synchro Foundation:
- Foundation registry:
https://foundationregistry.synchro.com.br:443 - Rancher:
rpm.rancher.io - K3s:
get.k3s.io - K3s - Update:
update.k3s.io - K3s - AWS:
k3s-ci-builds.s3.amazonaws.com - GitHub:
github.com
Software Requirements¶
Linux Distribution¶
- CentOS 7.4 64-bit (or newer)
- Oracle Linux 8.6 64-bit (or newer)
- RHEL 7.9 64-bit (or newer)
- SUSE (NOT Supported)
- Ubuntu 22.04.1 LTS 64-bit (or newer)
Any
About the Linux disto, the important thing is the container support and a kernel 3.10.1+. Because of a bug fixed in 3.10.0 some distros may have problems with synchro foundation.
How to know which Linux distribution you are using?
There is no universal way to discover you distro. Here some tips:
- cat /etc/issue
- lsb_release -a
- Most of distros create a file in /etc/*-release with information you can check.
- uname -a
- cat /proc/version
- dmsg | head -1
File System¶
Foundation is able to choose the best use of the file system according to your distro and kernel version. So it's not a requisite. You can use whatever you want, but if you use xfs you need the d_type support enabled.
Foundation will create a overlayfs upper your file system.
Warning
The only corner case is a xfs file system with d_type disabled. Enable d_type on your file system to make it work.
What is d_type
d_type is the term used in Linux kernel that stands for “directory entry type”. Directory entry is a data structure that Linux kernel used to describe the information of a directory on the file system. d_type is a field in that data structure which represents the type of an “file” the directory entry points to. It could be a directory, a regular file, some special file such as a pipe, a char device, a socket file etc.
d_type information was added to Linux kernel version 2.6.4. Since then Linux Filesystem started to implement it over time. However still some file system don’t implement yet, some implement it in a optional way, i.e. it could be enabled or disabled depends on how the user creates the file system.
How to know if XFS support d_type
To detect if your XFS partition supports d_type use the command xfs_info and look for ftype=1
OS Specific Requirements¶
K3s service will not run when nm-cloud-setup.service is enabled and running!
By default k3s.service has an pre requirement that checks if nm-cloud-setup.service is enabled and running in your server. nm-cloud-setup is a network manager, commonly used in cloud servers like AWS, and must to be stopped and disabled to execute the k3s.service successfully. For more details how to disable nm-cloud-setup.service see the troubleshotting section: Amazon AWS instances disable nm-cloud-setup.service to run k3s.service.
CentOS¶
The CentOS-extras repository must be enabled. This repository is enabled by default, but if you have disabled it, you need to re-enable it.
Oracle Linux¶
You need the 64-bit version of Oracle Linux 8.6 (or newer), running the Red Hat Compatible kernel (RHCK) 3.10.0-514 or newer. Older versions of Oracle Linux are not supported.
Foundation will not install on Oracle Linux with SELinux enabled!
If you have SELinux enabled and you attempt to install Synchro Foundation, you will get an error that the container-selinux package cannot be found.
Linux Kernel¶
Kernel 3.10.0-514 is the absolute minimum kernel version required by Foundation. Newer versions are preferred though.
Required linux kernel options:¶
Foundation needs kernel with: 2
CONFIG_CGROUP_*=m
CONFIG_CGROUP_DEVICE=m
CONFIG_BRIDGE=m
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
CONFIG_VETH=m
bridge-utils ( for CONFIG_BRIDGE kernel options )
Warning
DO NOT use built-in(e.g.: y), use modules(m) in kernel.
If you are using kernel option CONFIG_IKCONFIG=y, you can see the current kernel options using:
Enabling cgroups¶
Linux cgroup is required to control resources. It's recommended to enable cgroup v2, since this allows no-root users to use it efectivelly.
To enable cgroup v2, add systemd.unified_cgroup_hierarchy=1 to the GRUB_CMDLINE_LINUX line in /etc/default/grub and run sudo update-grub.
If grubby command is available on your system, this step can be also accomplished with sudo grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=1".
Linux Packages¶
The Linux packages listed bellow are required by Foundation and validated by the Linux Package Manager during installation.
- container-selinux >= 2.9
- device-mapper-libs >= 1.02.90-1
- device-mapper-persistent-data
- lvm2
- /bin/sh
- iptables
- libcgroup(v2)
- systemd-units
- tar
- xz
Network¶
Foundation requires:
- port 80 to be opened for inbound traffic on the host.
- ip_forward active:
/proc/sys/net/ipv4/ip_forwardwith value1
Warning
Each Synchro App has its own network requirements in terms of ports and hosts it needs to access.
Xorg server and graphical environment
Foundation server does not need any X server, but some users like to activate Xorg, with gnome or some other graphical environment. The component gnome-shell has memory leak problems that may affect foundation required resources.3
Additional non Synchro software
Keep in mind that you need to provide additional requirements for any other software installed in foundation server.