Skip to content

Instantly share code, notes, and snippets.

@souhaiebtar
Created July 7, 2021 18:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save souhaiebtar/868c2634e91a7f242d92a85599ff8d33 to your computer and use it in GitHub Desktop.
Save souhaiebtar/868c2634e91a7f242d92a85599ff8d33 to your computer and use it in GitHub Desktop.
[k8s vs cloudfoundry paas requirements and drawback] k8s vs cloudfoundry paas #k8s #paas #iaas #cloud #cloudfoundry

It is pivotal to understand the application functionalities and available resources. This is especially the case when a microservice-based design is chosen, and solutions suck as IaaS (Infrastructure as a Service), PaaS (Platform as a Service), SaaS (Software as a Service) are available from a multitude of vendors. Choosing the most suitable deployment tooling will lead to the efficient delivery of the product.

Considering that the application code is available, these are the steps to adopt each proposed solution:

Kubernetes

  • create an OCI (Open Container Initiative) compliant image, usually created by using Docker
  • deploy a Kubernetes cluster with a valid ingress controller for the routing of requests
  • deploy an observability stack, including logs and metrics
  • create the YAML manifests for the application deployment
  • create a CI/CD pipeline to push the Kubernetes resources to the cluster

Cloud Foundry

  • write a manifest file to provide main application deployment parameters
  • deploy Cloud Foundry or use Cloud Foundry PaaS solutions from 3rd part vendors
  • deploy the application to Cloud Foundry (via CLI or UI)

Note: Cloud Foundry will create the OCI compliant image by default, and it will provide the routing capacities as well. Cloud Foundry provides a better developer experience for application deployment, as it offers a greater level of component abstraction (no need to manage the underlying infrastructure). However, a PaaS solution locks-in the customer to a specific vendor. On the other side, Kubernetes offers full control over the container orchestration, providing more flexible management of the application.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment