倚天云服务器测评报告
一、引言
随着云计算技术的快速发展,云服务器在各个领域得到了广泛应用。其中,倚天云服务器以其独特的CIPU架构和倚天710处理器的优势,引起了广大用户的关注。本测评报告旨在通过对倚天云服务器的实例使用、业务部署、性能测试和迁移体验等方面进行评估。
二、倚天服务器环境搭建体验
这次活动,阿里云提供了免费试用的机会,我们只需要在活动页面,点击领取即可。
在倚天云平台开通过程中,我们可以发现,与X86系列的CPU服务器相比,倚天系列的CPU服务器可使用的镜像包非常少。同时,阿里云提供的公共镜像中倚天系列镜像包版本也相对较少,而且需要特定的ARM版本。这种差异可能是因为倚天系列的CPU架构与X86系列不同,导致镜像包的兼容性和支持性受到影响。对于需要使用倚天系列CPU的用户来说,需要仔细选择合适的镜像包,并确保其与自己的应用场景和需求相匹配。同时,也需要关注倚天系列CPU在云平台上的生态系统和未来发展情况,以更好地满足自己的需求。
三、倚天服务器功能测评
2.1、实例使用体验
在实例使用和业务部署方面,我们重点关注倚天云服务器的启动速度、操作便捷性、应用兼容性以及业务部署的难易程度。我们将对比倚天实例与X86架构主售实例在这方面的差异,分析倚天实例在业务部署方面的优势和劣势。
1. 性能测试
为了深入了解倚天云服务器的性能表现,我们将从以下几个方面进行测试:
(1) 倚天系统重启速度:
通过手动改点击重启,到出现重启成功,对比了x86服务器,倚天云服务器的速度相对还快一些。倚天服务器重启时间在12s左右,x86服务器在15s左右。(服务器配置完全一致,都是刚申请,预装的操作系统也一致。)
(2) 文件传输性能:在进行文件传输性能测试时,我将采用以下方法来逐步增加业务压力并观察倚天实例的性能变化曲线:
- 准备测试文件:我将准备两个不同类型的测试文件,一个5G的大文件和一个由1G碎片化的文件。这些文件将被用于测试倚天实例的文件传输功能。
- 逐步增加业务压力:我将逐步增加业务压力,例如每次增加10个并发连接,直到达到倚天实例的最大负载能力。在每个压力水平下,我都会进行多次文件传输测试,以获取可靠的性能数据。
- 观察性能变化曲线:通过对倚天实例的多次测试,我们发现在文件传输开始阶段,性能指标呈现快速上升的趋势。但是,一旦文件传输过程达到平稳状态,各项指标就会保持相对稳定,直至文件上传完成。这种现象可能与系统资源的合理分配有关,为了更好地保障系统稳定性和性能优化,不知道倚天团队能不能再次优化系统资源调配,进一步提升系统性能。
- 分析性能优势:通过对性能变化曲线可看出,倚天服务器实例在文件传输方面的性能表现出色。
- 传输速度:观察发现倚天实例在传输大文件和碎片化文件时的速度都很出色,基本上能够稳定在10MB/s的速度。
- 响应时间:倚天实例在文件传输过程中的响应时间非常快,基本上无需等待。
- 系统资源利用率:在系统的监控界面中,我们可以清晰地查看倚天实例在文件传输过程中的各项资源使用情况。其中,CPU的利用率表现较稳定,波动的范围还在理想的状态。另外内存也相对较为稳定,一直处于15%左右的水平。不过,我们也注意到网络流入流出的数据出现了较大的波动,这表明倚天实例在文件传输过程中的网络资源利用率相对较高。
通过以上的测试,我发现倚天实例在文件传输性能方面非常出色。
2.2、业务部署测试
在这次测试中,我尝试了部署一个中型的业务系统。之前的业务部署在x86架构服务器上,当时的配置为4核16GB。这次我选择尝试在2台2核4GB的倚天服务器来部署该业务系统。
业务产品清单:
- mysql
- nginx
- redis
- rabbitmq
- consul
- .net core
以下是我的部署步骤。
1. Mysql部署:
a、创建mysql文件夹
# mkdir -p /data/mysql
b、解压安装包
# cd /root
# tar -xvf mysql-5.7.27-aarch64.tar.gz
c、配置Mysql
# mv /usr/local/mysql-5.7.27-aarch64 /data/mysql
# mkdir -p /data/mysql/logs
# groupadd mysql && useradd -r -g mysql mysql
# chown -R mysql:mysql /data/mysql
# ln -sf /data/mysql/my.cnf /etc/my.cnf
# cp -rf /data/mysql/extra/lib* /usr/lib64/
# mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.old
# ln -s /usr/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
d、设置开机启动
# cp -rf /data/mysql/support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# systemctl enable mysqld
e、添加环境变量
# vim /etc/profile
键盘输入“i”,开启编辑模式
添加下面两行代码:
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
保存退出:Esc键 再输入 :wq
# source /etc/profile
f、初始化启动mysql
# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
注:提示这个错误ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /lib64/libdnf.so.2)
删除文件libstdc++.so.6
创建软连接:ln -s /usr/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
2. Rabbit mq部署:
在安装mq之前,我们需要先安装erlang。
操作步骤如下,这个安装过程,没有出现任何问题,与x86架构下的服务器是一样的。
a、执行以下安装命令
# cd /root
# xz -d rabbitmq-server-generic-unix-3.7.16.tar.xz
# tar -xvf rabbitmq-server-generic-unix-3.7.16.tar
# mv rabbitmq_server-3.7.16 /data
# vi /etc/profile --环境变量设置
#set rabbitmq environment
export PATH=$PATH:/data/rabbitmq_server-3.7.16/sbin
# source /etc/profile 改了环境变量重启
b、设置开机启动
# vi /etc/init.d/rabbitmq
--拷贝1.7步骤 部署包下的 rabbitmq文件内容
# cd /etc/init.d/
# chmod a+x rabbitmq
# chkconfig --list
# chkconfig --add rabbitmq
--创建日志目录
# mkdir -p /var/log/rabbitmq
# service rabbitmq start
c、测试是否安装成功
# systemctl status rabbitmq.service
出现这个表示服务已启动
3. Consul部署:
a、文件下载及安装
--解压
# cd /root
# unzip consul_1.9.1_linux_amd64.zip
--移动
# mkdir -p /data/cons
# mv consul /data/cons/
--创建sh文件
# vi /data/cons/start.sh
--拷贝以下内容,172.18.165.80改为当前部署服务器的ip
#!/bin/bash
/data/cons/consul agent -dev -client 172.18.165.80
b、设置start.sh 权限
# cd /data/cons
# chmod u+x start.sh
--创建服务文件
# vi /lib/systemd/system/consul.service
--拷贝一下内容
[Unit]
Description=consul
After=network.target
[Service]
ExecStart=/data/cons/start.sh
KillSignal=SIGTERM
[Install]
WantedBy=multi-user.target
c、设置开机启动consul
systemctl enable consul.service
d、启动consul
systemctl start consul.service
--查看状态
systemctl status consul.service
打开浏览器输入ip及consul端口,出现以下页面表示服务正常启动。
4. Redis安装:
a、安装gcc依赖
# yum install -y gcc
b、解压
# cd /root
# tar -zxvf redis-6.0.5.tar.gz
c、切换到redis解压目录下,执行编译
# 软连接sudo ln -s /usr/lib64/libatomic.so.1 /usr/lib/libatomic.so
# mkdir -p /data/redis
# cd redis-6.0.5
# cd redis-6.0.5/deps
# make -j64 hiredis lua jemalloc linenoise
# cd ..
# make -j64
安装并指定安装目录
# make install PREFIX=/data/redis
d、拷贝修改配置
从 redis 的源码目录中复制 redis.conf 到 redis 的安装目录
cp /root/redis-6.0.5/redis.conf /data/redis/bin/
# vi /data/redis/bin/redis.conf
修改以下节点
#bind 127.0.0.1 //ip改为当前部署服务器的ip
port 6382
requirepass xk@12580
pidfile /var/run/redis_6382.pid
daemonize yes
e、设置开机配置
# vi /usr/lib/systemd/system/redis.service
内容
[Unit]
Description=Redis
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/var/run/redis_6382.pid
ExecStart=/data/redis/bin/redis-server /data/redis/bin/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
Restart=always
RestartSec=10
StartLimitInterval=0
[Install]
WantedBy=multi-user.target
f、重启redis
a、重启配置
# systemctl daemon-reload
b、启动redis
# systemctl start redis.service
c、设置开启启动
# systemctl enable redis.service
d、查看是否安装成功
# systemctl status redis.service
出现这个表示安装成功
5. .net core安装
a、安装依赖包
# yum install autoconf automake libtool
# yum install freetype-devel fontconfig libXft-devel
# yum install libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel libexif-devel
# yum install glib2-devel cairo-devel
b、安装3.1版本
# tar zxf dotnet-sdk-3.1.426-linux-arm64.tar.gz -C /data/dotnet
# vi /etc/profile
环境变量增加
export DOTNET_ROOT=/data/dotnet
export PATH=$DOTNET_ROOT:$PATH
刷新环境变量
# source /etc/profile
c、查看是否安装成功cmd输入:dotnet
注:安装报错ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /lib64/libdnf.so.2)
删除/lib64/libstdc++.so.6文件,重新创建28版本软连接
d、安装libgdiplus
安装下面这个是为了使用.net绘图功能
安装完成后需要在/etc/ld.so.conf.d下建立一个文件(如local.conf),内容填写上/usr/local/lib/lib,然后用root权限执行ldconfig。这样调用相应的so文件就会在/usr/local/lib/lib中搜索了进入到libgdiplus解压缩后的目录,然后执行
# tar zxf libgdiplus0-6.0.4.tar.gz
# cd libgdiplus0-6.0.4
# ./configure --prefix=/usr/local/lib
# make
# make install
# ldconfig
e、安装守护进程supervisor
解压缩supervisor-4.1.0.tar.gz
# tar -vxf supervisor-4.1.0.tar.gz
# cd supervisor-4.1.0/
# python setup.py install
# cd /usr/local/bin
# echo_supervisord_conf > /etc/supervisord.conf
就会在/etc/目录下生成supervisord.conf配置文件。supervisor-4.1.0使用python3.6
6. Nginx部署:
这次部署的时候,我发现在倚天云服务器上,Alibaba Cloud Linux 3.2104 LTS 64位 ARM版系统还需要用户自己安装非常多的组件。
a、gcc 安装执行命令 # yum install gcc-c++
b、PCRE pcre-devel安装执行命令 # yum install -y pcre pcre-devel
c、zlib 安装执行命令 # yum install -y zlib zlib-devel
d、OpenSSL 安装执行命令 # yum install -y openssl openssl-devel
e、nginx安装过程我就不写了,网上很多操作手册。
安装完成后,执行以下命令
# whereis nginx
当出现以下信息,表示nginx安装成功。
7. 发布验证:
以上完成部署后,我们验证服务的启动情况。然后再打开业务系统。
8. 部署小结
在此次部署过程中,我们顺利地将业务系统从4核16GB intel x86架构服务器迁移至2台2核4G的倚天云服务器上,经过业务测试,一切运行正常。这得益于倚天云服务器稳定高效的硬件资源,以及其简便易用的部署方式,为我们在云环境下实现业务部署带来了极大的便利。此外,倚天云服务器的安全性能也让我们倍感放心,它确保了业务数据的安全和隐私,让我们能够在安全可靠的环境下运营业务。倚天云服务器的出色表现,充分体现了其作为高品质云服务提供商的实力,为我们的业务发展提供了坚实的支撑。
本次部署过程忘记记录差异化,后续我再写一篇关于部署差异化的文章。
2.3、对业务帮助及影响
我个人觉得,倚天云服务器对企业的业务帮助及影响主要体现在以下几个方面:
- 成本低:阿里云的云服务器不仅价格亲民,而且具有极高的性价比。通过比较同类型的x86架构2核4G服务器。我们可以看到,阿里云提供的intel x86架构服务器基础费用折扣后仅为1894.81元,而倚天同类型的服务器价格为1311.03元。相较于intel x86架构,倚天云服务器的价格折扣高达7折,这对于企业而言,无疑是一笔不小的经济效益,大大降低了成本。此外,阿里云还提供了按量付费和包年包月两种灵活的付费方式,以满足不同企业的需求。
- 云端安全性和可靠性、灵活性和可扩展性:这些特性是阿里云提供的所有云服务器必须具备的特性。倚天云服务器同样也具有高度灵活性和可扩展性,可以根据企业的业务需求进行弹性扩展。对于我们企业从事基层医疗服务这样的业务,随着需求的增加,可以随时增加倚天云服务器的配置和存储容量,以确保系统的稳定性和性能。
2.4、迁移体验
这次迁移我使用的是YODA产品。YODA倚天应用迁移工具是一款可以简化客户应用迁移到基于倚天710的服务器的过程的工具。当前,工具仅支持x86 Linux到Yitian Linux的扫描与分析,不支持Windows软件代码的扫描、分析与迁移。
首先我选择了镜像包(t-ptg-yoda-x.x.x-yyyymmddhhmmss.al8.aarch64.img.tar)并安装。安装完成后,执行dokcer images可找到该镜像。
然后开始进行迁移测试,当前YODA倚天应用迁移工具以二进制,结合命令行CML方式进行使用,在执行或者调用其进行应用检测时,需要指定必要的参数以提供输入文件和对应的输出文件类型,从而实现检测结果的正常获取。其中必要参数为检测时必须要指定或者提供的参数,可选参数可根据实际需要进行配置。
当前YODA支持的参数选项可通过“yoda -h/--help"进行获取查看。
这次迁移我是按照官方提供的一个手册操作的,整个过程非常顺利,几乎没有遇到任何障碍。由于操作体验,倚天的迁移性能,我不好客观评价,总体上来说,它能够满足业务的平滑迁移。
四、测评过程碰到的问题及建议
在阿里云监控平台上,不知道是不是兼容的问题,我在使用过程中,倚天服务器出现了不同程度错误。
在阿里云ECS控制台,出现系统超时的情况会导致控制台界面出现异常。此时可能会弹出两个报错框,让用户感到不友好。虽然出现这个情况,用户只需要刷新页面或者重新登录进入即可。但是建议阿里云团队尽快解决问题。毕竟阿里云致力于为用户提供稳定可靠的云服务,希望能够为用户提供更好的服务体验。
五、总结
通过对倚天云服务器的系统镜像、实例使用、业务部署、性能测试和迁移体验等方面的评估。我个人觉得,倚天云服务器在启动速度、存储性能、网络性能和文件传输性能等方面具有显著优势,能够为云上业务提供更好的支持和保障。同时,倚天实例的稳定性和可靠性也非常出色,能够保证业务的稳定运行。本测评报告希望为用户提供对倚天云服务器的有更加深入的了解和参考意义,为用户的云上业务选择提供依据。