云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

CDN_阿里中间件_返利

小七 141 0

AgroScout是agritech(农业技术)部门的一家初创公司,什么叫物联网,致力于早期检测田间作物中的病虫害,是一家尖端公司使用Oracle Cloud Native Services将其应用程序迁移到Kubernetes并提供自动化部署管道的典型例子。云本地技术现在风靡一时,客户可以选择大量选项来实现其应用程序平台和用于交付这些应用程序的持续集成/持续交付技术。现在,AgroScout开发团队已经启动并运行,使用Kubernetes和简化的CI/CD平台可以更轻松地管理他们的应用程序,淘客家园,Oracle第2代云的性能更好等等。

客户

AgroScout

Oracle云本机服务

Oracle云本机服务包括用于容器、无服务器的服务功能、流(与Apache Kafka兼容)、基础设施自动化(与Terraform兼容)、api以及相关的监视和通知功能。作为Oracle云基础设施产品组合中相对较新的一项,这些服务在过去一年中势头强劲。采用者包括科学组织、医疗保健组织、大型金融服务公司、以人工智能为中心的创新创业公司、物流和运输公司以及政府实体。您可以从我们于2019年11月进行的更新中获得有关这些服务及其采用的更多详细信息。

解决方案

Kubernetes被选为本项目的应用程序平台,云分析,由Oracle容器引擎Kubernetes(OKE)提供。OKE是一个开发人员友好的、企业级的托管Kubernetes服务,用于运行高可用性集群,具有Oracle云基础设施的控制、安全性和可预测的性能。可以通过控制台、API、CLI或Terraform创建新集群,并为工作节点选择虚拟机或裸机服务器。OKE使用标准的Kubernetes——所有的工具,如kubectl、helm和仪表板,都可以提供纯k8s用户体验和跨平台的可移植性。

任何容器技术都依赖于图像,需要一个注册表来存储和访问它们。Oracle云基础设施包括一个托管容器注册表Oracle Cloud Infrastructure registry(OCIR),它与Docker v2兼容。我们的解决方案还需要工具来获取客户的代码、构建代码并将其作为pods部署到Kubernetes集群上。这最后一部分是由一个持续集成/交付(CI/CD)平台提供的,该平台为Kubernetes和容器注册中心提供了一组预构建的集成,可用于构建代码或容器映像,淘客助手,然后将它们部署到Kubernetes或其他平台。

该解决方案的目标是允许开发人员提交代码更改到他们的源代码管理系统,并使其自动触发一个生成,该生成创建了一个Docker容器映像,然后将其推送到OCIR中的存储库中。然后,另一个自动化步骤将此映像部署为Kubernetes部署,以及将其公开给外部世界所需的Kubernetes服务。幸运的是,我们的CI/CD平台与最流行的托管git产品集成,因此客户可以继续使用他们首选的BitBucket git存储库,从而最大限度地减少对其开发工作流程的影响。每个微服务都有一个专用的git存储库,每个存储库都与一个构建管道相关联,这意味着每个微服务都可以单独构建和部署。现在提交到源代码将触发相关管道的第一步,即构建应用程序,在本例中使用节点.js

CI/CD管道可以使用本机步骤来构建映像,或者使用存储在git中的标准Dockerfile。我们选择后者是为了便于携带和可读性。创建映像后,第二步使用管道的本机功能将映像推送到OCIR中托管的存储库。需要将应用程序部署到多个Kubernetes环境,这取决于开发人员使用git中的哪个分支。在这里,管道分支部署工作流的能力允许我们基于开发人员正在处理的git分支为每个指定环境创建一组Kubernetes清单文件。最后一步是将它们部署到正确的Kubernetes集群。该应用程序的Kubernetes部署通过一个入口控制器向外界公开,入口控制器利用Oracle云基础设施负载平衡器服务集成到OKE中,提供一个高可用的公共负载平衡器,允许互联网访问客户的网站

该应用程序还包括一组批处理服务定期运行的作业。这些也可以使用上述方法构建,并由我们的CI/CD平台部署到与Kubernetes cronjobs相同的OKE集群。定期维护作业、备份和处理图像数据使用此模式,cronjob以所需的间隔启动作业。该应用程序的机器学习方面还利用了Jupyter笔记本,淘客app制作,并且再次通过Oracle云基础设施上的构建管道构建和部署了一个包含笔记本和所有必需文件的映像,我们很高兴地说,一旦启动并运行,开发团队就可以使用Kubernetes和一个简化的CI/CD平台更轻松地管理他们的应用程序,而且Oracle的第2代云在微服务和基于GPU的机器学习方面都有更好的性能。使用Oracle本机负载平衡器将流量转发到Kubernetes服务,提高了可伸缩性和恢复能力。与Slack的集成确保了团队总是被告知每个构建的状态。Oracle云基础设施的最终解决方案腾出宝贵的开发人员时间,为其不断增长的客户群添加新功能和错误修复。

结果

AgroScout在3个方面有了显著的改进: