In the multi-tenant architecture of cloud computing, different applications have different requirements and priorities. In the case of network congestion within a data center, failure of transferring data on time may cause a significant performance degradation of an application. It may result in a severe failure for a critical application that needs a certain level of QoS satisfaction, therefore, efficient resource provisioning techniques are vital to ensure transferring the high-priority data over the other traffics even in network congestion. In Software-Defined Networking (SDN)-enabled clouds, this is possible by reconfiguring network flows dynamically adapting to network traffics. In this paper, we propose priority-aware resource placement algorithms considering both host and network resources. Our priority-aware VM allocation (PAVA) algorithm places VMs of the high-priority application to closely connected hosts to reduce the chance of network congestion caused by other tenants. The required bandwidth of a critical application is also guaranteed by bandwidth allocation with a configuration of priority queues on each networking device in a data center network managed by SDN controller. Our experiment results show that the combination of proposed approaches can allocate sufficient resources for high-priority applications to meet the application’s QoS requirement in a multi-tenant cloud data center.