PCF Tutorial (2020)
Cloud Foundry is an open source cloud computing platform originally developed in-house at VMware. It is a platform (PaaS) for cloud native application, it helps developer to just focus on code rather worrying about platform they use and their configurations.
Cloud Foundry is an open source cloud PaaS(Plateform as a Service), It can be deployed on any IaaS (Infrastructure as a Service), like OpenStack, AWS, vSphere. Below is high level cloud foundry architecture and it's major components.
Cloud platform like platform as a service (PaaS) gaining lots of importance in today's world, and many reputed companies has a growing its usage day over day. At TechGeekNext, Pivotal Cloud Foundry is one of our key focus area of our site, we provide number of technology article around Cloud Foundry.
Cloud Foundry Architecture
- Router: A unique route exist for each application. Cloud Foundry uses this router to map incoming request to the right application.
- Blobstore: Storage for droplets and binary large files. Eliminates the need to reupload/restage when scaling application. NFS mounted storage or Amazon S3 store
- Cloud Controller Database (CCDB): Storage for application metadata.
Sore information like Application Name, No of instances, Memory limits, application Routes, Bound services ( like MYSQL,RabbitMQ)
A postgres DB instance
- OAuth2 Server (UAA) and Login Server: User Authorization And Authentication (UAA), provides identity, security and authorization services.
- nsync, Cell Reps,BBS : The nsync, BBS, and Cell Rep components work together along a chain to keep apps running. At one end is the user. At the other end are the instances of applications running on widely-distributed VMs, which may crash or become unavailable.
- Auctioner: Gather states from appropriate sources of truth at decision time , run the algorithm, tell the cell that wins the auction by placing the action on BBS
- Cloud Controller and Diego Brain: Cloud Controller provide restful interface to domain object, it reponse to client like CLI, WEB UI, Spring STS
- Diego Cell :Diego is a self healing container system that attempts to keep the correct number of instances running in Diego cells to avoid network failures and crashes.
- Service Brokers: Provide an interface for native and external third party services. For Example, Mail Server, Messaging etc.
- Consul: Consul server keeps control data that lives longer, like component IP addresses and distributed locks, to prevent components from duplicating actions.
- BBS: Bulletin Board System (BBS), central co ordination for activities (actions) within cloud foundry.
- Loggregator: Master logging process, which accepts logs from application instances and cloud foundry components.
You can use cf log command to see the logs. It is non persistent, temporary log storage. It accumulates logs from multiple sources and aggregates by application.
- Metrics Collector: The metrics collector gathers metrics and statistics from the components. Operators can use this information to monitor a Cloud Foundry deployment.
Let's get started with PCF Tutorial: