How many Public IP need for my cluster

I would like to know the how many Public IP addresses need to deploy my cluster in AWS.
In my cluster, there are

  • 2 data nodes for Hot data
  • 2 data nodes for warm data
  • 3 Master Nodes
  • 2 Logstash

Feel free to suggest me for best practice and any recommendation welcome.

I believe that with a reverse proxy you could succeed. For example with nginx.