Wednesday, August 28, 2019

How to Choose your platform
























IaaS, CaaS, PaaS Decision Support Matrix

Offering
PCF
Kubernetes
vCloud (VMs')Traditional
Type of Service
Application PaaS
Container PaaS (CaaS)
IaaS Self-ServiceIaaS Traditional Provisioning
What
Cloud Foundry is an open source cloud platform as a service on which developers can build, deploy, run and scale applications on public and private cloud models.
High-level abstraction of cloud-native application development. Give PCF an app, platform does rest (from tracking dependencies, application building, network, routing etc.)
Kubernetes is a container orchestrator. With container orchestration tools, the user creates and maintains the container themselves. For many teams, having this flexibility and control over the application is preferred (non-opinionated/non-restrictive).

vCloud Automation enables IT Automation through the creation and management of personalized infrastructure, application and custom IT services (XaaS).

Addon’s/Benefits
Automated routing
Auto scaling
CF CLI
Load balancer
DNS
Logging & metrics aggregator
Auto-scaling
Kubectl (CLI) / Dashboard
DNS
Load balancer
Logging & Metrics aggregator
Stateful application Support
Persistent Storage
HTTPS / TCP connectivity
Flexible architecture (with support for 3rd party plugins)
Self Service Org/Team management
The goal is to accelerate application deployment and delivery, dramatically reducing IT costs through policy-enabled workflow automation.
Enable Cloud-like functionality for applications that are not designed as cloud-native apps
Full Self-Service Portal and APIs for provisioning and resource management
Self-Service scaling and option for application team controlled auto-scaling
On-Demand VMs
Physical Servers
Virtual Appliances
Specialized Virtual Machines
Optional Services
Bring your own containers: Supported, restrictive & opinionated
Bring your own containers: Supported, flexibility for customizations and non-opinionated
Application specific catalog items
Complete Environment Provisioning and Blueprinting
APIs for Delivering Infrastructure as Code
Highly customized servers
Recommended use cases
PCF offers higher level of abstraction is ideal for new applications, cloud-native apps and apps that run fine out of a build pack. For teams working with short lifecycles and frequent releases, PCF offers an excellent product.
Kubernetes is lower-level abstraction of PaaS, meaning provides greater flexibility for customizations, build your own containers but will mean more work for Engineering teams.
Legacy applications can still take advantage of many features available in Kubernetes.
Non cloud-native applications
Large SQLServer and Oracle Database Servers
Large Cassandra, Gemfire and Mongo Databases
Downside/Pitfalls
Restrictive and opinionated (when it comes to customization)Non-restrictive, flexibility for customization. Some operational learning required.
Most expensive
Longest Lead Times
OS PatchingIf OS needs to be upgraded, current instance is destroyed and a new instance is created with updated codeIf OS needs to be upgraded, current instance is destroyed and a new instance is created with updated codeApplication team responsible for OS PatchingOS Support team assists in patching
Application UpgradesApplication owner responsibleApplication owner responsibleApplication owner responsibleApplication owner responsible