Giới thiệu PCF (Pivotal Cloud Foundry) là gì?

Trước tiên để biết PCF (Pivotal Cloud Foundry) là gì? Tôi sẽ giới thiệu sơ lượt về kiến thức phân loại Cloud Service. Như hình bên dưới thì ta thấy có 3 loại Cloud Service hiện nay:

  • IaaS: Người developer tạo ra app thì phải dựng OS, Môi trường run time,… và cuối cùng deploy app để test các kiểu.
  • PaaS: Người developer tạo ra app thì phải bấm nút deploy app để test các kiểu.
  • SaaS: Người developer tạo ra app bấm nút là có bản report mọi thứ đã khai xong.

PCF là gì?

PCF – Pivotal Cloud Foundry (https://pivotal.io/about) là điện toán đám mây được phát triển bởi Pivotal. PCF cung cấp một Platform as a Service (PaaS) giúp giảm tải quá trình phát triển và triển khai các ứng dụng. Nên developer không phải quan tâm nhiều đến server mà chỉ việc develop thôi, còn triển khai từ development -> Staging -> Production vô cùng nhanh. Và đã có nhiều công ty sử dụng PCF để phát triển công nghệ,  thông qua Pivotal CF để xây dựng một nền tảng điện toán đám mây dựa trên mã nguồn mở.

PCF được triển khai với mục đích:

  • Quá trình phát triển và triển khai ứng dụng được nhanh chóng.
  • Khả năng mở rộng và khả năng hữu dụng của ứng dụng luôn luôn được cao nhất.
  • Giúp quy trình DevOps được thuận lợi và dễ dàng
  • Giảm thiểu sai sót do con người gây ra.
  • Tiết kiệm chi phí sử dụng.

PCF vận hành như thế nào?

Trước khi biết vận hành ra sao thì ta cần biết về tổ chức trong PCF. Để dễ dàng quản lý thì PCF chia thành các phần sau và người dùng hoàn toàn có thể quản lý nó thông qua Cloud Foundry Command Line Interface (cf CLI)

Sơ đồ tổ chức trong PCF

  • Orgs: khi tạo organizations bạn có thể quản lý quota về dung lượng… Nó chứa các spaces.
  • Spaces: spaces chứa các apps.
  • Apps: applications bạn có toàn quyền scale, bind apps vào services, manage environment variables, routes, view logs và xem thông tin, start và stop apps và xóa apps.
  • Services: có thể bind services vào apps, unbind services từ apps, chọn và sửa service plans, đổi tên và xóa service instances.
  • Users: Bạn có thể thêm user vào org, roles, và xóa users.

Quy trình vận hành PCF

 

Theo sơ đồ thì user chỉ cần gửi command từ nơi chứa app để push app cùng cấu hình lên PCF.

Kế tiếp, PCF sẽ tiến hành deploy, binding services cần thiết và scale app từ cấu hình push lên.

Khi deploy PCF sẽ hoạt động như thế nào?

Infrastructure thì bạn có thể dùng các cloud như Google Cloud Platform, Azure, Amazon, VMware,… nói chung là server đảm bảo vận hành tốt là có thể để triển khai hệ thống PCF.

PCF Platform sẽ quản lý scalling theo nhu cầu khi deploy app và các database, cache, store đều đươc xem là services chũng sẽ binding vào app trong lúc deploy.

Run time: Quá trình vận hành đầu tiên khi push code vào PCF.

  1. Routing: Khi nhận lệnh push routing sẽ điều phối các domain trỏ vào đúng container.
  2. Service discovery: là bước tiếp theo tiến hành binding các service vào app.
  3. Container: Sẽ upload source code vào 1 container mới.
  4. Configuration: Sẽ scalling container cho phù hợp thông qua manifest.xml config và buid pack config.
  5. Application framework: Deploy framework phù với source và đã có build pack hỗ trợ. Và thực hiện chu trình destroy container cũ và start container mới.
  6. Logging & Metrics: Trong lúc deloy thì hệ thống log sẽ listen PCF xử lý và ghi log và số liệu.
  7. Messaging: Sau các tiến trình thì PCF sẽ thông báo.

Services: các service mà PCF cung cấp như database, cache,….

Chia sẽ về PCF Architechture

PCF Architechture on Azure

PCF Achitechture on AWS

 

Lời kết

PCF được xây dựng trên mô hình PaaS. Hiện nay, đang được các công ty lớn áp dụng nhằm tối ưu thời gian phát triền và triển khai ứng dụng lên các platform. Bạn có thể tìm hiểu tại đây https://docs.pivotal.io

Site Footer

Sliding Sidebar

About Me

About Me

Hello, my name is Dũng (Johnny). Welcome to my blog.

As I’m a developer, I write about topics related to the field of programming, mainly from a technical point of view. On this blog you’ll find posts which encourage discussion, information about development trends, case studies, reviews, tutorials, tips on how to improve your effectiveness, and anything else that might be fascinating to people from the IT industry.
I love PHP,JS and Fullstack.

  • http://lcdung.top/about/
  • Mail: ledung@8bitbase.com