Edge Cloud Computing (ECC) is a new approach for bringing Mobile Cloud Computing (MCC) services closer to mobile users in order to facilitate the complicated application execution on resource-constrained mobile devices. The main objective of the ECC solution with the cloudlet approach is mitigating the latency and augmenting the available bandwidth. This is basically done by deploying servers (a.k.a. “Cloudlets”) close to the user’s device on the edge of the cellular network. When considering the users’ mobility along with the limited resource of the cloudlets serving them, the user-cloudlet communication may need to go through multiple hops, which may seriously affect the communication delay between them and the quality of services (QoS). To reduce as much as possible the negative effects of such a QoS degradation, service execution must be dynamically migrated to a better placement. This study proposes a novel Cost-aware Virtual Machine (VM) placement and migration (CoPaM) framework for mobile services in a network of cloudlets. A Mixed Integer Linear Programming (MILP) model is proposed to select the least cost cloudlets for serving mobile users to a given trajectory in advance based on path prediction methods. Since the proposed model is NP-hard, it is not applicable within large-scale environments with a centralized approach and the use of Software Defined Networking (SDN) technology. Therefore, a heuristic algorithm is presented. Experiments are conducted by emulating the proposed framework in Mininet-WiFi with the Floodlight usage as the SDN controller. The simulation results show the superiority of the performance of the proposed architecture in terms of the service rate and the costs imposed on the operator in comparison to existing approaches.