Cloud Foundry

Cloud Foundry is an Open Source Cloud Application Platform.

cloudfoundry.org, GitHub, Incubator

Learn

Key features

  • Service discovery

    • In order to support all types of apps, languages and frameworks, we built service discovery for c2c into the platform. With this feature, users no longer have to bring their own service discovery.

Glossary

  • Buildpacks provide framework and runtime support for apps. Buildpacks typically examine your apps to determine what dependencies to download and how to configure the apps to communicate with bound services.

  • BOSH is an open source tool chain for release engineering, deployment and lifecycle management of large scale distributed services (GitHub).

  • CFAR, Cloud Foundray Application Runtime, is a code-centric platform that simplifies the life of developers (previously known as Elastic Runtime). It takes your code, written in any language or framework, and runs it on any cloud. This flexibility extends to services as well, thanks to the Open Service Broker API, which makes it easy to integrate the services your apps need to run.

  • CFCR, Cloud Foundray Container Runtime, is an open-source project that provides a solution for deploying and managing Kubernetes clusters using BOSH. See Welcome to CFCR.

  • CAPI stands for Cloud Controller API.

  • CredHub is a component designed for centralized credential management in Cloud Foundry (CF). It is a single component that can address several scenarios in the CF ecosystem. At the highest level, CredHub centralizes and secures credential generation, storage, lifecycle management, and access.

  • Garden is the component that Cloud Foundry uses to create and manage isolated environments called containers. Each instance of an application deployed to Cloud Foundry runs within a container.

  • Gorouter routes traffic coming into Cloud Foundry to the appropriate component, whether the request comes from an operator addressing the Cloud Controller or from an application user accessing an app running on a Diego Cell. Handling both platform and app requests with the same process centralizes routing logic and simplifies support for WebSockets and other types of traffic (for example, through HTTP CONNECT). See GitHub.

  • GrootFS is the container root filesystem management component for Garden. A container root filesystem or rootfs is often referred to as an image. See Blog entry.

  • NATS is a lightweight publish-subscribe and distributed queueing messaging system written in Ruby (GitHub).

  • Stemcell is a versioned Operating System image wrapped with IaaS specific packaging.

  • UAA stands for User Account and Authentication.

Going further

Command line

Version & help

cf version

cf help

cf <command> help

Login & logout

cf login -a <cf-api-endpoint>

cf logout

Organizations

cf orgs

cf org <orgname>

Space

cf create-space -o <orgname> <newspacename>

cf spaces

cf space <spacename>

Quota

cf quotas

Targets

cf target

cf target -s <newspacename>

Applications

cf apps

cf app <appname>

cf push

cf restage <appname>

cf dev deploy-service <service-name>

cf services

cf marketplace -s elephantsql

cf create-service elephantsql turtle cf-demo-db

cf bind-service cf-demo cf-demo-db

cf push pal-tracker --random-route -p src/PalTracker/bin/Release/netcoreapp2.1/publish

cf set-env pal-tracker WELCOME_MESSAGE "Hello from Cloud Foundry"

cf restart pal-tracker

cf delete pal-tracker

cf map-route

cf marketplace

cf create-service cleardb spark tracker-database

cf bind-service pal-tracker tracker-database

Scaling

# instance
cf scale <appname> -i 3

# disk size (causes a restart)
cf scale <appname> -k 512M

# memory limit (causes a restart)
cf scale <appname> -m 1G

Logging & events

cf logs <appname>

cf logs <appname> --recent

cf events

Access

cf ssh

Recipes

Integrate with Kubernetes

Last updated