It depends on how much extra routine maintenance you want to do to get the value of the separation. A new VM does come at a cost in time and effort. Not as much of a cost as a physical computer but still a cost. The more VMs you create the more systems you need to track, update, upgrade, and fiddle with.
I split the difference. I have a few VMs and host associated stuff together (e.g. all home automation on one VM, media services on another, NAS on a third, etc) and provide further isolation using Docker, though that isn’t a requirement, I just find managing Docker containers to be way less effort than installing software directly most of the time. For me I think I’ve found a happy medium. You may opt for more or less isolation.
Don’t “feel”. Experiment and measure. If you are just hosting OH on that VM you are way way overallocating resources. 2 cpu and 1.5 GB RAM would probably twice what OH would ever need.
I’ve no experience with ELK or TICK (why both?) but those numbers seem like reasonable starts based on nothing at all.
But why worry about this now? The joy of VMs is you don’t have to get it right at the start. Over provision your server and then guess what you need for your VMs and adjust as necessary based on actual usage. You are not stuck with the number of CPUs and RAM you initially create a VM with.
It depends on what you want out of this. What needs to be separated from everything else? Is it OK for OH and TICK to share the same DB instance? Are you planning on experimenting with ELK and TICK and then choose one and blow away the other one? All of these sorts of plans and requirements will drive you towards more or fewer VMs.