Efficiently managing virtual resources is a critical component of server virtualization technology. The scheduler is crucial in strategically distributing Virtual Machines (VMs) and containers across diverse computing nodes, responsible for the allocation and the placement of VMs and containers on different computing nodes, and the migration of deployed ones between different nodes. In this thesis, we propose novel solutions in scheduling virtual resources, particularly in the management of VMs and containers deployed across multi-data center cloud environments. The proposed solutions leverage mathematical models, machine learning techniques, and blockchain technology to optimize scheduling decisions, enhance server consolidation, minimize energy consumption, and secure container scheduling. We introduce mathematical models for live VM migration techniques used in simulating and studying live VM migration in cloud systems environments. We present a novel distributed scheduling model that leverages blockchain technology to facilitate efficient sharing of VM status across multiple data centers. This enables prompt Local Area Network (LAN) or Wide Area Network (WAN) scheduling decisions for VMs. Additionally, we employ machine and deep learning techniques in a VM migration prediction service to identify the most suitable live migration method for each VM based on its unique characteristics. Our blockchain-based model reduces the total messages exchanged for the VM migration with percentages ranging from 0.5% to 22% and the total communication delay by 8% to 72% compared to a REST-based distributed model. The proposed blockchain-based distributed model also reduces the number of communication messages by 41.79% to 49.85% and total delay by 2% to 12% compared to a VPN-based centralized model. The Service Lvel Agreement (SLA) compliance rate of the proposed VM migration prediction service ranges from 18% to 94.9% for different machine learning algorithms and SLA policies. The proposed solution reduces the total migration time by 14% to 79% and the downtime by 64% to 99%. Furthermore, we present a novel two-stage container scheduling solution that addresses node imbalances and efficiently deploys containers as an optimization problem, integrating various objective functions and constraints to enhance server consolidation and minimize energy consumption. The confidentiality of migrated containers is ensured through encryption, and the associated costs of the proposed attributes-based encryption model are incorporated into the optimization constraints. The proposed solution's efficacy is demonstrated in its ability to efficiently deploy containers in multi-data center cloud environments and seamlessly migrate them between hosts within the same data center or across different data centers. The results show optimal consolidation with a reduction in the number of running hosts, ranging from 4% to over 18%. Additionally, the solution promotes minimal total power consumption with savings ranging from 3.5 to 16.25 megawatts, while also ensuring balanced server loads, highlighting the effectiveness of the proposed container scheduling approach.