Book Image

Cloud Foundry for Developers

By : Rahul Kumar Jain, Rick Farmer, Wu
Book Image

Cloud Foundry for Developers

By: Rahul Kumar Jain, Rick Farmer, Wu

Overview of this book

Cloud Foundry is the open source platform to deploy, run, and scale applications. Cloud Foundry is growing rapidly and a leading product that provides PaaS (Platform as a Service) capabilities to enterprise, government, and organizations around the globe. Giants like Dell Technologies, GE, IBM, HP and the US government are using Cloud Foundry innovate faster in a rapidly changing world. Cloud Foundry is a developer’s dream. Enabling them to create modern applications that can leverage the latest thinking, techniques and capabilities of the cloud, including: ? DevOps ? Application Virtualization ? Infrastructure agnosticism ? Orchestrated containers ? Automation ? Zero downtime upgrades ? A/B deployment ? Quickly scaling applications out or in This book takes readers on a journey where they will first learn the Cloud Foundry basics, including how to deploy and scale a simple application in seconds. Readers will build their knowledge of how to create highly scalable and resilient cloud-native applications and microservices running on Cloud Foundry. Readers will learn how to integrate their application with services provided by Cloud Foundry and with those external to Cloud Foundry. Readers will learn how to structure their Cloud Foundry environment with orgs and spaces. After that, we’ll discuss aspects of continuous integration/continuous delivery (CI/CD), monitoring and logging. Readers will also learn how to enable health checks, troubleshoot and debug applications. By the end of this book, readers will have hands-on experience in performing various deployment and scaling tasks. Additionally, they will have an understanding of what it takes to migrate and develop applications for Cloud Foundry.
Table of Contents (12 chapters)

What is continuous delivery?

Continuous delivery (CD) is an extension of CI, where the focus is on automating the software delivery process so that teams can confidently deploy their code to production at any time. With this automation, the teams can be confident that they can release whenever they need to without any manual intervention.

The application operations team creates a deployment pipeline to enable CD. A deployment pipeline is an automated system that deploys the application artifacts to the lower environment and runs the corresponding tests on the deployed application in the given environment.

The application artifact is built once and deployed many times. The application metadata is unique to the deployment environment, and that metadata can be supplied by the deployment pipeline:

Figure 2: CD workflow

In the preceding workflow, once the application artifact...