Should Metabase connect directly to the ERP Database or to any replica DB?
This is completely your choice as your can always connect directly with the production database or even to a staging / dev database if you have the environment setup accordingly.
Will there be any performance bottleneck if Metabase is accessing ERP Master DB directly? If so, how to mitigate that
This shouldn’t be an issue if the server hardware is of good configuration. Also it depends a lot on the complexity of the dashboard you’re going to create. If you’re going to write custom multi-level queries then it might create certain performance issues. This cannot be ascertained without a proper breakdown of the dashboard requirement.
Do we need to deploy Metabase in a Separate Server or in same server as ERP?
Again, it’s your choice completely. You can deploy it on the same server as ERPNext or even on a remote server. Depends on what you’re trying to achieve.
Refer the link below to understand how you can install and setup Metabase on the same server as ERPNext