ABCs of Control Plane
Hello, and welcome to this blog of Control Plane!
Today, I'm going to explain the concept of control plane for software as a service (SaaS) world, and help you understand it better.
Hello, and welcome to this blog of Control Plane!
Today, I'm going to explain the concept of control plane for software as a service (SaaS) world, and help you understand it better.
As entrepreneurs, we know that time and money are our most valuable assets. Imagine if we have a mechanism to test our ideas and validate them in no time without spending a fortune. Huh? -- that's interesting!
How Omnistrate can unburden you by managing a smart scaling system that works multi-cloud out of the box This is our first issue of a brand new Engineering series at Omnistrate.
Starting a business is tough, and it's no secret that many startups don't make it. Every founder faces big challenges like finding customers who love their product, making enough money to keep going, and convincing investors to believe in their vision.
Over the past year of relentless building, we’ve released a number of features in our platform that made it easy to build, access, and operate SaaS for our customers. We want to share with everyone what we have achieved so far.
Building SaaS is just one part of the challenge. Operating a SaaS is another major challenge. We will need fleet-wide observability on what tenant-level activity is happening in the fleet including any operational issues, assistance with debugging active issues like metrics and logging, ability to hot patch tenants, rollout security fixes in <24 hours. In addition, we will need reliable monitoring, recovery mechanisms to common issues with full auditing of events on what happened. In case, things are not recoverable for any reason, we will need a reliable alerting mechanism so that you can stay ahead of your customers and address the issues quickly.
One of the core tenets of SaaS is to be able to meter tenant usage and then bill your customers. However, there are a lot of challenges in handling that.
One of the core tenets of SaaS is to be secure. Security spans across many layers from controlling access with IP whitelisting or Private Link, validating access with authentication to validate identity, authorization to assign permissions to users within tenant organizations, auditing to record every activity, tenant isolation to guard against malicious tenants, regulatory requirements from securing third-party services accesses to operational processes to achieve different compliance standards, and so on.
To interact with the SaaS service, we will need to build some sort of UX (API, GUI, CLI) interaction. We will need UX for your core application and also for management operations like tenant onboarding, access control, account management, auditing, etc. For HubSpot, the core application is CRM, for MongoDB it's the database, for Zendesk it's customer service software.
SaaS applications need to be highly available, with several 9’s of SLA. We have to deal with all sorts of failures, ranging from hardware failures, software failures, hung processes, data center power outages, networking switch failures, degraded storage, to correlated failures, and so on. You will have to keep track of per-tenant SLAs not only to monitor their health and take proactive actions before their availability falls below their SLA, but also to take necessary actions to remediate common issues.