I need to scale out elasticsearch. Can you recommend right amount of data nodes? Thank you in advance.
That depends entirely on your use case and your data volumes, so without a lot more information I do not see how anyone can even try to answer that.
Master 3 servers. Data 19 servers.
Is it ok?
No, that is not nearly enough. We do not know anything about your use-case, set-up, hardware or the problems you are facing that led to the conclusion you need more data nodes.
I would recommend you review the following resources: