Linux SQL Server 2017镜像超过了100万次下载

【摘要】这篇文章介绍了在Linux Container中运行SQL Server的方案及其优势以及部分客户案例。SQL Server在很多企业中广泛运用,其容器化所带来的效益值得我们思考和借鉴。

与以前相比,SQL Server 2017使得数据的使用更简单,也拥有了更多的部署选项,并且每个月都定期发布预览版以提供新的特性和改进。这些动作之后的动机是显而易见的。我们很高兴地看到一个新的里程碑:上周,Linux SQL Server容器镜像超过了100万次下载!自从2016年11月份首次发布SQL Server on Linux预览版以来,镜像已经上传至Docker Hub六个月了,并且用户的下载量还在持续增长。事实上,我们目前有像dv01这样的客户,已经在生产环境中使用Docker容器来运行SQL Server 2017,并且遵循我们早期的生产支持协议(EAP)。容器镜像也可以从Docker Store获取,这也是一个拥有很多主流镜像的镜像仓库。

客户对容器的兴趣是很高的,因为容器在生产环境中具有很大的优势。尤其是开发和测试过程中,以一种轻量级易用的格式来满足跨环境的一致性和可靠性。容器能够快速设置,可以很容易地停止和启动。用户还可以通过工具,比如docker-compose,来启动一组容器来协同工作,轻松地实现连接数据库、发布应用等,甚至以微服务架构实现其他类型的微服务。

在SQL Server 2017公开预览的整个过程中,我们在测试实验室中对基于Linux容器的SQL Server 2017进行了广泛的测试。我们已经在150个节点的Kubernetes集群上部署了SQL Server来测试每个月成功发布的社区预览版,这一切都在Azure中进行。对于每个通过的测试,我们自动部署750个容器并运行一百万个测试。除了Kubernetes,我们正在测试其他容器平台,与我们的合作伙伴和社区,包括红帽OpenShift,Docker Swarm和Mesosphere DC/OS。

  • 金融技术初创公司削减90%的数据库管理时间

客户已经在容器中运行SQL Server。dv01是一个华尔街初创公司,为对开拓消费者借贷市场感兴趣的团体投资人提供报告和分析平台。dv01最初基于PostgreSQL和Amazon Redshift搭建解决方案,但是随着数据量的增长,为了获得更快的查询访问时间和更好的扩展性,后来迁移到了基于Windows Azure虚拟机的SQL Server 2016。由于企业运行的其他所有负载都是基于Linux的,dv01签署了SQL Server 2017早期使用协议,因此在将SQL Server迁移到Linux的过程中获得了微软的建议和协助。此举将有助于帮助公司避免在其环境中管理多个操作系统。它使用SQL Server 2017 on Linux镜像,基于Docker引擎在生产环境中部署应用。通过Docker容器运行SQL Server的方式使得管理数据库的时间削减了90%,使其开发团队专注于为产品增加新的功能。要了解更多关于dv01的SQL Server 2017的旅程,你可以在这里阅读它的故事。

"SQL Server 2016提供了我们需要的性能和可伸缩性的结合。" dv01公司的副总裁Dean Chen说道。“我们以前的系统花费30秒甚至更久的查询现在只需要1-2秒,这意味着我们能够为我们的用户实时地进行分析查询。”

  • 使在Docker容器中运行SQL Server变得简单

即便是SQL Server 2017 CTP 2.1已经发布,直到今天,我们依然持续地为Linux SQL Server Docker容器添加新特性。我们已经介绍了通过将环境变量作为参数传递给docker run,实现对SQL Server配置进行设置的能力。这能满足最常见的一些在Docker容器中配置SQL Server的场景需求,比如在容器中创建SQL Server新实例时设置服务器核数。如果您想了解更多关于SQL Server 2017 CTP 2.1版本的信息,请阅读我们的详细博客,了解其他增强功能以及如何开始预览。

我们希望尽可能简单地开始使用这项技术。如果你想了解如何使用SQL Server on Linux containers构建以数据为中心的CI/CD流水线,与SQL Server工程师Travis Wright和Tobias Ternstrom的团队一起,从这个为开发者准备的视频开始。

  • 考虑在容器中运行SQL Server的原因

在许多方面,容器技术正处在一个转折点,就像15年前的虚拟化。好处是非常明显的,而且这种优势依然在逐步增长,包括以下几点:

  1. 减小磁盘尺寸以提高硬件利用率

  2. 减少CPU /内存消耗,这也会导致更好的硬件利用率

  3. 减少部署规模,加快部署和扩容/缩容

  4. 减少补丁,减少工作量,减少易损性,减少停机时间

  5. 更好的可组合使用层的镜像,应用定义为多个容器

  6. 更容器地共享Docker Hub和Registry

但在某些情况下,仍存在不足之处。例如,在容器平台中配置高可用性还没有很好的方案。对本地和远程存储的持久性仍然有待改进,是任何容器平台的一个复杂区域。容易依然是比较新颖的一个事物,找到有经验的容器方面工作经验的人员依然具有挑战性。我们期待着与社区合作,在未来几个月扩大和完善容器平台的能力。

  • SQL Server的容器化之路

我们打算在今年晚些时候通过SQL Server 2017的GA版本对基于Linux Container的SQL Server进行支持。在我们的早期支持计划中,客户可以在我们的支持&工程团队的全力协助下,立即部署到容器生产环境中。我们已经创建了一个名为mssql-docker的GitHub库,在这里可以获取Dockerfile,示例entrypoint脚本并且可以给我们提供反馈和功能需求。 这也是一个与其他在容器中运行SQL Server的人员接触的好地方。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: