BSD Ports

databases/percona-orchestrator 3.2.6.12_6 DragonFly

Replication topology manager for MySQL

System
DragonFly
Repository
DPorts
Maintainer
[email protected] (as in FreeBSD)
License
APACHE20
Categories
databases
Package size
4570.1 KiB, 15564.0 KiB installed

Description

Orchestrator is a replication topology manager for MySQL.

Features include:

* The topology and status of the replication tree is automatically detected and monitored. * Either a GUI, CLI or API can be used to check the status and perform operations. * Supports automatic failover of the master, and the replication tree can be fixed when servers in the tree fail - either manually or automatically. * It is not dependent on any specific version or flavor of MySQL (MySQL, Percona Server, MariaDB or even MaxScale binlog servers). * Orchestrator supports many different types of topologies, from a single master -> slave to complex multi-layered replication trees consisting of hundreds of servers. * Orchestrator can make topology changes and will do so based on the state at that moment; it does not require a configuration to be defined with what corresponds to the database topology. * The GUI is not only there to report the status - one of the cooler things you can do is change replication just by doing a drag and drop in the web interface (of course you can do this and much more through the CLI and API as well).

In the other systems

SystemPortVersion
DragonFlydatabases/percona-orchestrator3.2.6.12_6
FreeBSDdatabases/percona-orchestrator3.2.6.16_22
HardenedBSDdatabases/percona-orchestrator3.2.6.16_20
GhostBSDdatabases/percona-orchestrator3.2.6.16_20

Install

Binary package:

pkg install percona-orchestrator

From DPorts:

cd /usr/dports/databases/percona-orchestrator && make install clean

Dependencies

Run dependencies 4

No port depends on this one.

Configuration

No options to configure.

Service scripts
none

Message after installing

#### Setup backend MySQL server

Setup a MySQL server for backend, and invoke the following:

CREATE DATABASE IF NOT EXISTS orchestrator;
CREATE USER 'orchestrator'@'127.0.0.1' IDENTIFIED BY 'orch_backend_password';
GRANT ALL PRIVILEGES ON `orchestrator`.* TO 'orchestrator'@'127.0.0.1';

Orchestrator uses a configuration file, located in:
/usr/local/etc/orchestrator/orchestrator.conf.json

Edit orchestrator.conf to match the above as follows:

  ...
  "MySQLOrchestratorHost": "127.0.0.1",
  "MySQLOrchestratorPort": 3306,
  "MySQLOrchestratorDatabase": "orchestrator",
  "MySQLOrchestratorUser": "orchestrator",
  "MySQLOrchestratorPassword": "orch_backend_password",
  ...

#### Grant access to orchestrator on all your MySQL servers

CREATE USER 'orchestrator'@'orch_host' IDENTIFIED BY 'orch_topology_password';
GRANT SUPER, PROCESS, REPLICATION SLAVE, RELOAD ON *.* TO 'orchestrator'@'orch_host';
GRANT SELECT ON mysql.slave_master_info TO 'orchestrator'@'orch_host';
GRANT SELECT ON ndbinfo.processes TO 'orchestrator'@'orch_host'; -- Only for NDB Cluster

Replace `orch_host` with hostname or orchestrator machine (or do your
wildcards thing). Choose your password wisely. Modify the configuration file to
match:

  "MySQLTopologyUser": "orchestrator",
  "MySQLTopologyPassword": "orch_topology_password",

By default, orchestrator listens on 127.0.0.1:3000 and is configured to be
read-only.  Please update the configuration file if you would like to change
this.