Docker single container vs multiple containers

I'm going to setup ELK solution on single server with 16GB RAM and 2TB space. (I'm limited only to single server).
After reading this article - i'm very confused.... Should I:

  • run multiple docker containers on the single machine - described here
  • run one container with max resources without single-node cluster mode;
  • run using single-node cluster with enabled bootstrap checks.

Thanks.

Welcome!
Single-node elasticsearch is not recommended for production beacuse you will lose redundancy, reliability.
You can run multiple docker containers on a single machine.

With one single machine, 16gb of RAM, I'd run one single instance (with or without Docker), with 8gb of HEAP allocated to it.

Thanks, what about:

  • Would you recommend the same for machine: Intel Xeon-E 2288G - 64GB DDR4 ECC 2666MHz - 4x SSD 960GB RAID 0 ? (I mean 50% heap)
  • How many heap I should allocate for Logstash?
  • Should I use single instance mode with bootstrap-check enabled or there is another option?

Thanks for your reply.

Since it is ELK stack, I'm not interested in reliability,

So I'd allocate 30gb of heap at most. But may be less if all that heap is not needed.

If you are in cloud, why not just using cloud.elastic.co and upgrade the size as needed?

The customer decide to deploy self-hosted solution for the first time (to see profitability).
Is there another solution to run single instance without single-node clusted or only single-node cluster?

Thanks.

I don't understand this question

Should I use single-node discovery for production mode or other configuration?

I'd enable bootstrap checks indeed.