Cloud Foundry 概述

本文简单介绍以下内容:


行业标准云平台-Cloud Foundry

云平台允许任何人部署网络应用或服务,并且可以在几分钟内将其提供给世界各地。当某个应用变得流行时,云平台只需要几次敲击来替代过去几个月的构建和迁移工作,便可以轻松地扩展它来处理更多的流量。云平台代表了 IT 发展的最新趋势,使我们能够专注于应用程序本身和数据,而不必担心底层的基础架构。

这里写图片描述

并不是所有的云平台都是一样的。有些云平台的语言和框架支持有限、缺少关键的应用程序服务、或者受限于部署到单个云上。Cloud Foundry(CF)已成为行业标准。它是一个开源平台,我们可以将其部署在自己的计算基础设施上,来运行应用程序,或部署在像AWS、vSphere或OpenStack之类的IaaS上。我们还可以使用商业CF云提供商部署的PaaS 。Cloud Foundry的开放性和可扩展性防止我们被锁定在单一框架、一组应用服务或云端。

对于任何有意消除应用中配置基础设施的成本和复杂性的人来说,Cloud Foundry一个理想选择。开发人员可以使用现有的工具将应用部署到Cloud Foundry上,并对其代码进行零修改。

Cloud Foundry 如何运作

为了灵活地在线服务和扩展应用,Cloud Foundry拥有执行特定功能的子系统。以下是这些主要子系统的一些工作原理:

云如何平衡其负载

云平衡其在多台机器上的处理负载、优化效率和恢复点故障。Cloud Foundry的安装在三个层面完成:

  • BOSH 在物理计算基础设施之上创建和部署虚拟机(VM),并在云端部署并运行Cloud Foundry。BOSH依照一个manifest文档来配置部署。
  • CF Cloud Controller 在云虚拟机上运行应用和其他进程,并且平衡需求和管理应用的生命周期。
  • router 将来自世界各地的传入流量路由到运行所需的应用的虚拟机。通常是与客户提供的负载均衡器一起工作。

应用如何运行

Cloud Foundry指定两种类型的VM:构成平台基础设施的组件VM、托管外部应用的主机VM。在CF中,Diego系统将托管的应用负载分配到所有主机VM上,并通过需求激增,中断或其他更改来保持运行和平衡。Diego 通过 auction 算法完成这一过程。

为了满足需求,多个主机VM运行同一应用的重复实例。这意味着应用必须是可移植的。Cloud Foundry将应用源代码分发给VM,而VM需要在本地编译和运行这些应用。这包括应用运行的OS stack,以及一个包含应用使用的所有语言、库和服务的buildpack。在向VM发送应用之前,Cloud Foundry 将 stack、buildpack和源代码整合到一个droplet中,该droplet可由VM解包、编译和运行。对于简单的、没有动态指针的独立应用,droplet 可以包含一个预编译的可执行文件,而不是源代码,语言和库。

CF 如何组合 Users 和 Workspaces

为了组织用户访问云并控制资源使用,在安装中定义了 Orgs 和 Spaces ,并为每个用户分配admin、developer 或 auditor 等 Roles。User Authentication and Authorization (UAA)服务器支持作为 OAuth2 服务的访问控制,并且可以在内部存储用户信息,也可以通过LDAP或SAML连接到外部用户存储。

CF 将资源存储在哪

Cloud Foundry使用GitHub上的git系统来版本控制源代码、buildpack、文档和其他资源。平台上的开发人员也可以使用GitHub用于自己的应用、自定义配置和其他资源。为了存储大型二进制文件,例如droplets,CF维护一个内部或外部的blobstore。为了存储和共享临时信息,例如内部组件状态,CF使用MySQL、Consul和etcd。

CF 组件如何通信

Cloud Foundry 组件通过使用http和https协议在内部发布消息,并通过直接发送 NATS 消息来相互通信。

如何监控和分析 CF 部署

随着云的运作,Cloud Controller VM、router VM和运行应用的所有VM都会持续生成日志和指标。Loggregator 系统将这些信息以结构化的、可用的形式聚合起来,即Firehose。我们可以使用Firehose的所有输出,或直接输出到特定的使用,例如监控系统内部或通过使用 nozzles 来分析用户行为。

使用 CF 的服务

典型的应用依赖于免费或计量服务,如数据库或第三方API。为了将这些服务合并到一个应用中,开发人员编写了一个Service Broker,一个发布给云Cloud Controller的API,可以提供服务列表、提供服务以及启用应用来调用它。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值