前言
继 AliyunLinux 15和17为代表的初代系统后,阿里云整合资源推出了 AliyunLinux 二代,而它也有一个很有意思的slogan:阿里云原生免费操作系统,这是一款云原生操作系统,也带来了很多优异的新特性来赋能 RHEL7 系的操作系统,让其更加贴合云计算的虚拟化环境并提升更多性能。那就让我们来看一下 AliyunLinux 2 究竟带来了那些黑科技吧!
介绍
Aliyun Linux 2 是阿里云推出的下一代 Linux 发行版,它为云上应用程序环境提供 Linux 社区的最新增强功能,在提供云上最佳用户体验的同时,也针对阿里云基础设施做了深度的优化。Aliyun Linux 2 OS 镜像可以运行在阿里云全规格系列 VM 实例上,包括弹性裸金属服务器 (神龙)。
官网:https://www.aliyun.com/product/alinux
特性
新版云内核
Aliyun Linux 2默认搭载并启用最新版本阿里云云内核。新版云内核提供了以下特性:
基于内核社区长期支持的4.19.24版本定制而成,增加适用于云场景的新特性、改进性能并修复重大缺陷。
提供针对ECS实例环境定制优化的内核启动参数和系统配置参数。
提供操作系统崩溃后的内核转储(Kdump)能力,您可根据需要在线打开或者关闭该功能,无需重启操作系统。
提供内核热补丁升级(Live Patch)能力。
软件包
Aliyun Linux 2默认搭载阿里云命令行工具。软件包更新如下:
网络服务从network.service切换为systemd-networkd。
用户态软件包与CentOS 7.6.1810版本兼容,该版本的用户态软件包可直接在Aliyun Linux 2使用。
软件包安全漏洞(CVE)修复更新至截止2019年3月底。
性能优化
Aliyun Linux 2优化了开机启动速度并提升了运行时的系统性能,包括:
针对ECS实例环境大幅优化启动速度。
针对ECS实例环境优化多线程场景,提升大规格实例多线程性能。
针对MySQL数据库场景的全链路优化,与ESSD云盘配合,显著提升性能。
跑分
可以看到 AliyunLinux2 针对WEB和飞天虚拟化下的场景做了非常多的优化,让我们跑个分看看到底有没有效果吧!
为了避免偶然性,跑分分别以阿里云·华北3的三台机器进行测试,分别安装 AliyunLinux2、CentOS7和Ubuntu18.04,并以2核2G内存和4核4G内存分别跑两次。
分数左边是单核成绩,右边是多核(线程)成绩
AliyunLinux2CentOS7Ubuntu18.042C2G 第一次1055.7/1751.8930.4/1520.01052.5/1378.22C2G 第二次1070.6/1749.1926.2/1511.11050.9/1375.94C4G 第一次1097.7/2624.0929.8/2297.01065.0/2032.14C4G 第二次1082.9/2609.2930.0/2296.71066.2/2037.0
可见同样的配置,同样的地域,AliyunLinux2 得益于优良的调教,性能提升非常可观,约有15%的性能提升。相比之下的话,Ubuntu18.04 单核心跑分也有着很不错的表现,但是多核心一起跑分数就比 CentOS7 要低了。
在网络上,AliyunLinux2 是默认编译好并开启 BBR 了的,所以无需我们手动开启,且和 CentOS7 安装 ELRepo 内核开启 BBR 以及 Ubuntu 18.04 开启BBR后的效果一致,没有较大的差异出现,没有类似腾讯 TCPA 那样的 Web 网站黑科技出现。
不过值得一提的是,腾讯的TCPA仅仅是提供二进制包的免费使用且并没有开源,而集成了阿里云云原生优化特性的 ALK 确是开源的,传送门:https://alibaba.github.io/cloud-kernel/zh/。当然也是希望腾讯能也开源一些黑科技出来,让云计算体验更胜一层楼呀!
安装
阿里云
选择 ECS 的时候公共镜像选择 AliyunLinux 即可。
体验 AliyunLinux2 不多花一分钱提升15%服务器性能
其他 CentOS7/RHEL7
只能按照 ALK 以获得一些 ALK 内核的特性,一些系统层的优化目前还不能直接通过转化获得。
cd /etc/yum.repos.d/
wget https://gist.githubusercontent.com/ivmm/ff3190353321b647115331a11d00f7f5/raw/e72cdda09d95bf0d4af4573c467144204533335b/alinux-2.1903-plus.repo
yum install -y kernel kernel-devel kernel-headers
目前了解到 AliyunLinux2 主要是针对阿里云飞天虚拟化平台开发的,不适用于物理机环境,同时针对其他云计算厂商虚拟化下应用 ALK 内核没有做过稳定性测试,还需要更多的开发者贡献内核和提交BUG来优化ALK在更多虚拟化场景下的应用。我目前自己有测试 UCloud 的机器安装 ALK 貌似还没有遇到报错和不稳定的情况。
总而言之,如果你本来就是用的 CentOS7 在阿里云上,那么非常建议选择使用 AliyunLinux2,配置越高性能提高的就会越明显。