上一篇中介绍了Bluemix的Containers服务以及如何使用自定义的docker image创建一个容器实例并对外提供服务。除了自定义镜像之外,Bluemix Containers还可以使用Docker Hub上的image来创建容器实例,前提是这些image必须是公共的(public)。

Bluemix的CLI可以完成从Docker Hub复制镜像的任务。

sudo cf ic cpi tomcat: registry.ng.bluemix.net/htcn_us_south_1/tomcat:

执行上述命令后,就把一个tomcat 7的image从docker hub复制到Bluemix的私有repository中了。使用“cf ic”登录到Bluemix和私有repository的url格式在此就不再赘述了,具体请参考上一篇中的介绍。

镜像复制完成,就可以在web控制台中看到并可以使用这个复制过来的镜像创建新的容器实例。

生产环境中高可用是必不可少的。Bluemix的Containers服务提供了scalable group功能以实现docker容器的高可用部署。

在创建新容器实例的页面上选择“Scalable”tab,开始创建scalable group。

注意“HTTP port”字段,这里只能填写image中暴露出来的端口号,即:Dockerfile中EXPOSE的端口号。例如:tomcat镜像中默认expose的端口号是8080,因此需要在HTTP port中填写“8080”。

HOST字段指定一个访问scalable group的公网域名,这里我们指定的完整域名为:“hunter-demo-1.mybluemix.net”。当然这个域名必须是全局(全球)唯一的(这种方式有点像Microsoft Azure的云服务)。公网域名后面对应了一个负载均衡器(GoRouter,一个支持负载均衡的反向代理),将访问流量分发给scalable group里面的每个容器实例。这个负载均衡器看起来比较简单,只是将前端流量以轮询的方式转发到后端。没有会话保持,也没有端口映射。一个比较有特色的功能是:负载均衡器实例上默认绑定了一个ssl证书,直接可以使用HTTPS协议来访问部署在容器实例中的应用,而不需要应用本身支持HTTPS协议!这个功能很容易就让应用支持HTTPS协议,而不需要在web服务器上进行复杂的配置。用户到负载均衡器之间使用HTTPS协议通讯,负载均衡器到应用实例之间使用HTTP协议。

Scalable group创建完成后,通过HOST域名可以访问到部署在容器中的应用。

接下来为scalable group创建auto-scaling policy:

可以根据cpu和memory两个指标来定义容器实例缩放规则。

包括指定在当前scalable group中运行的最大容器实例数量和最小容器实例数量。

Scalable group中的实例支持自动恢复功能。Bluemix Containers服务的"Health Monitor"组件每隔90秒会对每个容器实例中的HTTP服务器进行一次探测,若某个容器实例连续2次探测失败,则该容器实例就会被自动的销毁并重建。

一个scalable group中至少要包含2个容器实例,这样才能确保高可用。配合"auto discovery"功能,个人经验建议在一个scalable group最少包含3个容器实例。

IBM Bluemix体验:Containers进阶的更多相关文章

  1. IBM Bluemix体验:Containers

    国际版的Bluemix目前有三个region,US South,United Kingdom和Sydney.其中US South是功能最全的,UK其次,Sydney功能最少.Containers服务在 ...

  2. IBM Bluemix体验:Containers持久存储

    上一篇介绍了在Bluemix Containers服务中使用docker hub镜像和container的高可用配置.接下来我们尝试如何在容器中使用持久存储. 在Bluemix的Containers服 ...

  3. 在IBM Bluemix上部署Hyperledger应用

    简介 IBM Bluemix (http://www.ibm.com/bluemix‎)是一个基于cloud的应用开发和部署平台,提供包括多种服务和运行环境的支持.对Hyperledger应用开发者而 ...

  4. 【OK210试用体验】进阶篇(2)视频图像采集之MJPG-streamer编译(arm移植)

    上一篇([OK210试用体验]进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下))进行了MJPG-streamer在Ubuntu下的编译及测试,这一篇针对OK210,进行a ...

  5. 基于IBM Bluemix的数据缓存应用实例

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:IBM® Data Cache for Bluemix 是快速缓存服务.支持 Web 和 ...

  6. Eclipse上开发IBM Bluemix应用程序

    林炳文Evankaka原创作品. 转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要解说了怎样使用安装EclipseIBM Bluemix插件.并在Eclipse ...

  7. 第一部分:IBM量子体验

    (一)量子世界    今天的计算机使用标准的(或用物理学家的话来说,“经典的”)计算模型来执行计算与处理信息,此计算模型要追溯到图灵(Turing)和冯・诺伊曼(Von Neumann)时期.在此模型 ...

  8. 【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)

    转自: http://bbs.elecfans.com/jishu_510084_1_1.html 本篇主要内容分为: 嵌入式视频图像开源库     mjpg-streamer简介     mjpg- ...

  9. IBM Cognos 10.2 最新体验之旅

    IBM Cognos Data Manager 数据集市的构建利器 本文详细的介绍了 Cognos 最新版本 10.2 的数据集市构建器 Data Manager 的使用,对于希望系统了解 Cogno ...

随机推荐

  1. backup3:master 数据库的备份和还原

    在SQL Server 中,master 数据库记录系统级别的元数据,例如,logon accounts, endpoints, linked servers, and system configur ...

  2. 后HTML5时代

    十二年前,无论多么复杂的布局,在我们神奇的table面前,都不是问题:十年前,阿捷的一本<网站重构>,为我们开启了新的篇章:八年前,我们研究yahoo.com,惊叹它在IE5下都表现得如此 ...

  3. 返回顶部的功能 div固定在页面位置不变

    1.你在网上搜索的时候,可能会搜索到div固定在页面上,不随滚动条滚动而滚动是用CSS写的,写法是position:fixed;bottom:0; 但是这个在iframe满地跑的页面实际开发中,有啥用 ...

  4. SQL多表连接查询(详细实例)

    转载博客:joeleo博客(http://www.xker.com/page/e2012/0708/117368.html) 本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:stud ...

  5. Hive读取外表数据时跳过文件行首和行尾

    作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 有时候用hive读取外表数据时,比如csv这种类型的,需要跳过行首或者行尾一些和数据无关的或者自 ...

  6. 在CentOS 7/6.5/6.4 中安装Java JDK 8(转载)

    转载在CentOS 7/6.5/6.4 中安装Java JDK 8 首先,在你的服务器上运行一下更新. yum update 然后,在您的系统上搜索,任何版本的已安装的JDK组件. rpm -qa | ...

  7. golang 使用 iota

    iota是golang语言的常量计数器,只能在常量的表达式中使用. iota在const关键字出现时将被重置为0(const内部的第一行之前),const中每新增一行常量声明将使iota计数一次(io ...

  8. Mac OS X搭建C#开发环境

    在Mac下想要用C#语言的话,首先得有个跨平台的.Net环境-Mono http://www.mono-project.com/ 有了Mono平台之后,还得有一个好工具:目前比较好的IDE是Xmari ...

  9. Configure bridge on a team interface using NetworkManager in RHEL 7

    SOLUTION IN PROGRESS February 29 2016 KB2181361 environment Red Hat Enterprise Linux 7 Teaming,Bridg ...

  10. 数据仓库开发——Kettle使用示例

    Kettle是一个开园ETL工具,做数据仓库用Spoon. 工具:下载Spoon,解压即可用   1.认识常用组件:     表输入     插入\更新     数据同步     文本文件输出     ...