A computer system, wherein the computer system comprises n compute nodes (11, 12... 1n), n storage access apparatuses (11-3, 12-3... 1n-3), and m network storage devices (21, 22... 2n), wherein at least one virtual machine, VM (31, 32... 3n), runs on each compute node, the m network storage devices provide distributed storage resources for the at least one virtual machine, and n and m are integers greater than or equal to 1; each storage access apparatus comprises a processing unit, a Peripheral Component Interconnect Express, PCIe, bus interface, and a network interface, the storage access apparatus is connected to a processor of the at least one compute node by using the PCIe interface, and the storage access apparatus is connected to the at least one network storage device by using the network interface; the storage access apparatus supports single-root I/O virtualization, SR-IOV, function and is configured to: configure at least one virtual function, VF (VF1, VF2... VFn), by using a physical function, PF, of the SR-IOV function, and configure a VM-VF association relationship, so that a direct access path is established between a VM and a VF that are associated, wherein one VM is associated with one VF; and the storage access apparatus supports a distributed storage resource scheduling function and is configured to: obtain, by using the network interface, data block resources provided by the at least one network storage device that is connected to the storage access apparatus, form a plurality of virtual volumes by using the obtained data block resources, and configure a VF-virtual volume association relationship, wherein one VF is associated with at least one virtual volume; wherein the storage access apparatus is specifically configured to: receive an allocation request for allocating a storage resource to a first VM, determine the first VF associated with the first VM, allocate at least one of the plurality of virtual volumes to the first VM, create an association relationship between the allocated at least one virtual volume and the first VF, and return an allocation response, wherein the allocation response comprises information about the at least one virtual volume that is allocated to the first VM. each storage access apparatus comprises a processing unit, a Peripheral Component Interconnect Express, PCIe, bus interface, and a network interface, the storage access apparatus is connected to a processor of the at least one compute node by using the PCIe interface, and the storage access apparatus is connected to the at least one network storage device by using the network interface; the storage access apparatus supports single-root I/O virtualization, SR-IOV, function and is configured to: configure at least one virtual function, VF (VF1, VF2... VFn), by using a physical function, PF, of the SR-IOV function, and configure a VM-VF association relationship, so that a direct access path is established between a VM and a VF that are associated, wherein one VM is associated with one VF; and the storage access apparatus supports a distributed storage resource scheduling function and is configured to: obtain, by using the network interface, data block resources provided by the at least one network storage device that is connected to the storage access apparatus, form a plurality of virtual volumes by using the obtained data block resources, and configure a VF-virtual volume association relationship, wherein one VF is associated with at least one virtual volume; wherein the storage access apparatus is specifically configured to: receive an allocation request for allocating a storage resource to a first VM, determine the first VF associated with the first VM, allocate at least one of the plurality of virtual volumes to the first VM, create an association relationship between the allocated at least one virtual volume and the first VF, and return an allocation response, wherein the allocation response comprises information about the at least one virtual volume that is allocated to the first VM.