作者:容器镜像服务团队
伴随着企业 IT 数字化转型演变的进程,越来越多的企业采用云原生化架构升级的方式,改善应用开发运维迭代的效率,加速企业业务创新;改进资源弹性管理和迁移的效率,帮助企业降本增效。
将业务进行容器化改造并打包成容器镜像是云原生化实践的第一步,为了使企业开发者更简便地打造云原生应用交付流程,2023 年 1 月,阿里云容器镜像服务 ACR 正式推出“云原生制品中心”, 为容器开发者免费提供了来源于阿里云官方、龙蜥社区的安全可信容器基础镜像。
企业容器镜像常见风险
很多企业会依靠来自公开平台的容器基础镜像来打包,这存在以下的问题:
安全风险肆意:以全球最大规模的公共容器镜像平台 Docker Hub 为例,据文献 **[**1] 分析其中 2500 个镜像后发现,高达 82% 被认证的容器镜像至少包含 1 个高危漏洞,不含漏洞的容器镜像仅占比 17.8%。攻击者可能利用组件中存在的漏洞,注入恶意代码或控制第三方机器环境,执行从加密货币挖矿、发送垃圾邮件、到通过大型僵尸网络发起 DDoS 攻击。
无法便捷获取:以 Docker 公司的政策约束 **[**2] ,2020 年 11 月 01 日起将逐步向 Docker Hub 匿名和免费用户实施速率和拉取请求次数限制。国内的客户由于网络和性能限制,无法便捷高效、大规模拉取对应的容器基础镜像,甚至导致 K8s 上节点卡住其他业务镜像运行。
缺少维护及优化:大多公共容器镜像平台都缺少对镜像上软件包的持续维护更新、问题修复、新功能支持等。并且容器镜像都是面向通用的应用环境,缺少对各类业务场景的性能优化,无法让客户更高效利用底层基础设施的能力。
阿里云 ACR 云原生制品中心
为了解决以上的问题,阿里云容器镜像服务(ACR)推出了云原生制品中心,为容器开发者免费提供了来源于阿里云官方、龙蜥社区的安全可信容器基础镜像。包含应用容器化基础 OS 镜像、基础语言镜像、AI/大数据相关镜像类别,覆盖 ARM、ARM 64、x64、x86-64 多种系统架构,让您业务容器化过程更加便捷高效、更加安全可信。
内容安全可信
容器镜像均以 Anolis OS(Anolis OS由龙蜥开源社区发布的龙蜥操作系统,兼容 RHEL/CentOS Linux的社区发行版)、Alibaba Cloud Linux(Alibaba Cloud Linux 简称 Alinux,是由阿里云操作系统团队以 Anolis OS 为基础构建的阿里云操作系统发行版)为基础镜像。在上层软件包来源上,阿里云操作系统团队及龙蜥社区会定期对镜像中软件包进行定期 CVE 修复,从软件供应链的源头保障容器业务的安全。
便捷使用支持
- 大规模分发:阿里云云原生制品中心本身基于 ACR 企业版实例搭建,支持容器镜像、Helm Chart 等符合 OCI 标准的云原生制品安全托管及高效分发,支持千节点的分发,确保您大规模拉取及使用体验。- 镜像订阅:如果同时您的业务镜像也放在 ACR 企业版实例上,您可以使用制品订阅功能,订阅制品中心的镜像,满足订阅规则的容器镜像版本将会被自动同步到企业版实例的目标仓库中。
长期维护支持
- 阿里云官方:来源于阿里云官方的容器镜像,将由阿里云确保对应的镜像版本更新及镜像安全修复。您可以通过加入钉钉群,享受由阿里云提供的技术支持服务。(钉钉群号:33605007047)- 龙蜥社区:来源于龙蜥社区的容器镜像,将由龙蜥社区确保对应的镜像版本更新及镜像安全修复。有相关问题咨询,您可以直接通过龙蜥社区渠道反馈,阿里云将会协助您与龙蜥社区间的咨询。(钉钉群号:44701621)
优质容器镜像推荐
- Alibaba Cloud Linux 2/3
Alibaba Cloud Linux 是阿里云基于龙蜥社区(OpenAnolis)的龙蜥操作系统(Anolis OS)打造的操作系统发行版,在兼容 RHEL/CentOS 生态的同时,为云上应用程序提供安全、稳定、高性能的定制化运行环境。Alinux2/Alinux3 容器镜像中用户态软件包保持与新版 CentOS 兼容,为保障系统的安全性,会紧密跟进业界与社区发现的软件包问题及安全漏洞(CVE),及时更新修复软件缺陷和修补安全漏洞,确保容器镜像的内容完整安全。
- Dragonwell
Alibaba Dragonwell 是阿里巴巴开源的 JDK,它是 OpenJDK 的下游,提供了 OpenJDK 的所有能力,并且通过 AdopeOpenJDK 社区进行构建发布,提供高质量的经过测试验证的 JDK 发行版。除了 OpenJDK 已有功能外,Alibaba Dragonwell 还增加了以下独有特性:
- JWarmup:根据前一次程序运行的情况,记录下热点方法、类编译顺序等信息,在应用下一次启动的时候积极加载相关的类,并积极编译相关的方法,进而应用启动后可以直接运行编译好的 Java 代码。- JFR:Java Flight Recorder (JFR) 是一款用于收集 Java 应用运行过程中的诊断及性能数据的工具,目前已经被集成进 Alibaba Dragonwell 中。在使用默认配置的情况下,JFR 带来的额外开销将小于 2%,因此可以用在生产环境。- Wisp 协程:Wisp 在 JVM 上提供了一种用户态的线程实现。开启 Wisp2 后,Java 线程不再简单地映射到内核级线程,而是对应到一个协程,JVM 在少量内核线上调度大量协程执行,以减少内核的调度开销,提升 web 服务器的性能。
Golang/Nginx
基于 Anolis OS 构建的 golang 语言镜像、nginx 应用镜像,可以让用户开箱即用的搭建业务容器镜像。龙蜥社区上基础应用软件包,如 nginx,也是会紧密跟进业界与社区发现的软件包问题及安全漏洞,及时更新修复软件缺陷和修补安全漏洞,确保容器镜像的内容完整安全。
- 倚天优化镜像 mysql/redis
基于 Alinux3 的倚天优化镜像,主要是在镜像中集成了智能优化调优软件 KeenTune,KeenTune(轻豚)是一款 AI 算法与专家知识库双轮驱动的操作系统全栈式智能优化产品,提供 CPU、内存、IO、网络等领域的调优解决方案。在典型业务场景,倚天优化镜像在 g8y.2xlarge 规格上验证,大部分场景可以带来20% 以上的性能提升。其中 mysql 在 write only 场景有30%左右提升,redis 在 set/get 等场景都有 30% 左右的性能提升。
让云原生化转型进程更安全、更便捷、更高效
阿里云容器镜像服务将持续与龙蜥社区合作,在近期将陆续提供高频使用的容器基础镜像 50 个,包含应用容器镜像 influxdb、tomcat、consul 等,其中部分应用镜像将集成 Keentune 智能调度优化能力。同时我们也期待更多 ISV 或者开源软件愿意加入我们的合作伙伴计划,您可以通过留言与我们联系。希望我们能打造内容丰富、安全可信的云原生制品生态,让众多容器开发者更放心、更便捷、更高效的实现云原生化转型。
参考文献
[1] WIST K, HELSEM M, GLIGOROSKI D. Vulnerability analysis of 2500 docker hub images[M]//DAIMI K, ARABNIAHR, DELIGIANNIDISL, et al. Advances in security, networks, and Internet of things. Cham:Springer,2021:307-327.
[2] https://docs.docker.com/docker-hub/download-rate-limit/
点击此处,直达阿里云 ACR 云原生制品中心
版权归原作者 阿里云云原生 所有, 如有侵权,请联系我们删除。