Learn the software and hardware recommendations for deploying and running TiKV
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 Platform||Version|
|Red Hat Enterprise Linux||7.3 or later 7.x releases|
|CentOS||7.3 or later 7.x releases|
|Oracle Enterprise Linux||7.3 or later 7.x releases|
|Ubuntu LTS||16.04 or later|
Other Linux OS versions such as Debian Linux and Fedora Linux might work but are not officially supported.
|sshpass||1.06 or later|
|TiUP||1.4.0 or later|
|sshpass||1.06 or later|
|numa||2.0.12 or later|
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
|Component||CPU||Memory||Local Storage||Network||Instance Number (Minimum Requirement)|
|PD||4 core+||8 GB+||SAS, 200 GB+||Gigabit network card||1|
|TiKV||8 core+||32 GB+||SAS, 200 GB+||Gigabit network card||3|
- 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.
|Component||CPU||Memory||Hard Disk Type||Network||Instance Number (Minimum Requirement)|
|PD||4 core+||8 GB+||SSD||10 Gigabit network card (2 preferred)||3|
|TiKV||16 core+||32 GB+||SSD||10 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.
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.
|TiKV||20160||the TiKV communication port|
|TiKV||20180||the port for fetching statistics, used by Prometheus|
|PD||2379||the client port, entrance for the clients to connect TiKV cluster|
|PD||2380||the inter-node communication port within the PD cluster|
|Prometheus||9090||the communication port for the Prometheus service|
|Node_exporter||9100||the communication port to report the system information of every TiKV cluster node|
|Blackbox_exporter||9115||the Blackbox_exporter communication port, used to monitor the ports in the TiKV cluster|
|Grafana||3000||the 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
ncat -l $PORT -k -c 'xargs -n1 echo'
Then from the other machines, verify that the echo server is reachable with
Web browser requirements