Home > docs > getting started > Concord Overview
Concord is a workflow server. It is the orchestration engine that connects different systems together using scenarios and plugins created by users.
Check out the overview document for more information about features and benefits of Concord.
Processes are the main concept of Concord. A process is an execution of Concord Flows in an isolated environment.
A process can run in a project, thus sharing configuration and resources (such as the KV store) with other processes in the same project.
Processes can be suspended (typically using a form and resumed. While suspended processes are not consuming any resources apart from the DB disk space. See the Process Overview section for more details about the lifecycle of Concord processes.
A project is a way to group up processes and use shared environment and configuration.
Concord provides an API and the plugin to work with secrets such as:
Secrets can optionally be protected by a user-provided password.
Concord can use an Active Directory/LDAP server or the local user store for authentication. Team-based authorization can be used to secure various resources.
Organizations are, basically, namespaces to which resources such as projects, secrets, teams and others belong to.
Concord consists of several components. The four main components are:
The Server is the central component. It provides the API which is used to control processes, manage entities such as projects and secrets, etc.
A minimal Concord installation contains at least one Server. Multiple servers can run in active-active or active-passive configurations.
The Console provides user interface for managing processes, projects, secrets and other entities.
Read more about the console here.
The Agent is responsible for process execution. It receives workload from Server and, depending on the configuration of the job, starts processes in separate JVMs and/or Docker containers.
Depending on the configuration a single agent can execute one or many jobs simultaneously.
A single Concord installation can have hundreds of Agents. It is also possible
to have Agents with different capabilities (e.g. running on different hardware)
connected to the single Concord instance. Which is useful when you need to run
some resource-intensive processes such as Ansible with lots of forks
.
Concord uses PostgreSQL (10.4 or higher) to store process state, logs and entities such as projects and secrets.