DURATION

Three days

Outline for Cloud-Native Applications and Microservices for Cloud Foundry Developers Training

Chapter 1. Designing Applications for the Cloud

•    Monolithic Applications
•    Disadvantages of Monolithic Applications
•    Problems with Traditional Monolithic Application Design
•    Dealing with Monoliths
•    Microservices
•    Microservices Cons
•    Micro Frontends (a.k.a. MicroUI)
•    Managing the Crowd (Call the Riot Police?)
•    The Twelve-Factor App Methodology for Cloud Apps
•    The Twelve Factors (Part 1 of 2)
•    The Twelve Factors (Part 2 of 2)
•    Summary

Chapter 2. Introduction to the Pivotal Cloud Foundry Platform

•    Cloud Standardization
•    Cloud Standard Example: Open Cloud Computing Interface
•    Links
•    What is Pivotal Cloud Foundry
•    PCF vs Heroku
•    Architecture Modernization
•    Pivotal CF is An Enterprise PaaS
•    The Focus: Distributed Applications
•    Operational Aspects
•    Cloud Foundry Foundation Members
•    Traditional On-Premise vs IaaS vs Cloud Foundry
•    What is Being IaaS-Independent?
•    Cloud Foundry PaaS Certification Program
•    Supported Runtimes and Frameworks
•    Modern Release Engineering
•    The Cloud Foundry BOSH Tool Chain
•    Deployment of Cloud Foundry
•    Interfacing with PCF
•    Open Service Broker API
•    12 Factor Apps
•    Comparing with IaaS
•    The cf CLI
•    Scaling
•    CF Details
•    Cloud Foundry Open Source vs Pivotal Application Service (PAS)
•    PCF Marketplace
•    Tasks and Long-running Processes
•    Task Execution
•    Summary

Chapter 3. Pivotal Cloud Foundry Components

•    Overview
•    Elastic Runtime (ER) Architecture
•    Elastic Runtime (ER) Conceptual Diagram
•    cf push High Level Orchestration
•    Cloud Controller
•    Staging
•    The Available Buildpacks
•    The Diego Subsystem
•    Container
•    Diego Cell
•    Garden
•    Rep
•    Executor
•    Putting it All Together ...
•    The Bulletin Board System (BBS)
•    Brain
•    The Loggregator Subsystem
•    Virtual Machines
•    VM Notes
•    Router
•    Login
•    Putting it All Together
•    Stage / Run Flows
•    Summary

Chapter 4. Pivotal Cloud Foundry Buildpacks

•    Overview
•    System Buildpacks
•    Community Buildpacks
•    Applying Multiple Buildpacks
•    Droplet
•    Staging Sequence
•    Buildpack Main Scripts
•    Example of bin/detect Script
•    What IF No Suitable Backpack is Detected?
•    Specifying the Custom Buildpack
•    Check Available System Backpacks
•    Checking the Backpack Your App is Using
•    Deploying Docker Images
•    Summary

Chapter 5. PCF Organizations, Spaces and UUA

•    User Account and Authentication (UAA)
•    Organization
•    Organizations and Spaces
•    Roles and Permissions
•    CLI
•    Summary

Chapter 6. Application Security Groups

•    Application Security Groups (ASGs)
•    Whitelist Approach
•    Default ASGs
•    Security Group Rules File Example
•    View ASGs with the cf CLI
•    Create a Security Group with cf CLI
•    Bind an ASG
•    Lock Down all the Egress Traffic for a Running App
•    Configure the Outbound Traffic
•    Summary

Chapter 7. Pivotal Cloud Foundry Autoscaling

•    Overview
•    The Application Autoscaling Service
•    How App Autoscaler Determines When to Scale
•    Autoscaling Events
•    Set up App Autoscaler
•    Summary

Chapter 8. Handling Logs

•    In-Class Discussion
•    12 Factor App's Take on Logs
•    The Log Flow Management System
•    The Log Flow Diagram
•    Restart or Not Restart the App for the Log Drain to Start?
•    Summary

Chapter 9. CF Route Service

•    Overview
•    Architecture
•    Fully-Brokered Service Model
•    User-Provided Service Model
•    CF CLI Commands
•    Client Request Flow Diagram in User-Provided Service Deployment
•    How It Works
•    Summary

Chapter 10. Pivotal Cloud Foundry HA

•    Overview
•    Availability Zones (Level 1)
•    Health Management for App Instances (Level 2)
•    Process-Level Monitoring (Level 3)
•    The monit and BOSH Agent Processes
•    Resurrection of IaaS-level VMs (Level 4)
•    Summary

Chapter 11. Blue-Green Deployment

•    What is Blue-Green Deployment Pattern?
•    How It Works
•    What if I Need a Larger Maintenance Window?
•    Step 1
•    Step 2
•    Step 3
•    Step 4
•    Implementations
•    General Considerations for Application and Data Model Design
•    Summary

Chapter 12. Miscellaneous Topics

•    TCP Routing
•    Distributed Transaction Tracing
•    Continuous Delivery on PCF
•    Summary