Prerequisites

Learn the software and hardware recommendations for deploying and running TiKV

We are currently refactoring our documentation. Please excuse any problems you may find and report them here.

TiKV can be deployed in the Intel architecture server, ARM architecture server, and major virtualization environments and runs well. TiKV supports most of the major hardware networks and Linux operating systems.

Linux OS version requirements

Linux OS PlatformVersion
Red Hat Enterprise Linux7.3 or later 7.x releases
CentOS7.3 or later 7.x releases
Oracle Enterprise Linux7.3 or later 7.x releases
Ubuntu LTS16.04 or later

Other Linux OS versions such as Debian Linux and Fedora Linux might work but are not officially supported.

Software recommendations

Control machine

SoftwareVersion
sshpass1.06 or later
TiUP1.4.0 or later

Target machines

SoftwareVersion
sshpass1.06 or later
numa2.0.12 or later
tarany

Server recommendations

You can deploy and run TiKV on the 64-bit generic hardware server platform in the Intel x86-64 architecture or on the hardware server platform in the ARM architecture. The recommendations about server hardware configuration (ignoring the resources occupied by the operating system itself) for development, test, and production environments are as follows:

Development and test environments

ComponentCPUMemoryLocal StorageNetworkInstance Number (Minimum Requirement)
PD4 core+8 GB+SAS, 200 GB+Gigabit network card1
TiKV8 core+32 GB+SAS, 200 GB+Gigabit network card3
  • In the test environment, the TiKV and PD instances can be deployed on the same server.
  • For performance-related test, do not use low-performance storage and network hardware configuration, in order to guarantee the correctness of the test result.
  • For the TiKV server, it is recommended to use NVMe SSDs to ensure faster reads and writes.

Production environment

ComponentCPUMemoryHard Disk TypeNetworkInstance Number (Minimum Requirement)
PD4 core+8 GB+SSD10 Gigabit network card (2 preferred)3
TiKV16 core+32 GB+SSD10 Gigabit network card (2 preferred)3
  • It is strongly recommended to use higher configuration in the production environment.
  • It is recommended to keep the size of TiKV hard disk within 2 TB if you are using PCIe SSDs or within 1.5 TB if you are using regular SSDs.

Network requirements

TiKV uses the following network ports, and their default port numbers are listed below. Based on the actual environments, you can change the port number in the configuration.

ComponentDefault PortDescription
TiKV20160the TiKV communication port
TiKV20180the port for fetching statistics, used by Prometheus
PD2379the client port, entrance for the clients to connect TiKV cluster
PD2380the inter-node communication port within the PD cluster
Prometheus9090the communication port for the Prometheus service
Node_exporter9100the communication port to report the system information of every TiKV cluster node
Blackbox_exporter9115the Blackbox_exporter communication port, used to monitor the ports in the TiKV cluster
Grafana3000the port for the external Web monitoring service and client (Browser) access

You can ensure your configuration is correct by creating echo servers on the ports/IPs by using ncat (from the nmap package):

ncat -l $PORT -k -c 'xargs -n1 echo'

Then from the other machines, verify that the echo server is reachable with curl $IP:$PORT.

Web browser requirements

TiKV relies on Grafana to provide visualization of database metrics. A recent version of Internet Explorer, Chrome or Firefox with Javascript enabled is sufficient.