Practical Applications of Arm Servers in Data Centers

Yang Gengdan Instant Incentive Sharing

Practical Applications of Arm Servers in Data Centers

@dannyyang

WeBank, as the first internet private bank in China, is also the bank that has thoroughly embraced the “De-IOE” movement while open-sourcing its excellent products. With the trend of domestic hardware localization, domestic chips are widely used in our data centers.

Practical Applications of Arm Servers in Data Centers

Storage

Relying on our distributed architecture, we use low-power Arm chips and open-source Ceph to build a distributed storage cluster. The distributed storage cluster does not require powerful x86 processors and has higher demands on disk and network compared to other applications. Building storage on Arm servers not only ensures performance but also reduces procurement costs and power consumption in the data center. The Arm-based distributed storage cluster has now been deployed on a large scale in our bank, providing file storage and block storage services for our production systems.

Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers

Computation

As a computing node, Arm servers cannot avoid the topic of virtualization in the context of cloud computing. The mainstream x86 hardware virtualization technologies include Intel’s VT-x and AMD’s AMD-V. Does the Arm architecture support virtualization? The answer is certainly yes. By comparing the open-source KVM virtualization technology between Arm and x86, the main difference in configuration lies in the choice of virtualized CPU simulation.

Practical Applications of Arm Servers in Data Centers

KVM (Kernel-based Virtual Machine) is a full-featured virtualization solution on Linux hardware platforms.

KVM mainly supports three CPU modes:

#

host-passthrough

Libvirt passes the host CPU instruction set directly to the virtual machine. What is seen in the virtual machine is the model of the physical CPU. This mode is generally used when performing nested virtualization; the downside is that hot migration cannot be performed between different CPU models using this mode.

#

host-model

Libvirt selects the closest CPU model based on the current host CPU instruction set from the configuration file /usr/share/libvirt/cpu_map.xml. In this mode, the instruction set of the virtual machine is less than that of the host machine, and the performance is relatively worse than that of host-passthrough. During hot migration, some differences between the target host CPU and the source host are allowed.

#

custom

In this mode, the virtual machine sees the smallest number of CPU instruction sets, hence the performance is relatively the worst, but it has the strongest ability to cross different CPU models during hot migration.

All three modes are supported on the x86 architecture, while on the Arm architecture, through our testing, only the host-passthrough mode is available; the other two modes will throw exceptions. It is recommended to use a newer version from the community. Based on performance data from actual tests in our lab, the differences in disk, network, and memory are not significant; the main difference lies in computing power. Using the stress-ng tool, we tested the CPU through different algorithms. With the same configuration of 8 cores and 16GB of memory, the computing power of the x86 virtual machine is approximately three times that of the Arm virtual machine. This data serves as a reference for migrating applications from x86 to Arm.

Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers
_

x86 (8cpu*16GMEM)

arm (8cpu*16GMEM)

1

308481

111130

2

308391

112355

3

308502

111343

Practical Applications of Arm Servers in Data Centers

Deploying distributed applications on Arm servers and performing virtualization on Arm servers have both been validated as feasible. Introducing domestic chips allows for CPU diversity, which helps make data centers more robust. We will continue to explore the direction of further component localization.

Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers

dao

dao

ge

ge

dian

dian

zan

zan

Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers
Practical Applications of Arm Servers in Data Centers
♬..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
♫. ♪ ~ ♬..♩~ ♫. ♪..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩

During the entire process of introducing domestic hardware, Danny actively communicated and coordinated with manufacturers, discussed technology in open-source communities, and made internal architecture changes and code modifications, ensuring the migration and use of core components at the bottom layer, while ensuring high availability and stability for computation and storage. He has made significant contributions to the application of domestic hardware; we hope to continue to strive for greater breakthroughs in the application of domestic operating systems in the future.

To be continuedPractical Applications of Arm Servers in Data Centers

Want to get more WeStar-like skills

Please continue to follow the TCTP public account!

Leave a Comment