Nov 16th, 2022

Introducing Cycle's Infrastructure Abstraction Layer (IAL)

The Past Matters. Some Context:

Before I dive into the launch of Cycle’s latest feature (and it’s a big one!) I want to share some context about how we got here. Let’s rewind back to 2015: containers, at least in their modern form, had just begun to take the developer ecosystem by storm. At the same time, we at Cycle were watching everything unfold: from Docker’s meteoric rise to the first few releases of tools like Kubernetes, Rancher, and so on. While these tools all included some really exciting tech, they also required a ton of effort for installation, configuration, and ongoing maintenance -- especially once you deployed to more than a couple servers. We realized quickly that we could pair our deep experience with infrastructure with this new approach to software development and create a meaningful platform for developers to get back to writing code.

As we started developing Cycle, we initially built a SaaS-like model for the platform. Our goal was simple: get applications online as soon as possible. To do this, we owned the infrastructure, created deployment wizards, and billed purely based on container / application usage. But this is where things began to break down. We learned from our early users that, while Cycle made it really easy to get up and running, we were actually placing a low-ceiling on what our users could build. We heard a ton of feedback: users wanted to own their infrastructure, they wanted to have some choice in what servers they were deploying, and they didn’t want to pay per container -- it was too unpredictable and, in many cases, actually ended up costing more.

In 2019 our team spent eight months taking the same technical core that made up the Cycle platform and pivoting into a model that enabled developers to gain the control they needed to build real, substantive products and services. Finding the right balance between simplicity and control was critical for our mission. In November 2019, we relaunched Cycle with the ability for users to easily deploy servers from Vultr, AWS, and Equinix Metal, all that was required was an API key. Paired with CycleOS, the platform became multi-cloud immediately, and users had the control / ownership they desired but with enough simplicity and automation to stay focused on building products rather than managing servers.

Managing A Million Containers

Over the years, Vultr, Equinix Metal, and AWS have been incredibly valuable partners to work with. Today, Cycle has deployed over a million containers across these providers using a combination of bare-metal servers and virtual machines, all owned by our users themselves but fully managed and updated by Cycle. We don’t just call ourselves “the bridge between your infrastructure and code” as a quick marketing gimmick; it’s our core mission. While our users have control over their infrastructure, the Cycle platform is always there in the background providing a helping hand keeping things up to date. In fact, we push platform updates on average every 2-3 weeks! Everything from new features to kernel updates delivered onto your infrastructure automatically.

More Servers. More Locations. More ... Edge?

As we continue on our mission of being the best platform for developers to build the next generation of products and services, we continue to hear feedback inquiring about expanding our infrastructure capabilities. From requests to support Google Cloud and Azure to enabling organizations that maintain their own racks in server closets or data centers, we knew we had to do more.

Today, after months of hard work from our team, we’re excited to announce the launch of Cycle’s Infrastructure Abstraction Layer, or “IAL” for short. The concept is simple: implement a very standardized and straightforward set of API endpoints and type definitions to enable users to expand Cycle’s support into whatever infrastructure of their choice. As long as a development team can support the 13 API calls required by the IAL specification and pull CycleOS via IPXE, organizations can now take advantage of Cycle wherever they need.

The potential use cases here really excite us. Running a closet of servers at your office? No worries. Building a global edge network across a dozen cloud providers? Easy. Managing thousands of IoT devices? Theoretically, you should be able to do this as well. We’ve already heard from a number of companies using Cycle about their goals and intentions for this feature, but we know this is all just the start.

While all of Cycle’s native infrastructure providers (Vultr, AWS, and Equinix Metal) are now integrated using the IAL and available for any user to utilize, the custom integration functionality that launches today will exist in beta for the first month or two as we work to cleanup some processes and rule out any unforeseen issues.

Get Connected and Join Our Community

Interested in trying the Cycle platform? Create your account today! You can also join the Cycle Slack community to connect with our dev team and other Cycle users.