Roles Description and Installation

Roles Description and Installation#

Multi-Server is the only supported method of installation in a production environment.

Please review carefully this sections before attempting to install.

Carbonio is made of Roles#

A Carbonio infrastructure is created with the installation of some Roles.

A Role is a Carbonio functionality that is considered atomic and consists of one or more packages.

The modular nature of Carbonio

As we will see, it’s possible to install a single role on a dedicated node or group multiple roles according to affinity rules.

Although this is not a suggested or supported scenario, it would be technically possible to install almost all Carbonio Roles on a single virtual machine.

The possibility of installation by roles allows you to design architectures that precisely correspond to the requirements and purposes of your infrastructure.

The roles of Carbonio#

We can group the available Carbonio Roles into 3 macro categories:

  • Infrastructure Roles, which are mandatory in any Carbonio installation

  • Service Roles broaden the functionality provided by Carbonio

This is the list of roles that make up a Carbonio installation.

Note

Postgres, Pgpool, Grafana, Zookeper, and Kafka are third-party software that are installed from their respective official repositories.

Mesh and Directory

Type of Role: Infrastructure

Packages:

  • service-discover-server

  • carbonio-directory-server

Database

Type of Role: Infrastructure

Packages:

  • postgresql

Database Connector

Type of Role: Infrastructure

Packages:

  • pgpool2

  • carbonio-files-db

  • carbonio-mailbox-db

  • carbonio-docs-connector-db

  • carbonio-tasks-db

  • service-discover-agent

Proxy

Type of Role: Infrastructure

Packages:

  • carbonio-proxy

  • carbonio-webui

  • carbonio-files-ui

  • carbonio-chats-ui

  • carbonio-user-management

  • carbonio-tasks-ui

  • carbonio-avdb-updater

  • service-discover-agent

MTA AV/AS

Type of Role: Infrastructure

Packages:

  • carbonio-mta

  • service-discover-agent

Mailstore & Provisioning

Type of Role: Service role

Packages:

  • carbonio-advanced

  • service-discover-agent

Files

Type of Role: Service role

Packages:

  • carbonio-files

  • service-discover-agent

Docs & Editor

Type of Role: Service role

Packages:

  • carbonio-docs-connector

  • carbonio-docs-editor

  • service-discover-agent

Preview

Type of Role: Service role

Packages:

  • carbonio-preview

  • service-discover-agent

Tasks

Type of Role: Service role

Packages:

  • carbonio-tasks

  • service-discover-agent

Video Server

Type of Role: Service role

Packages:

  • carbonio-videoserver

  • carbonio-videoserver-recorder

  • service-discover-agent

Monitoring

Type of Role: Service role

Packages:

  • carbonio-prometheus

  • grafana

  • service-discover-agent

Event Streaming

Type of Role: Service role

Packages:

  • ZooKeeper

  • Apache Kafka

Directory Replica

Type of Role: Service role

Packages:

  • carbonio-directory-server

How to install Roles#

Before presenting each Role and the tasks necessary for their correct installation, please review these important remarks:

  • While the overall procedure is the same for both Ubuntu and RHEL 8, the actual commands and file paths may differ on the two operating system, so pay attention that you execute the correct command on the correct files and operating system. The commands that differ are separated as follows. Click the Ubuntu or RHEL tab according to the Operating System on which you are installing Carbonio.

    # <command to be executed on Ubuntu systems>
    
    #  <command to be executed on Red Hat systems>
    
  • All the commands that are mentioned in this installation procedure must be executed as the root user.

  • In case you experience some issues during the installation, please refer to Section System Troubleshooting, in which you can find helpful commands.

  • When the installation process has successfully finished, you can access Carbonio's GUI using a browser: directions can be found in Section Access to the Web Interface.

  • You must start with the installation of the the Database Role, followed by the Mesh and Directory Role. Then you can proceed with the other infrastructure Roles and finally with any other Role you need in your installation.