Installation¶
Agora is installed from packages in the Flussonic repository. There are two of them, and choosing between them is choosing the machine's role.
agora— the whole box: the control plane, the panel and a streamer on one machine. It is installed first, and on a small installation it is the only one.agora-base— a cluster server: the streamer alone, with no panel and no database. It is installed on every machine added to the control plane.
The agora package pulls agora-base in: the box is that same server plus what makes it a control plane.
How to get from a clean machine to a playing broadcast in one go is on the Quick start page. What follows is what a real installation needs.
What installing the box does¶
While installing, the agora package:
- asks for the licence key and puts it in
/etc/agora/license.txt; - creates the
agorarole and database; - generates the database password and the administrator password and writes them to
/etc/agora/secrets.env(mode0600, owner root); - starts
agora.service, which applies the database schema on its first run.
The passwords are not printed to the terminal — they are read from the file. An upgrade or a reinstall reuses the secrets already written.
What to do with those passwords next is on Administrators: the static credentials stay as the break-glass entrance, and the work is done under named accounts.
What installing a node does¶
The agora-base package asks what this machine is going to be:
- A database address — if the machine raises a control plane of its own over an existing database.
- Join a cluster — if not: the installation then asks for the control plane's address and a join token.
The token is taken in the panel, in Cluster → Streamers, with the Allow joining button; the window lasts an hour (see Streamers). After the installation the node comes to the control plane itself and appears in the list.
A machine that is already configured is not asked again: the address and the token are written once, and a package upgrade does not repeat the question.
Where things are kept¶
/etc/agora/— the box's settings: the licence file andsecrets.env./var/lib/agora/— the working state.agora.service— the systemd unit; the service is stopped and started with it.
There are deliberately no files holding the cluster's configuration here: the configuration — broadcasts, templates, zones, rights — lives in the control plane's database and is edited in the panel. A machine keeps only what makes it that machine.
Upgrading¶
An upgrade is ordinary apt:
apt update && apt install --only-upgrade agora
In a cluster the control plane is upgraded first, the nodes after it. The control plane tolerates nodes older than itself; the other way round is not guaranteed.
An upgrade does not re-ask for the licence and does not touch the secrets. The database schema is brought into line when the new version first starts.
What the network has to allow¶
- Viewers need access to the streamers, not to the control plane: the control plane decides where to send them, but the broadcast comes from a server.
- Nodes need access to the control plane: without it a node keeps working but receives no new assignments.
- The installation needs outbound access to activate the licence.