Option 3 is the correct answer. Containers provide maximum flexibility for efficient use of cluster resources. The orchestration platform reduces operational overhead. Therefore, efficient use of resources is possible by using containers in the cluster that is managed by the user.
Google Cloud uses Kubernetes to perform container orchestration. Kubernetes creates containers to increase the reliability of your compute configuration, reducing the time and resources you spend on DevOps, while also reducing the load associated with these tasks.
Option 1 is incorrect. The load balancer is used to distribute traffic between instances. Configuring a load balancer does not avoid the overhead of orchestration operations.
Option 2 is incorrect. It is not recommended to run in a single virtual machine as all services will go down if the server fails.
Option 4 is incorrect. As with option 2, it is not recommended to run in a single virtual machine as all services will go down if the server fails.
【reference】
https://cloud.google.com/containers/