Basic Concepts
Provider
As the first step to start an infrastructure is to decide which cloud provider to use (AWS, Azure or GCP, etc.), in SleakOps a Provider represents the selection of one of this cloud providers, the credentials granted to SleakOps to it and the set of accounts created in order to properly manage the infrastructure. It is composed by an Organizative Unit on AWS and its accounts.
Cluster
A Kubernetes cluster is a distributed system for managing containerized applications. It consists of nodes (physical or virtual machines) running pods (groups of one or more containers). A central control plane, composed of various software components, coordinates the activity of the nodes and manages the lifecycle of the pods.
Environment
In computing, an environment or namespace typically refers to an isolated area where specific resources, applications, or services operate independently. This isolation enhances organization, security, and resource management within larger systems or platforms.
Project
A project is a collection of files and code managed using Git, representing a codebase within a git repository.
Service
A service is a fundamental unit of functionality that can be independently deployed and managed within an environment. Services perform specific tasks or processes, interacting with other services via defined interfaces. They are scalable and modular, forming the building blocks of architectures like microservices and service-oriented architectures (SOA), allowing for flexible and efficient system development.
Dependency
A dependency is an external resource or service that an application requires to function properly in a cloud environment. These dependencies include various infrastructure components such as relational databases, storage services, and caches. Each dependency is associated with provider-specific services, ensuring seamless integration and operation within the cloud platform.
Var Group
In Sleakops, a variable group (or var group) is a set of key-value pairs, similar to a dictionary, that provides configuration settings for services within a specific project and environment.
Build
A build is the process of creating a new version of your application's code as a container image from a Dockerfile, incorporating the compiled code and necessary dependencies.
Deploy
In technology, to deploy means to release a software application, service, or update to a production environment, making it available for use by end-users.