Initial Docker Container Placement Algorithm in Cloud
Computing
Journal:
GRENZE International Journal of Engineering and Technology
Authors:
Jigna Acharya
Volume:
10
Issue:
1
Grenze ID:
01.GIJET.10.1.530
Pages:
1683-1689
Abstract
Recent developments in Cloud Computing have resulted in a new virtualization
technology called Docker Containers, which supports services that are placed on machines that
share resources of the operating system. Additionally, it is a lightweight virtualization
technology that can be deployed on cloud machines. Thousands of Docker containers can be
placed to handle millions of user requests. Using Docker architecture, failures are minimized as
well. It is very challenging, however, to manage and place various types of containers on cloud
machines. Docker Swarm is a solution that supports this challenge. Through it, containers are
placed and managed on clusters of machines. Swarm supports a default strategy of container
placement called spread strategy, which distributes containers equally across machines in the
cluster. Spread strategy does not consider how to best utilize the resources of the docker
machine. As a result, load becomes unequal on machines, like some become overloaded and
some under loaded. Our main goal is to distribute containers on the docker machine based on
how much of its resources are being used. To determine where to place containers on each
machine, we consider how much memory is being used. We propose an algorithm for
determining which machine has the freest memory and placing a container on that machine.
Experimental results are compared between our proposed algorithm and the default spread
algorithm. By placing containers on machines in such a way as to prevent overloading or under
loading, we have proposed a container placement algorithm. In addition, this strategy
minimizes the number of physical machines in a docker cluster