如何像我们自己的工程师一样在 Edgegap 上部署任何计算工作负载的容器

如何像 Edgegap 自己的工程师一样在 Edgegap 上部署任何计算工作负载的容器

关键洞察

关键洞察

关键洞察

  1. 构建并发布 您的代码/游戏到容器包中,并将其作为新应用版本推送到 Edgegap。这就像为您的构建创建一个 Dockerfile 并让 Edgegap 处理其余工作一样简单。

  2. 在线测试,而非本地! 无需再为“在我的机器上能运行 <此处插入海绵宝宝表情包>”而头疼,只需数秒即可部署到 Edgegap 的实际边缘网络。这种方法消除了开发环境与生产环境之间的差异,就像拥有一个暂存环境而无需支付第二个环境的费用。您将立即知晓您的应用是否在全球 615+ 个地点实际正常运行,从而发现本地测试遗漏的问题。

  3. 添加您的开发人员工具 部署与您的应用并存的辅助工具——无论是 Web 工具、用于测试的网络信标、代理服务、数据库,还是任何其他能保持您开发工作流顺畅且高效的工具。

  4. 快速测试单个组件 独立部署和测试特定组件或服务,而无需启动新集群或影响您的生产堆栈。非常适合在实时边缘环境中使用“虚拟”后端测试新 API、验证微服务或尝试配置更改。


当开发者询问在全局边缘计算上“如何部署我的工作负载”时,Edgegap 自己的开发者已经完善了一个精简的三步流程,该流程消除了生产环境中出现问题的大部分可能性,并实现了快速的边缘部署测试。本指南概述了 Edgegap 内部用于快速、可靠部署的确切工作流程,向您展示了如何部署容器应用,而无需面对通常与编排平台相关的复杂性。

第 1 步:将您的项目容器化

学习如何高效部署容器应用始于正确的容器化。第一步涉及使用 Docker 或任何开源容器化解决方案将您的应用程序容器化。

在 Edgegap,我们基于容器的编排将您的计算工作负载分发到全球 615+ 个边缘位置。由于多人游戏需要为您的玩家快速部署游戏服务器,我们的编排可确保容器几乎可以即时部署。

创建您的 Docker 容器

首先在项目根目录中创建一个 Dockerfile。对于大多数应用程序来说,容器化过程非常简单 - 完成后,只需将其推送到我们的私有镜像仓库或任何公共容器镜像仓库(即 Docker Hub)。

第 2 步:创建您的应用程序版本

部署新的应用程序和版本

当您的容器镜像准备就绪后,使用 Edgegap API 或 Web UI 将其作为新应用和版本部署到 Edgegap。根据您的需求配置一切

  • 选择您的规格,如 CPU 和内存要求

  • 选择您希望在部署中暴露的端口

  • 使用私有容器镜像仓库或公共容器镜像仓库

  • 通过环境变量注入附加信息

  • 添加边车(Sidecar)以实现轻松的 TLS 升级(适用于 HTTP 和 WebSocket 应用程序)

  • 更多高级选项,覆盖所有使用场景!

第 3 步:数秒内完成部署,进行端到端边缘测试

最后一步涉及快速部署,以便在实际的边缘网络上端到端地测试您的应用程序,而不是依赖本地测试。这种方法通过确保功能在真实的边缘环境(具体为 Edgegap 的实时生产基础设施)中正常运行,消除了臭名昭著的“但在我的机器上可以运行”综合征。

为什么边缘测试至关重要

Edgegap 在全球 615+ 个物理位置和 17+ 个数据中心提供商之间编排游戏服务器,以确保部署到最适合您终端用户的理想位置。得益于我们的按需付费定价,Edgegap 的专利策略是降低延迟和最小化运营(托管)成本的最佳开箱即用解决方案。

在这种分布式基础设施上进行测试可以确保您的应用程序在 Edgegap 的全球网络中表现正常,发现本地测试根本无法捕获的问题。

快速迭代工作流程

该部署系统专为速度而设计,允许开发者:

  • 在数秒内部署容器

  • 在实时边缘基础设施上立即进行测试

  • 快速识别并修复问题

  • 快速迭代,无需漫长的部署周期

考虑到 Edgegap 慷慨的免费层(且无需信用卡),这非常棒。

部署支持开发的工具

您还可以部署支持当前开发工作流所需的其他工具。Edgegap 使您能够利用旨在增强开发和测试体验的多种开发者工具。

开发者工具示例

  • 基于 Web 的工具:包括用于测试和监控部署的 Web 实用程序

  • 信标(Beacons):用于网络测量和优化测试

  • 代理服务:在开发期间处理流量路由和负载均衡

  • 测试解决方案:使用测试套件、虚拟玩家脚本等测试您的应用程序/游戏

集成和存储选项

创建一个端点存储,以便在部署结束时存储您的容器日志。该平台支持与 S3 兼容的存储解决方案进行日志管理,并提供 API 端点,以便与您的 CI/CD 流水线进行自动化集成。

无需 DevOps!

Edgegap 平台的核心优势之一是它提供企业级的容器编排,而无需开发者学习或管理任何 DevOps 技能。虽然 Edgegap 的底层基础设施是基于容器的,但该平台抽象了所有的复杂性,使您能够专注于您的应用程序,而不是编排机制。

任何运行时都可以使用 Edgegap 的 API 进行部署,使该工作流程适用于任何技术栈。API 提供了全面的功能,用于:

  • 应用程序和版本管理

  • 部署自动化

  • 资源监控

  • 日志存储配置

  • 网络优化

快速迭代的最佳实践

为了最大化该工作流程的有效性:

  1. 容器优化:在设计容器时要考虑速度,因为使用 Edgegap 的应用程序通常需要在毫秒内启动。较小的容器大小以及优化的 CPU 和内存使用是实现快速启动的关键因素。

  2. 自动化流水线:如果您更喜欢能够构建、容器化、推送和测试应用程序/游戏的自动化持续集成流水线,您可以轻松集成我们的 REST API。这使您可以跳过手动使用平台的过程。

  3. 测试策略:始终在实际的边缘网络上进行测试,而不仅仅依赖于本地开发环境。

  4. 工具集成:利用 Edgegap 部署您所有的开发者工具,以创建一个全面的测试和监控环境。

这三步工作流程使 Edgegap 的开发者能够保持快速的迭代周期,同时确保他们的代码在全球边缘网络中可靠地运行。通过遵循相同的流程,外部开发者在部署中也可以实现类似的效率和信心水平。

书写者

Bastien Roy-Mazoyer,Edgegap 首席架构师

轻松在几分钟内将您的项目上线

轻松在几分钟内将您的项目上线