3 Nodes which have all roles should work fine for your 20GB/day of data.
Source: Best Cluster Concept, Timeseries Data and more
But 4 Nodes should also do the trick so your planed setup sounds good to me
Do you really need an ingest node tho? Do you have processors running on these nodes? If not you could just ingest it into any nodes because they will have to index the replicas anyway. What I am concerned is that a single ingest node is also a SPOF and it's not good to have SPOF.
Cheers,
defalt.