Cloud foundry 如何使用BOSH lite作为开发人员?

Cloud foundry 如何使用BOSH lite作为开发人员?,cloud-foundry,bosh-deployer,Cloud Foundry,Bosh Deployer,我的任务是更新一些波什脚本/工作/你有什么,开发它们花费了我很多时间 我终于学会了使用BOSH lite,但我只知道如何将CloudFoundry部署到BOSH lite环境 然而,我有点不知所措,我需要在我的BOSH lite发布/清单/这里有什么 有人能用BOSH lite描述他们的工作流程吗?我需要在发布清单中输入什么类型的信息来部署我的发布,并在BOSH lite中测试我的工作和差事?我一直很难在这一领域找到好的资源,一般来说只是说说而已。高级工作流程是: 在你的工作站上,你有一个你的

我的任务是更新一些波什脚本/工作/你有什么,开发它们花费了我很多时间

我终于学会了使用BOSH lite,但我只知道如何将
CloudFoundry
部署到BOSH lite环境

然而,我有点不知所措,我需要在我的BOSH lite发布/清单/这里有什么


有人能用BOSH lite描述他们的工作流程吗?我需要在发布清单中输入什么类型的信息来部署我的发布,并在BOSH lite中测试我的工作和差事?我一直很难在这一领域找到好的资源,一般来说只是说说而已。

高级工作流程是:

  • 在你的工作站上,你有一个你的波什释放回购
  • 你在什么地方有个爱唠叨的导演
  • 您可以编写发行版,构建发行版,并将其上载到导演
  • 您可以创建/修改引用已上载版本的部署清单
  • 您使用清单运行
    bosh deploy
    ,以便主管可以在“云”中创建“vm”,并将版本中的软件位放在清单中描述的拓扑结构中的那些vm上(并运行软件)
您需要告诉控制器的三件主要事情是stemcell、release和部署清单。现在,你已经知道什么是发行版了,它基本上是所有运行的软件

stemcell是所有已部署VM共用的基本OS映像(在一个部署中可以有不同的stemcell,但最常见的是它们都相同);这是一个特殊的图像,有一些东西预烘焙到它,以方便与波什工作。主要是,它有一个BOSH代理,这是导演与虚拟机通信的方式,告诉它“下载这个包”、“下载这个作业”、“启动这个过程”等等

部署清单是一个YAML文件,您可以在其中指定以下内容:

  • 部署的
    名称
  • 将作为此部署的一部分进行部署的
    版本列表
    ,以及特定版本
  • 要与部署的VM关联的
    网络的描述。例如,如果您使用的是像AWS这样的IaaS,那么您可能正在部署到VPC中,在这里您可以指定一些子网ID
  • 作业的描述
    ,基本上是要部署的几个同构集群的列表,以及每个集群需要多少虚拟机/节点实例。假设您的发行版由一个
    前端
    服务、一个
    后端
    服务和一个
    数据库
    服务组成。然后,您可能需要部署一个只运行
    frontend
    作业的
    frontend
    集群,并且有5个实例。您可能需要10个
    后端
    集群实例,并且可能只需要1个
    数据库
    实例。清单中的每个
    作业
    都可以引用来自多个版本的多个
    作业
    (是的,这两个东西被命名为同一个东西是一个不幸的历史事故)
  • 配置
    属性
    ,例如,您的作业可能需要配置一组参数和凭据,需要全局共享的任何属性都可以放在
    属性
    部分
BOSH Lite是一个流浪的VM,它基本上运行两件您关心的事情:

  • 波什导演
  • ,一个Linux容器管理器(如果你听说过Docker,Garden也是类似的,但已经存在了更长的时间,更适合生产用例)。Garden在这里的行为类似于“云”,当导演需要创建VM时,它将委托给它的“云提供商接口”,该接口反过来只要求Garden创建一个容器
BOSH Lite的优势在于,在笔记本电脑上的虚拟机中启动容器比在AWS、vSphere、OpenStack或其他真实数据中心中启动真正的虚拟机更便宜、更快

首次工作流(启动并瞄准BOSH Lite后):

迭代

$ # modify the code in your repo
$ bosh create release --force && bosh upload release
$ # modify your manifest if necessary
$ bosh -d manifest.yml deploy
如果您不熟悉BOSH清单,从头开始创建清单可能会很困难。您可能要考虑的一件事是遵循您为创建云铸造的BOSH Lite清单找到的指令。然后修改它以适合您的项目

以下是有关部署清单架构的完整文档:


如果生成清单时遇到问题,您可以求助于或哪一个更适合来回帮助清单工作。

高级工作流是:

  • 在你的工作站上,你有一个你的波什释放回购
  • 你在什么地方有个爱唠叨的导演
  • 您可以编写发行版,构建发行版,并将其上载到导演
  • 您可以创建/修改引用已上载版本的部署清单
  • 您使用清单运行
    bosh deploy
    ,以便主管可以在“云”中创建“vm”,并将版本中的软件位放在清单中描述的拓扑结构中的那些vm上(并运行软件)
您需要告诉控制器的三件主要事情是stemcell、release和部署清单。现在,你已经知道什么是发行版了,它基本上是所有运行的软件

stemcell是所有已部署VM共用的基本OS映像(在一个部署中可以有不同的stemcell,但最常见的是它们都相同);这是一个特殊的图像,有一些东西预烘焙到它,以方便与波什工作。主要是,它有一个BOSH代理,这是导演与虚拟机通信的方式,告诉它“下载这个包”、“下载这个作业”、“启动这个过程”,
$ # modify the code in your repo
$ bosh create release --force && bosh upload release
$ # modify your manifest if necessary
$ bosh -d manifest.yml deploy