首页 > 代码库 > 体验 Pivotal Cloud Foundry

体验 Pivotal Cloud Foundry

  Cloud Foundry 是开源的 PAAS 实现, Pivotal 基于CF 做了一些扩展,发布了自己的商业化版本 PCF 并且将 PCF 部署到AWS 上做为一个参考实现,这就是 PWS 

  目前 PCF 支持的 IAAS 包括 AWS, AZURE, GCP, vSphere , OpenStack

  如果仅仅是尝试如何在PCF平台上部署应用,可以选择两种方式,一种是直接部署到PWS,另一种是直接部署一个PCF--如果没有安装PCF的基础设施,那可以选择PCF 的Dev 版本,它可以直接安装在PC上。

  直接部署应用到PWS上,大致需要这几个步骤:注册PWS账户,安装cf 命令行,登录到pws, 选择一个可以部署的应用,部署到PWS。

  1. 注册PSW账户
  2. 安装 cf 命令行,安装完后,验证命令可用: cf  help 
  3. 登录到 pws : 
    cf login -a https://api.run.pivotal.io
  4. 选择一个可部署的应用,可以直接到 https://github.com/cloudfoundry-samples clone 一个应用,可以看到有多个不同开发语言实现的应用。
  5. 部署, 先 cd 到应用目录下,然后 cf push. 在启动完后,可以在输出的最后几行看到给应用分配的URL,通过浏览器可以访问了。
    requested state: started
    instances: 1/1
    usage: 1G x 1 instances
    urls: spring-music-metronomical-remex.cfapps.io
    last uploaded: Fri Dec 2 02:40:16 UTC 2016
    stack: cflinuxfs
  6. 查看实时日志: cf  logs  spring-music ,  这里应用的名字是 spring-music

  在云中,所有的资源都是服务,DB 也是一种服务。 接下来看一下如何切换数据库:

  1. 列出可用的配置计划:  cf  marketplace  -s elephantsql , 这里marketplace 提供各种资源,-s 是服务, elephantsql 是服务计划名称。服务计划就是创建服务的配置或者模板。 这个命令列出所有可用的 elephantsql 的各种配置,不同配置的容量或性能不同。 其中有一个计划是 turtle .
  2. 按计划创建出服务: cf create-service elephantsql turtle mydb ,  这里 mydb 是创建的服务名字。
  3. 将应用与服务绑定:cf bind-service  spring-music  mydb 
  4. 重启应用:cf restart  spring-music
  5. 查看服务绑定: cf services 

  伸缩硬件资源

  1. 将应用实例调整为2个, 内存和存储空间调整为512M :  cf scale spring-music -i 2 -m 512M -k 512M

 

  使用的命令有: login, push, app; logs; markestplace, create-service, bind-services, services; scale

  特点总结:

  • 应用部署简单,只需一个命令。显然pcf 与应用间是有契约 的;
  • 性能伸缩性,通过水平扩容,自由调整实例的个数。而且不用关心负载均衡和路由和会话维持问题。这也是为啥要选择 PAAS而不是 IAAS的重要原因。
  • 所有资源都是服务(这里PWF内存和存储不是)。那应用与服务应该有某种契约。

 

体验 Pivotal Cloud Foundry