当时方位: 主页 > > 抢手技能 > 云核算 > 带你领会 IBM Bluemix渠道云

带你领会 IBM Bluemix渠道云

2014-06-26 16:28 来历:IBM 作者:朱修磊 人气指数: 我要谈论

正是依据这样的趋势,IBM 发布了自己的公有云产品,产品名称是 IBM Bluemix,现在正处在揭露测验阶段。Bluemix 树立在 Apache 开源项目 Cloud Foundry 之上,并供给了 IBM 及其合作伙伴开发的高质量的服务(Services)供 IT 从业人员运用。本文以 Bluemix 渠道的中心组件 - Bluemix Java 运转时为主线,来向读者介绍 IBM 公有云产品 Bluemix,和读者一同去领会渠道云给 IT 带来的改变。

这是一个耳熟能详的传说:传说中,凤凰是人世间夸姣的使者,每五百年,它就要背负着堆集于人世间的悉数不快和仇视恩怨,投身于熊熊烈火中自焚,以生命和美丽的完结交换人世的祥和和夸姣。在肉体经受了巨大的苦楚和轮回后它们才干取得更夸姣的躯体得以重生。佛教徒把这个故事称为“涅槃”。

确实,悉数磨难和磨炼的止境也是新的希望开端的当地。作为 IT 从业人员,特别是程序员的你,是否也想过或许希望阅历这样的涅槃呢?假如你从前或许现在正在阅历如下的苦楚,那么 Bluemix 便是为你而预备的。

  • 不断的装置各种运转时,容器以及冗杂的第三方依靠包
  • 装置并配备悉数有必要的服务(数据库,移动服务等)
  • 将所需的服务与运用进行相关,配备端口/IP/防火墙等
  • 树立动态路由以及负载均衡机制
  • 确保从底层到运用层各个层次的高可用性
  • 确保日志的完好搜集和高效剖析
  • 日常要做好运用的功用监控
  • 确保运用能够依据负载的巨细进行灵敏的弹性
  • 终究,不断的重复着 开发》测验》上线 的轮回

Bluemix 带来了什么

Bluemix 致力于处理上述在软件开发进程中遇到的问题,旨在协助程序员更快速的开发,测验,布置和运维云渠道运用。

什么是 Bluemix?

简略的讲,Bluemix 便是一个敞开的公有云渠道,答应程序员在上面运转简直悉数类型的运用,而不用为硬件,软件,网络等其他要素分神。如上文说到,Bluemix 处于云国际的中间层,也便是 PaaS 层。如下图所示:

图 1. Bluemix 扮演的人物

点击这儿给我发消息

一般来讲,所谓 PaaS 指的是运转在 Iaas 层上的一系列软件服务,并把渠道或开发环境作为一种服务供给给用户,也便是“渠道即服务”。Bluemix 运转在 IBM 的 IaaS 层产品 Softlayer 之上。Softlayer 在 2013 年被 IBM 收买,其首要为用户供给企业级的 IT 根底设备的建造和处理方案,无论是在功用仍是在安全性上都有很高的质量确保,有爱好的读者能够参阅文章终究的资源链接进一步学习。用户的运用程序经过很简略的操作(大部分场景只需求一条简略的指令即可)就能布置运用到 Bluemix 环境里,程序员不需求去关怀底层的操作体系,运转时,网络等等悉数和 code 本身无关的东西,而能够把悉数的精力放到程序的规划和优化上。

挑选 Bluemix 的理由

Bluemix 作为 PaaS 层产品给程序员带来了许多的优势:榜首,节省时间和精力,程序员能够把悉数的心思都放在运用程序的编写和调优上,而不用去忧虑冗杂的渠道根底架构和设备,更有利于开掘程序员的创造力,开宣布更高质量,高功用的运用;第二,加快运用程序上线,在实践的操作中,只需求简略的几条指令或许 UI 界面的几回点击操作就能轻松的完结各种运用程序的布置,而彻底不用去忧虑硬件收购,软件装置等等这些先期预备作业;第三,很简略的满意运用程序对各种新功用和新服务的需求,IBM 及其合作伙伴担任供给优质的服务,程序员只需求简略的“绑定”操作就能将服务加入到运用程序中;第四,Bluemix 支撑的言语,运转时,结构等都是程序员现已熟知的,选用 Bluemix 渠道简直不需求添加新的学习本钱;终究一点是,Bluemix 底层选用 IaaS 是能够供给企业级需求的 Softlayer,能够有用的确保渠道的高功用和高安全性。

现在,Bluemix 正处于揭露测验阶段,程序员只需求简略的注册就能轻松的运用 Bluemix 供给的渠道云服务。在测验阶段,每个注册账号能够取得 8G 的内存空间用来布置和运转足够多的运用,其间还包含多达 20 个云服务的运用权,注册网址是:www.bluemix.net

Bluemix 运转时和 Buildpacks

在 Bluemix 中程序运转时是以 Buildpacks 的方式供给给用户的,经过下面这张图,能够了解运转时和 Buildpack 的联络。

图 2. 图解 Buildpack

图 1. Bluemix 扮演的人物

在 Bluemix 中自带四种 Bludpacks,分别是 Liberty for Java,Node.js,Ruby on Rails,Ruby Sinatra。假如布置的运用是上面四种言语之一,那么在布置运用的时分就不需求指定相应的 Buildpack,渠道本身会依据布置的运用类型挑选对应的 Buildpack。在本文开端的部分,咱们说到 Bluemix 支撑简直悉数类型的运用,那么除了上面四种运用,其他类型的运用又是经过什么办法进行布置呢?答案便是在布置运用的时分,清晰的指定运用所需的 Buildpack 类型,这些 Buildpack 有的来自社区,有的来自程序员自己的开发,由于 Bluemix 是一个敞开的云渠道架构,答应第三方依据其规范去做一些客制化的拓宽。下图所列的便是现在 Bluemi 支撑的运转时类型。

图 3. 运转时(Runtimes)

图 2. 图解 Buildpack

Bluemix 供给的服务(Services)和功用插件(Add-Ons)

运用程序往往不是独自存在的,它需求额定的附加一些新的价值才干使其丰厚起来,在 Bluemix 中这些运用程序的附加值是经过服务(Services)和功用插件(Add-Ons)来完结的。在 Bluemix 中,为程序员供给了分门别类的多种服务,这些服务首要包含:Web 和运用服务,移动开发服务,数据办理服务,大数据,DevOps 服务等等。Bluemix 能够做到以最小的价值将相应的服务添加到运用程序中,以此来丰厚运用程序,这些操作既能够经过指令行,也能够经过依据浏览器的 UI 来完结。在运用进程中,用户能够创立多个服务的实例,相同多个运用也能够一起运用同一个服务实例。

功用插件(Add-Ons)能够了解成一种特别的服务,这些功用插件是为运转时来供给更高层次的附加功用。用户能够依据自己的需求,挑选运用是否衔接到一个或许多个功用插件上,以此来丰厚运转的运用程序。功用插件与服务的不同之处在于,同一个 Space 里,只能有一个功用插件实例,多个运用去连同一种功用插件的时分,实践上连的是同一个插件实例,同享同一份服务资源。

关于服务和功用插件来说,当某一个服务绑定到运用中,或许当运用衔接到某一个功用插件上时,关于这个服务和功用插件的相关服务信息就会被写进一个成为“VCAP_SERVICES”的体系环境变量中,用户能够在代码里经过调用 System.getenv(“VCAP_SERVICES”) 来获取具体的信息,这些信息是遵从必定的格局的 JSON 字符串,例如关于某一个数据库的服务,读到的环境变量里首要便是数据库的衔接信息,用户能够在运用程序里获取并树立与数据库的衔接。

怎么运用 Bluemix Java 运转时

BlueMix 为程序员供给了多种办法开发,测验运用并终究运转在 Bluemix 运转时中,本文首要重视 Bluemix Java 运转时,并向读者介绍最常用的几种办法,其他运转时的运用办法和本文介绍的相似,读者能够自行运用。

运用指令行东西布置和办理运用

指令行东西一向受大多数程序员欢迎,高效而且高功用,你想在 Bluemix 上做的任何事情,都能够经过指令行东西来完结。比方下面所列,是咱们和运用打交道时用到的最频频的操作。

  • 运用的布置,发动,中止,重启以及删去、
  • 服务的创立,绑定,以及免除绑定等操作
  • 检查和监控运用程序的日志

指令行东西的装置也很简洁,请首要阅览文章结尾的参阅资源装置指令行东西。运用 Bluemix 之前,需求首要注册 Bluemix 账号,拜访 www.bluemix.net 注册 Bluemix 账号,当这些都完结今后,让咱们开端你的渠道云之旅吧!

当运用指令行布置 Java EE 的运用到 Bluemix 的时分,Bluemix 支撑三种格局运用的布置,分别是:WAR,EAR 以及直接上载一个 Liberty server 到 Bluemix。除了支撑这三种格局的打包文件外,还支撑将打包文件解压成目录结构,经过指令即将整个目录结构上传并布置到 Bluemix 环境。咱们这儿将以一个 WAR 运用为比如来具体解说每一步的操作,关于其他两种格局的运用的布置与 WAR 运用的布置简直是相同的,具体介绍请阅览参阅资源——布置 Liberty 运用到 Bluemix。

登录 Bluemix

运用之前注册的用户名和暗码登录到 Bluemix,为布置运用做预备:

首要,运用“cf api”树立于 Bluemix 的衔接,衔接地址是 https://api.ng.bluemix.net

清单 1. 衔接 Bluemix

USAGE:
 cf api [URL]

C:\Users\IBM_ADMIN>cf api https://api.ng.bluemix.net
Setting api endpoint to https://api.ng.bluemix.net...
OK

API endpoint: https://api.ng.bluemix.net (API version: 2.2.0)
Not logged in. Use 'cf login' to log in.

其次,运转“cf login”登录到 Bluemix 并挑选所要作业的安排和空间

清单 2. 登录 Bluemix

USAGE:
 cf login [-a API_URL] [-u USERNAME] [-p PASSWORD] [-o ORG] [-s SPACE]

C:\Users\IBM_ADMIN>cf login
API endpoint: https://api.ng.bluemix.net

Username> xiuleizh@cn.ibm.com

Password>
Authenticating...
OK

Select an org (or press enter to skip):
1. xiuleizh@cn.ibm.com
2. OE_Runtimes_SVT

Org> 1
Targeted org xiuleizh@cn.ibm.com

Targeted space dev

API endpoint: https://api.ng.bluemix.net (API version: 2.2.0)
User: xiuleizh@cn.ibm.com
Org: xiuleizh@cn.ibm.com
Space: dev

布置运用到 Bluemix

本文供给一个比如运用供咱们下载布置运用,这个运用是 HelloWithMongo.war,里边包含了一个简略的 servlet 以及一些对 Non-SQL 数据库 Mongo 的根本操作,在 Bluemix 供给的数据库服务里包含了 Mongo 数据库,咱们直接拿来运用。

运转“cf push”指令来布置运用到 Bluemix:

清单 3. 布置运用到 Bluemix

USAGE:
 Push a single app (with or without a manifest):
 cf push APP [-b BUILDPACK_NAME] [-c COMMAND] [-d DOMAIN] [-f MANIFEST_PATH]
 [-i NUM_INSTANCES] [-m MEMORY] [-n HOST] [-p PATH] [-s STACK] [-t TIMEOUT]
 [--no-hostname] [--no-manifest] [--no-route] [--no-start]

C:\Users\IBM_ADMIN>cf push HelloMongoDW -p C:\A_Workspace\apps\HelloWithMongo.war
Creating app HelloMongoDW in org xiuleizh@cn.ibm.com / space dev as xiuleizh@cn.
ibm.com...
OK

Using route hellomongodw.ng.bluemix.net
Binding hellomongodw.ng.bluemix.net to HelloMongoDW...
OK

Uploading HelloMongoDW...
Uploading from: C:\A_Workspace\apps\HelloWithMongo.war
53.4K, 14 files
OK

Starting app HelloMongoDW in org xiuleizh@cn.ibm.com / space dev as xiuleizh@cn.
ibm.com...
-----> Downloaded app package (484K)
OK


Buildpack Version: 20140527-0132
-----> Downloading IBM 1.7.0 JRE from http://file.icap.cdl.ibm.com/icapShared/jr
e/ibm-java-jre-7.0-6.0-linux-x86_64-small-footprint-uncompressed-jar-20140116.ta
r.gz (0.0s)
 Expanding JRE to .java (1.2s)
Downloading from output/wlp/com.ibm.ws.liberty-2014.4.0.0-201405270132.tar.gz ..
. (0.0s).
Installing archive ... (0.6s).



-----> Uploading droplet (93M)

0 of 1 instances running, 1 starting
1 of 1 instances running

App started

Showing health and status for app HelloMongoDW in org xiuleizh@cn.ibm.com / spac
e dev as xiuleizh@cn.ibm.com...
OK

requested state: started
instances: 1/1
usage: 1G x 1 instances
urls: hellomongodw.ng.bluemix.net

 state since cpu memory disk
#0 running 2014-05-30 06:45:02 PM 0.6% 329.8M of 1G 179.1M of 1G

布置成功今后能够运转“cf apps”检查运用的运转状况。在这儿有几点需求阐明:榜首,<app_name>最好要做到仅有,不好布置在 Bluemix 上的其他运用重复,由于默许情况下这个<app_name>会和 domain 组成运用的拜访衔接,即:<app_name>.ng.bluemix.net,每一个运用的拜访衔接应该是仅有的,假如不是仅有,布置的进程中会报错提示,咱们只需换一个不相同的姓名即可;第二,cf push 指令默许会将当时目录下的悉数内容 push 到云端,除非咱们显现的运用 –p 参数显现的指定要布置的内容;第三,从上面的输出中能够看到,运用的拜访途径是“urls: hellomongodw.ng.bluemix.net”,即“http:// hellomongodw.ng.bluemix.net”,这也是默许的 Bluemix 中运用的拜访途径的一致格局“appname.domain”。

为您引荐: IBM BlueMix 渠道云
咱们感爱好的内容
小伙伴独爱的新闻
小伙伴还重视了以下信息
小伙伴重视的焦点

小伙伴都在重视的抢手词

芈月传 老司机玩法 萌乐网 黑科技 坐骑揭秘 三国令 铁血皇城 竞技场攻略 书剑恩仇录 披风玩法 配备强化攻略 户外BOSS玩法 全网曝光 赤壁传说 半回合制国 ACT 哥们网 天书国际 奇珍商城 热血战歌 传奇瑰宝抽奖 门徒 范伟打天下 打开方式 门徒获取玩法 三大萌宠简介 新手攻略 挂机体系简介 资料副本 大海战 鸵鸟 大黑 热情玩法 门徒战力提高 万世 强化特点 上古降魔 提高战力 配备攻略 九阴绝学 质量引荐 老干妈 激战来袭 大黑游戏 新服亮点 福利多多 画江山 资料片 玩家 九阴真经 江湖儿女 实在场景 实际 虚拟 随机副本 风色轨道 听其自然 ppwan 神助攻 武林秘药 激活八大脉门 九霄劫变 猎命格 天问 大型PVP 花千骨 激战更尽兴 网易mumu 手游玩家 安卓模拟器 安卓 单挑群战 武侠传说 女神 孙尚香专访 胸猛抱团 新游 占山为王 跨服城战 蜀山战纪 剑雨江湖 攻略 实时VR交互 七大女神代言 酷炫走江湖 国际四大杀手 玩家专访 三国经典 大制造 好玩网页游戏 盘点 世界霸主 境地玩法 莽荒纪 勇闯难关 镜像副本 荒漠霸主 配备通晓 三大战役 鹌小彦奇谈