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 book covers

Chapter 1, Cloud Foundry Introduction, introduces users to Cloud Foundry by providing background on the product itself and some related concepts. The chapter focuses on Cloud Foundry architecture and containers.

Chapter 2, Cloud Foundry CLI and Apps Manager, walks through all the necessary steps to create an account on Pivotal Web Services (PWS) and use the Cloud Foundry CLI to push a simple application to PWS. The chapter also introduces the reader to the Apps Manager running on PWS.

Chapter 3, Getting Started with PCF Dev, presents the steps required to install and manage Pivotal PCF Dev on your local machine. It explains the differences between a fully provisioned Cloud Foundry deployment and PCF Dev.

Chapter 4, Users, Orgs, Spaces, and Roles, introduces the concepts around Org, Spaces, Roles, and Users to help the reader to structure and manage their Cloud Foundry deployment. It walks through the various Cloud Foundry CLI commands on how to create the Orgs, Spaces, Users, and Roles.

Chapter 5, Architecting and Building Apps for the Cloud, teaches the guiding principles used to develop cloud-native applications, as well as the techniques to migrate and modernize monolithic applications into cloud-native applications.

Chapter 6, Deploying Apps to Cloud Foundry, presents hands-on experience of creating and managing applications, routes, and services provided in the Cloud Foundry marketplace. It touches on buildpacks and how droplets are created when applications are pushed onto Cloud Foundry through the cf CLI.

Chapter 7, Microservices and Worker Applications, discusses microservice architecture design concepts in the context of Cloud Foundry and explains the worker application concept with a hands-on example. This chapter also explores the resiliency provided by the Cloud Foundry platform itself and provides guidelines on how to develop resiliency into the application using Spring Cloud Services, based on NetFlix OSS.

Chapter 8, Services and Service Brokers, takes a deep dive into the concepts of services, service brokers, and route services. It provides a working example, alongside a usable template for creating and managing custom service brokers. This will be leveraged in the chapter, with a demonstration of how easy it is to deploy the service broker, create a service instance, and bind it to a sample application.

Chapter 9, Buildpacks, introduces the various buildpacks provided by Cloud Foundry and walks through the process of consuming and managing the buildpacks. The chapter will dive into the inner working of buildpacks, followed by a walkthrough of creating a custom buildpack.

Chapter 10, Troubleshooting Applications in Cloud Foundry, provides insights into the different error codes and what they mean, including possible resolutions.

Chapter 11, Continuous Integration and Continuous Deployment, discusses continuous integration, continuous delivery, and continuous deployment strategies in the context of Cloud Foundry. This is followed by the concepts of zero downtime and A/B deployment strategies, which can be used to push new versions of an application into Cloud Foundry without disrupting the end user experience.