Geo-distribute Cloud Applications at the Edge