Multiple heterogeneous applications concurrently run in distributed cloud data centers (CDCs) for better performance and lower cost. There is a highly challenging problem of how to minimize the total cost of a CDCs provider in a market where the bandwidth and energy cost show geographical diversity. To solve the problem, this paper first proposes a revenue-based workload admission control method to judiciously admit requests by considering factors including priority, revenue and the expected response time. Then, this paper presents a cost-aware workload scheduling method to jointly optimize the number of active servers in each CDC, and the selection of Internet service providers for the CDCs provider. Finally, trace-driven simulation results demonstrate that the proposed methods can greatly reduce the total cost and increase the throughput of the CDCs provider in comparison to existing methods.