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)

The principles of cloud-native design


There are 12 guiding principles for Cloud application design known as the 12-factor app. These 12 principles were originally formulated by Heroku, which offered guidance to develop cloud-native applications. More recently, three additional principles were proposed by Hoffman, which led to cloud-native application design for secure and actively profiled API centric Microservices. Some parts of the original 12 principles have also been expanded upon to clarify and address recent successful architectural approaches. We also introduce one additional principle in this book. We describe the 16 principals in the proceeding sections.

One codebase, one application

The original principle was Codebase, which described, in the broader scope, a process of having a single codebase deployable for different environments, such as QA and production. This was expanded upon to encompass the need for a single loosely coupled, highly cohesive codebase. For a developer, this...