Breaking Down Cycle's Architecture
Understanding Cycle’s architecture at a high level is the first step in harnessing the full power of the platform. In this short article we will cover the ideology behind the structure and how to best maximize your use of the platform.
Cycle is a platform for orchestrating containerized workloads across cloud infrastructure. It’s delivered as a SaaS—which means it’s always up to date and can be consumed graphically or programmatically. With Cycle, you can spend more time building products and less time managing since Cycle does all the heavy lifting when deploying containers and managing infrastructure.
At the heart of everything in Cycle is the platform (shown in blue with the Cycle logo). After creating an account, you unlock the power of Cycle’s hubs. Within hubs, users have the ability to provision servers, deploy containers, create networks, and more.
Clusters are logical groupings of servers which must be set when you are provisioning your infrastructure and cannot be changed later. Commonly clusters are named “production,” “development,” or “staging,” but users can name them whatever fits their organization best.
Learn more at https://docs.cycle.io/infrastructure/clusters
Environments exist within clusters and automatically create private networks between containers enabling seamless communication across multiple geographic regions and providers, containers on a Vultr server in Los Angeles can easily communicate with containers on an Equinix Metal server in New York without any further configuration. Traditionally, an environment should mirror an application or a small project. For example, a web app where you’d have a frontend, api/backend, and a database—all three of these components would normally live within the same environment.
For further reading about environments, check out https://docs.cycle.io/environments/overview
With everything else in place, we come to containers—the focus of Cycle’s Platform. These containers are the components that make up your applications, they’re your frontends, backends, databases, and other microservices that bring your project to life. With Cycle, these containers are easily managed and painlessly imported using Docker Hub or Docker Registry.
Learn more about containers at https://docs.cycle.io/containers/overview
You can now see that Cycle’s organization is intuitive and set up to create logical groupings as well as isolation between resources. As your application grows, Cycle can easily handle more intricate systems without creating technical debt or increasing workloads.
If there are any questions regarding this structure, or anything else in Cycle, please join Slack community.