forked from mboldt/docs-tiledev
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cf-concepts.html.md.erb
67 lines (43 loc) · 5.79 KB
/
cf-concepts.html.md.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
---
title: How TAS for VMs and Ops Manager Services Work
owner: Services
---
<% current_page.data.title = "How " + vars.app_runtime_abbr + " and " + vars.platform_name + " Services Work" %>
There are many ways to integrate services with <%= vars.app_runtime_full %> and <%= vars.platform_name %>. The right one for each service depends on what the service does, and how
customer applications consume it. To determine the best way to integrate your
service, you'll need a good understanding of <%= vars.app_runtime_abbr %> concepts like applications, containers, services, brokers, and buildpacks.
This page provides a collection of links to documentation for the most relevant
concepts. If you prefer to learn through guided training,
[ask us](mailto:[email protected]) about available training options.
## <a id="overview"></a>General Overview
For general overview of <%= vars.app_runtime_abbr %>, and the various ways to interact with it,
use the following links:
- [Cloud Foundry Subsystems](http://docs.pivotal.io/application-service/concepts/overview.html) provides high-level descriptions of internal functions performed by different <%= vars.app_runtime_abbr %> components.
- [Cloud Foundry Command Line Interface (cf CLI)](http://docs.pivotal.io/application-service/cf-cli/index.html) links to topics that explain how to direct <%= vars.papp_runtime_abbr %> deployment from your local command line.
- [Ops Manager](http://docs.pivotal.io/pivotalcf/customizing/pcf-interface.html) describes the Ops Manager and Installation Dashboard interfaces, where cloud operators see, install, configure, and deploy service tiles.
- [Apps Manager](http://docs.pivotal.io/application-service/console/index.html) describes the Apps Manager interface, where app developers create and configure service instances and bind them to their apps.
## <a id="applications"></a> Applications
Cloud Foundry is primarily a cloud native application platform. To understand how to integrate your services with Cloud Foundry, you should understand how your customers are using the platform to develop, deploy, and operate their applications.
- [Developer Guide](http://docs.pivotal.io/application-service/devguide/index.html) explains how to push an app to run on <%= vars.platform_name %> and enable it to use services.
- [Overview of Logging and Metrics](https://docs.pivotal.io/application-service/loggregator/data-sources.html) describes how <%= vars.app_runtime_abbr %> aggregates and streams logs and metrics from the apps it hosts and from internal system components.
## <a id="services"></a> Services
Most value-add integrations are done by exposing your software to customer applications as services. To understand the service concepts, and what a service integration looks like, read the following documentation:
- [Services](http://docs.pivotal.io/application-service/services/overview.html) explains how developers provision and use existing services in their apps.
- [Cloud Foundry Service Brokers and <%= vars.platform_name %> Tiles](http://docs.pivotal.io/on-demand-service-broker/about.html#cf-broker) briefly describes the two main elements of <%= vars.platform_name %> service integration: the service broker API, which connects the service to <%= vars.app_runtime_abbr %> internally by taking commands from the Cloud Controller; and the tile, a packaged interface that cloud operators use to install and configure a service within <%= vars.platform_name %>.
- [Custom Services](http://docs.pivotal.io/application-service/services/index.html) explains how service authors package their service as a [Managed Service](./managed.html) that is available for use by operators and developers, and which runs locally on <%= vars.app_runtime_abbr %> rather than running remotely.
## <a id="buildpacks"></a> Buildpacks
When application code is deployed to Cloud Foundry, it is processed by a language-specific buildpack. Language buildpacks provide a convenient integration hook for any service that needs to inspect or embellish application code.
Supplying buildpacks also provides a language-agnostic way to inject your code into the application container image.
- [Application Staging Process](http://docs.pivotal.io/application-service/concepts/how-applications-are-staged.html) explains how <%= vars.app_runtime_abbr %> packages and deploys apps in containers with buildpacks so that they can run on multiple VMs interchangeably.
- [Language Buildpacks](http://docs.pivotal.io/application-service/buildpacks/index.html) describes the language-specific buildpacks support <%= vars.app_runtime_abbr %> apps.
- [Custom Buildpacks](https://docs.pivotal.io/application-service/buildpacks/custom.html) describes how to use supply buildpacks to add dependencies or code without having to change (multiple) language-sepcific buildpacks.
## <a id="agents"></a> Embedded Agents
Some integrations depend on the ability to inject code into the application container.
We refer to these injected components as "container-embedded agents".
[Buildpacks](./buildpacks.html#other) provide a mechanism to inject components into the application container image, and the `.profile.d` directory provides a way to start agents before or alongside the customer application.
- [Agent Injection with a supply buildpack](https://docs.pivotal.io/application-service/buildpacks/custom.html)
- [Using .profile.d](http://docs.pivotal.io/application-service/devguide/deploy-apps/deploy-app.html#profile)
## <a id="nozzles"></a> Nozzles
Cloud Foundry's logging system, Loggregator, has a feature named **firehose**. The firehose includes the combined stream of logs from all apps, plus metrics data from Cloud Foundry components, and is intended to be used by operators and administrators.
A nozzle takes this data and forwards it to an external logging and/or metrics solution.
- [Loggregator system](https://github.com/cloudfoundry/loggregator)