BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

HyperGrid发布了将应用程序迁移到容器的平台

| 作者 Hrishikesh Barua 关注 15 他的粉丝 ,译者 谢丽 关注 11 他的粉丝 发布于 2016年9月28日. 估计阅读时间: 3 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

HyperGrid是GridStore收购DCHQ之后形成的公司。该公司发布了一个应用程序迁移平台,名为HyperForm。它旨在将应用程序(主要是Java应用程序)迁移到任何云或容器基础设施。

一个典型的Java应用程序究竟怎样“容器化”?为了进一步了解HyperForm平台的功能,InfoQ联系了HyperForm产品副总裁Amjad Afanah。

HyperForm有一个插件模型,让应用程序开发人员可以使用不同的语言编写自定义脚本,如Python、Perl、bash脚本或Ruby,并把它们作为容器生命周期事件的监听器。这些事件由平台发起,在类似容器创建和销毁这样的时候及其他中间点触发。使容器化成为可能的另外一项特性是数据注入。据Afanah介绍,该特性“从容器获取信息,并在部署时将它们作为环境变量值注入到其他从属容器”。据Afanah的一篇文章介绍,该框架扩展了Docker Compose。

最新的Docker版本使用Linux IPVS(一个Linux内核特性,可以用于负载均衡)改进了服务的负载均衡,并集成了Swarm。最新版本的HyperForm也作为一个技术预览功能支持Docker Swarm。这是不是说HyperForm限制了其他负载均衡机制?不是那样的,Afanah是这样说的:

HyperForm确实可以通过Docker Swarm充分利用Linux内核内置的负载均衡功能。不过,HyperForm也提供了一种简单的方式,让用户可以使用任何类似Nginx和Apache HTTP这样的软件配置HTTP负载均衡。任何时候,当应用程序缩容/扩容时,还是可以使用自定义的插件自动更新HTTP负载均衡。

具有分布式架构的现代Java应用程序彼此之间存在服务依赖。它们通常是由一个类似Consul这样的服务发现软件联系在一起。在容器化环境中,服务发现涉及到在服务加入容器时将服务注册到注册库(例如Consul),可以手工,也可以使用类似Registrator这样的东西。Registrator是一个服务,可以自动注册和撤销注册Docker容器中的服务。那么,HyperForm如何处理这种情况呢?

HyperForm使用上面提到的同一个插件模型提供服务发现特性。例如,向负载均衡器后面一个已有的集群中添加一台新的服务器,这会触发一个事件,而该事件会激活一个插件。该插件负责使用新服务的详细信息修改负载均衡器的配置。

运行HyperForm平台的底层基础设施可以是VMware vSphere、OpenStack、AWS或Azure。

查看英文原文HyperGrid Announces Platform for Application Migration to Containers

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

深度内容

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT