[TiDB Usage Environment] Poc
[TiDB Version] v5.4.0
[Resource Configuration]
I want to validate certain cases based on the production environment configuration, but currently, I only have one physical machine. I want to deploy the components (except tiflash/ticdc) tidb+pd+tikv all on the same machine. Should the configuration be the sum of the recommended production environment configurations?
For example:
cpu = 16✖️2 (tidb) + 8✖️3 (pd) + 16✖️3 (tikv) = 104 cores
memory = 48✖️2 + 16✖️3 + 64✖️3 = 336GB
Is that correct?
It is not yet possible to strictly limit resources for each component on the same machine. It depends on what case you want to test. For regular testing, such mixed deployment is also feasible.
Then you need to set resource limits for each component separately. Performance metrics can’t be accurately measured, for example, for IO, it’s like you’re dividing it by 3 or even more.
It’s fine to test and experience it yourself, but if you are verifying performance and going into production, it is highly discouraged to deploy this way. Here is the official hybrid deployment solution:
If it’s just for functional verification, 1 machine is enough, and you can even reduce the resources. But if it’s for performance verification, it definitely won’t work…