Docs

Basic Concepts

Introduction

Cycleops is a Cloud Management Platform with tools that enable teams to create self-service DevOps processes like:

  • design Stack templates,
  • execute application deployments jobs and
  • monitor Stack setups

in multiple Environments.

The core aspect of Automation in software lifecycle management is made easy with Cycleops no-code approach. The technical barrier for software engineers to benefit from best practices in DevOps workflows is made significantly lower.

Teams collaborate more efficiently over a common workspace. An intuitive web UI brings together knowledge and skills that reside across every team member.

Under the hood, Cycleops generates Ansible configurations and playbooks to make everything work like a charm.

Stack templates

A Stack template serves as the core design element, in which you compose the necessary Service configurations required for your application deployment. Using Stacks templates your design decisions can be applied on multiple Hosts or Host Groups. With Stack templates you enable a quick path to achieve Automation and Standardization for your Environments.

Stack templates are used to store the desired composition for one or more Service configurations and the respective automated tasks to instantiate Stack Setups. The order of Services that consist your Stack templates define the respective Automation tasks, as provided through Units. 

To control how your architecture design is being applied to target Hosts, you are guided to build Stack templates based on Services, at the level of:

  • Operating System and
  • Platform

Following this workflow you will have the benefit of applying the same or similar architectures to multiple use cases.

Services

Service is the set of configuration settings required to serve your Stack template specification. Each service is applied over one Unit.

Configuration Management can be achieved at the Service level. Service settings provide you quick access to core configuration parameters for every Unit. Following this approach you avoid editing multiple configuration files and respective automation scripts.

Units

Units are the core components used in your Stack templates compositions.

Units include all the required tasks required to deploy common Open Source Software tools of the following Categories:

  • Operating System
  • Platform

Units are available in the Catalog and include all the required Automation tasks to make your application deployments operational based on industry best practices. Essentially, the platform includes the necessary Ansible roles to implement deployment and configuration tasks based on your custom needs.

Environments

Environments help you isolate resources for different project types or/and project stages based on your workflows.
To separate resources into Environments, consider things like:

  • hosted application
  • product line
  • usage type (e.g. production, staging or development)

You need to create one Environment at least to associate target Hosts used in application deployment workflows.

SSH Keys

SSH keys are the recommended way of providing access from Cycleops to your target Hosts, in order to fulfill Automation tasks, using Ansible engine in the backstage.

Inventory

Hosts and Host Groups are the core elements representing your Inventory of Cloud resources.

Hosts

Hosts are the basic deployment element used by Cycleops to instantiate your Stack templates to Stack Setups. In order to register your Cloud servers with Cycleops, you need to provide user credentials to allow SSH connectivity from Cycleops to your target Hosts.

Hosts are the basic resource used as target for application deployment jobs. Your Hosts might be any of the following types:

  • provisioned cloud instances
  • hosted cloud servers or
  • self-managed virtual machines

The most common use case scenario would be to add a Host, that is already provisioned from your Cloud Provider.
For instance, use as Host an AWS EC2 instance to which you know the user credentials for SSH access.

Host registration

Host registration is a required step to use your host as target for deployments.
The Host registration process is managed by Cycleops. You need to provide the following input:

  • public IP Address, your target Host must be accessible from the Internet
  • SSH user credentials, you need to provide either username/password or username/SSH key. Make sure to provide access of a user with “user add” permissions.

to register your target Host(s) with Cycleops.
After Host registration success, a user named “cycleops” will be created, and your unique SSH key will be copied in your target Host(s).

ATTENTION: Use ‘clean slate’ machines for your target Hosts to avoid any unwanted results. Cycleops executes deployment jobs on Hosts without prior knowledge of any existing setup on those machines.

Jump Host

Jump Host(s) can be created to further add target Hosts that are not accessible from the Internet.

Add Hosts with Private networking as provided by your Cloud Provider by setting one of your Hosts as Jump Hosts.
Jump Hosts must have a Public IP Address, and that should be used during the Host registration with Cycleops.

Host Groups

Host Groups is a way to organize Hosts as one unity.

Manage any number of Hosts grouped by common system or application properties like:

  • architecture components (e.g. web servers, database, operations)
  • operating system flavor and version
  • geographic location

and other suitable characteristics for your custom needs.

Stack Setups

Stack Setups act as Stack template instances, which carries your workloads after your Service configurations have been applied to the associated target Hosts. This way, Stack Setups are the essential outcome of using the Ansible engine, managed by Cycleops, on your target Hosts.

Stack Setups combine your existing Stack templates with available Hosts. To greatly reduce delivery time, design once and deploy multiple times, with a single action, for cases like:

  • application deployment
  • configuration change
  • setup verification

No code approach to the above cases provides your team with all the necessary tooling to collaborate over Cycleops self-service DevOps approach.

Team

Organizations can define policies to abide with, when various teams and their members collaborate on the same central platform for executing DevOps processes.

Users

Users can be other team members from your organization, so that you would be able to utilize every collaboration aspect within your DevOps processes.

Your Cycleops Account is associated with only one Account Owner. The Account Owner is the default user when you sign up with Cycleops CMP.

User Groups

User Groups offer the ability, to Cycleops CMP administrators, to manage multiple Users at once.

Contacts

Contacts are defined as communication points, to get alerts coming from Cycleops Watch, the built-in monitoring service.

Third Party Tokens

Third Party Tokens are the points where you can allow integrations of Cycleops with external Cloud Providers, like AWS or others.

Third Party Tokens allow Cycleops to access AWS and/or other providers, on your behalf.

Please make sure that:

  • Cycleops is assigned to a new user account, at your Cloud Provider’s side.
  • Access permissions are specifically defined for your intended use, to avoid unwanted costs and/or Cloud service behavior.

This feature is in Preview status and its not really utilized with customer Accounts.