  This paper proposes an architectural framework for the efficient
orchestration of containers in cloud environments. It centres around resource
scheduling and rescheduling policies as well as autoscaling algorithms that
enable the creation of elastic virtual clusters. In this way, the proposed
framework enables the sharing of a computing environment between differing
client applications packaged in containers, including web services, offline
analytics jobs, and backend pre-processing tasks. The devised resource
management algorithms and policies will improve utilization of the available
virtual resources to reduce operational cost for the provider while satisfying
the resource needs of various types of applications. The proposed algorithms
will take factors that are previously omitted by other solutions into
consideration, including 1) the pricing models of the acquired resources, 2)
and the fault-tolerability of the applications, and 3) the QoS requirements of
the running applications, such as the latencies and throughputs of the web
services and the deadline of the analytical and pre-processing jobs. The
proposed solutions will be evaluated by developing a prototype platform based
on one of the existing container orchestration platforms.
