译者 | 布加迪
审校 | 重楼
近年来边缘计算和容器越来越受欢迎,为我们日常生活中与数据处理相关的各种挑战提供了创新的解决方案。这些技术现在已经渗入到各种设备中,包括我们的汽车、手机甚至冰箱,为用例发掘了新的可能性,并使我们能够更有效地应对数据处理挑战。本文将探讨边缘计算与容器的交汇、它们的重要性及与之相关的挑战。
有几个行业可以得益于使用边缘计算和容器,包括工业物联网、医疗保健、智慧城市和零售。
图1. 边缘计算和容器的用例
边缘计算无处不在,几乎所有行业都在使用它。以下是比较成熟的应用:
应用领域 |
边缘计算的用例 |
制造业中的工业物联网 |
收集和处理来自传感器的实时数据。部署用于监测机器性能和触发边缘设备端警报的轻量级应用程序。还可以用于功能异常检测、提高性能以及对刚开发的产品执行质量检查等。 |
医疗保健 |
比如在医院,可穿戴设备可用于收集病人重要生命体征的数据(数据可使用边缘计算实时处理)。在其他场合下,整合到X光扫描器械中的程序可以诊断癌症及其他疾病(诊断效果胜过人类)。 |
智慧城市 |
传感器和摄像头可用于收集交通流量、空气质量及其他因素方面的数据。容器可用于部署和管理分析这些数据并为城市规划人员提供洞察力的应用程序。在一些国家,它们还可用于检测非法行为。 |
零售 |
在零售店,传感器和摄像头可用于收集客户行为数据,比如他们在关注哪些产品或他们在商店某些区域逗留的时间有多长。我们还有完全自动化的商店,没有收银员。 |
边缘计算和容器有几个共同点,包括它们能够支持分布式应用程序、专注于缩短延迟。容器特别适合边缘计算,因为它们是轻量级的,很容易部署在远程位置。然而,在边缘计算环境中使用容器也存在挑战,比如有限的资源和安全问题。
边缘容器的好处包括如下:
1. 灵活性——边缘容器具有高度可移植性,可以在各种边缘设备上运行,从而提供部署的灵活性和敏捷性。
2. 可扩展性——容器具有高度可扩展性,可以跨多个边缘设备快速复制、部署和管理,从而更容易扩展应用程序和服务。这在资源有限、传统单体应用程序可能不实用的边缘计算环境中尤其重要。
3. 安全性——容器为运行应用程序提供了安全的环境,并将它们与边缘设备上的其他进程隔离开来。
4. 低延迟——通过在更靠近数据源的地方处理数据,容器有助于缩短数据在设备和数据中心之间传输所需的时间。这在需要实时处理的应用领域尤为重要,比如工业物联网或医疗保健应用领域。
5. 减少带宽——集中式应用程序常常导致高昂的网络费用,因为所有流量都集中在云供应商的数据中心内。另一方面,边缘容器可以位于离最终用户更近的地方,从而允许对数据进行预处理和缓存,这有助于降低网络费用。
6. 成熟度——作为一种容器技术,Docker被认为很稳定,在生产环境中得到了广泛的应用。此外,开发人员可以利用Docker方面的现有知识和技能,这意味着测试边缘容器时不需要额外的培训。
边缘容器面临的挑战包括如下:
1. 有限的资源——边缘设备常常具有有限的资源,比如内存、处理能力和存储,这可能会影响边缘容器的性能。
2. 复杂性——边缘容器需要容器化和分布式计算方面的专业知识,这对一些组织来说可能是一个挑战。
3. 管理——跨多个边缘设备管理容器既复杂又耗时,需要可靠的容器编排解决方案。
4. 安全——边缘设备常常位于不安全的远程位置,这可能使它们容易受到攻击。容器还可能带来安全风险,比如容器分流或容器映像中的漏洞。
边缘计算和容器提供了许多好处,组织可以迅速采用它们用于不同的业务案例。然而,成功实施这些技术需要仔细考虑这几个关键因素。
在实施边缘计算和容器时,选择合适的容器平台(比如Docker)很重要。这些平台提供了一系列特性和功能,比如容器编排和管理,可以帮助简化边缘计算环境中容器的部署和管理。然而,由于边缘设备的资源容量有限,广泛使用的常见平台(比如Kube.NETes和OpenShift)并不适合边缘计算。建议换成兼容的替代方案(常常是开源的),比如k3s、KubeEdge、microk8s或Baetyl。
在实施边缘计算和容器时,应该考虑部署策略。视具体的用例而定,组织可能选择使用混合云模式,其中一些服务部署在云端,而其他服务部署在边缘设备上。或者,可以将容器直接部署在边缘设备上,这有助于缩短延迟并提升性能。
一旦部署,管理边缘计算和容器可能具有挑战性,特别是在拥有大量边缘设备的环境中。容器编排和管理平台(比如Kubernetes)有助于简化边缘计算环境中容器的管理。这些平台提供了自动扩展、负载均衡和运行状况监视等功能,有助于确保容器高效地运行。
此外,监视容器性能/状态对于及早识别和解决问题、以免成为严重问题至关重要。这包括监视容器资源使用情况、网络流量和应用程序性能,以及使用日志和度量指标等工具对问题进行故障排除。OpenTelemetry和Prometheus等开源工具常常是不错的入门软件包。
对边缘设备故障作好规划:边缘设备可能会出现意外故障,因此通过实施冗余措施(比如跨不同边缘设备运行多个容器实例或使用边缘到云的故障切换机制)对此类场景作好规划非常重要。
在实施边缘计算和容器时,安全注意事项非常重要。边缘计算依赖许多容易受到网络攻击的设备和网络,包括恶意软件、勒索软件和网络钓鱼攻击。如果没有适当的安全措施,这些设备和网络可能会受到威胁,导致数据泄露及其他安全事件。如果边缘设备受到危及,它可能会感染整个网络。另一个挑战是数据保护,特别是涉及敏感数据时,您几乎无法阻止对设备的物理访问。
最后,边缘计算缺乏标准化使得跨设备和网络实施一致的安全措施变得更加困难,从而带来安全挑战。在使用边缘计算时,安全仍然是主要挑战,可能需要付出很大的精力来降低风险。
随着使用人工智能和机器学习等新兴趋势的出现,加上新容器技术的发展,边缘计算和容器的未来充满希望。比如说,边缘设备日益配备人工智能和机器学习功能,这有助于提高数据处理的准确性和速度。如今,我们已经有了自动驾驶汽车、可以区分猫/狗或人(小偷)的智能摄像头、回收行业中的自动分拣机,或者可以分析健康数据并检测心脏病发作的智能手表。所有这些设备都利用边缘计算和人工智能,我们日常生活中的用例数量在未来几年会迅速增加。
与此同时,为了跟上这些新的用例,新的容器技术(比如WebAssembly)也正在开发中,它有助于提高边缘计算环境中容器的性能和安全性。
一项关于边缘计算市场的研究表明,未来10年,该市场的年同比增长率将达到20%至30%,这证实了该技术具有的潜力。大型科技公司将致力于简化的部署解决方案带来的实施,这将使每个行业都能使用它们。
图2. 美国边缘计算市场
边缘计算和容器对企业和社会的影响将继续加大,为创新和效率带来新的机遇。比如在农业中,我们可以看到放置在田地里的设备收集土壤湿度、温度和湿度等数据。然后,这些数据可以使用AI算法进行实时处理,以优化灌溉、肥料使用和害虫管理,从而提高作物产量,并减少对环境的影响。
各类设备都可能使用相关的传感器来优化能源使用,而其他设备可能配备人工智能算法,以分析来自传感器和其他数据源的数据,以便在设备发生故障之前检测到潜在的故障。这有助于缩短停机时间和维护成本,并提升整体设备性能。
虽然边缘计算和容器的交汇带来了挑战,但创新和效率方面大有机会。随着更多的行业采用这些技术,重要的是要考虑与实施它们相关的挑战和机遇。如果选择合适的容器平台和部署策略,并做出最佳的安全决策,组织可以成功地实施边缘计算和容器,从而推动业务价值。
随着新兴技术和用例不断涌现,边缘计算和容器的未来充满希望。如果紧跟这些趋势,组织可以继续创新,并在各自的行业中推动价值。
原文标题:The "Edge" of Containers,作者:Louis-Guillaume Morand