Porter is a popular Kubernetes-powered Platform-as-a-Service (PaaS) solution that allows teams to deploy and manage apps on Amazon Web Services (AWS), Google Cloud Platform (GCP), Digital Ocean (DO), and more.
Businesses are choosing Porter to cut through the complexity of managing server infrastructure. This post outlines the benefits and drawbacks, and if it’s the right solution for your business.
Already decided to use Porter? If so, then contact us to schedule a free call to learn how Moonswitch can set a solid foundation by building out your infrastructure according to best practices.
First, Let’s Review Kubernetes
Porter runs on Kubernetes - also known as K8s - an open-source system developed by Google.
Kubernetes automates the deployment, management, and scaling of containerized applications on a public and private cloud hosting provider.
Containers are applications that run in isolated runtime environments that include all dependencies, including system libraries, configuration files, and binaries. Kubernetes keeps track of all those details, so everything plays together in perfect harmony.
Next, a Primer on the Porter PaaS
Porter is a cloud-agnostic, fully-managed PaaS that enables teams to automate the DevOps experience. Features include a simplified user interface, total flexibility over K8s clusters, and deployment templates. In addition, advanced features like DevOps mode are available for users that want exposure to the complexity of Kubernetes.
Porter Makes it Easy to Get Started with Kubernetes
Implementing Kubernetes can be a complex endeavor for businesses getting started on the cloud. Porter reduces complexity by providing many advantages of Kubernetes through a Heroku-like experience.
Porter works just like Heroku and has similar benefits. These include a deployment pipeline to easily deploy cloud-based apps and an ecosystem of add-ons that provide additional application services.
Further, Porter offers a self-hosted option that can be installed on any Kubernetes cluster. Going this route provides the best of both worlds: ease of app deployment, and complete management of your infrastructure on the cloud provider of your choice.
Is Porter a good fit for your business?
There are numerous benefits to consider when choosing a PaaS offering like Porter, including:
Faster Application Development
Porter offers numerous pre-built software features that reduce development time, resources, and money.
Scaling resources on demand is one of the primary benefits of using a PaaS. Rather than focusing on configuring the underlying technical infrastructure, pre-configured environments like Porter allow teams to focus on developing software in line with current consumer demands.
In some cases, a PaaS can decrease costs by allowing businesses to avoid expenses associated with development and scaling. In addition, Porter can reduce cloud management costs by handling patches, updates, maintenance, and other administrative functions.
Porter enables teams to get up and running quickly, however there are some downsides to this approach that include:
Lack of Consistency
After Porter provisions the cluster and resources, developers are left to manage them manually in the AWS console. As a result, there is no single source of truth for your infrastructure.
Industry best practices call for using an Infrastructure as Code provider (like Terraform). This ensures that changes to your infrastructure are consistent across all environments, and can be audited.
Porter will only provision Elastic Kubernetes Service (EKS) clusters. As a result, teams must find an alternative way to provision and connect other cloud resources, including relational database services (RDS), S3 buckets, web application firewalls, and content delivery networks (CDNs).
Porter’s ecosystem of community add-ons is a major benefit, however developers are limited to those that are pre-approved.
Teams requiring additional add-ons to their clusters must manage them separately from Porter. However, this goes against best practices because all add-ons should be handled the same way using a GitOps framework like FluxCD.
A primary benefit of handling add-ons using a framework like FluxCD is that it allows teams to add items while giving them an auditable source of truth that reveals exactly what was deployed on each cluster.
As mentioned in the previous section, using Porter can reduce expenses. However, this may not be true in all circumstances.
Each tool in Porter incurs service fees, potentially increasing the costs of running applications. Further, since fees are typically based on consumption, some businesses face cost overruns when some of these tools are used frequently.
It’s also important to note that almost everything Porter achieves is just a collection of open-source tools that can be deployed on any Kubernetes cluster.
Growth-minded companies should take these considerations into account when choosing a PaaS. Alternatively, using an Infrastructure-as-a-Service (IaaS) may be more cost-effective in the long run.
Moonswitch Helps You Get it Right from the Start
Expert consulting maximizes the benefits of cloud computing by helping you make the right choice from the beginning.
Mistakes can incur high costs while wasting time and risking vendor lock-in. The cloud modernization and migration experts at Moonswitch can help you get it right from the very beginning by setting up your infrastructure according to best practices.
Contact us for a free consultation to discover your best options.