(What is BrandMeister)
 
(31 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 +
{{Languages}}
 +
 
==Policy==
 
==Policy==
We suggest to use not more than one server for each country. Of course, exceptions to this rule can be discussed.
+
* We suggest using no more than one server for each country. Of course exceptions to this rule can be discussed.
 +
* Country should have more than 10 repeaters or country is far away from current Master
 +
* You have to be ready to have at least 2 TB of traffic every month (~ 5 Mbit/sec average on most cold server)
  
 
==What is BrandMeister==
 
==What is BrandMeister==
BrandMeister solution contains 3 main parts:
+
The BrandMeister solution consists of 3 main parts:
* real-time front-end: BrandMeister DMR Server
+
* Realtime frontend: BrandMeister DMR Server
* middle-ware: MySQL, Memcached, Mosquitto
+
* Supplementary and REST API frontend: Apache + PHP
* back-end
+
* Middleware and backend: Tarantool, Mosquitto, D-BUS IPC
 +
 
 +
BrandMeister does all the work of switching DMR calls and communication with repeaters or other servers as well as running specific DMR applications like [[ARS|ARS]], [[Hytera/RRS|RRS]], [[Motorola/LRRP|LRRP]], IP transport, [[Parrot]], etc. Currently we use a centralised solution based on Python to make data distribution. It processes events received from MQTT and writes data to the master database which have to be replicated to local databases of each master server.
  
BrandMeister does all work of switching DMR calls, comunication with repeaters, other servers and running specific DMR applications like [[Motorola/ARS|ARS]], [[Hytera/RRS|RRS]], [[LRRP]], IP transport, [[Parrot]], etc. It uses a MySQL database in read-only mode to read user profiles and routes. Memcached is used in read-write mode to manage routes and Mosquitto is used to send network events.
+
==Hardware specifications==
Currently we use a centralized work-around solution based on Python as the back-end. It processes events received from Mosquitto and writes data to the database.
+
The recommended server specifications are:
All servers have slave databases that have replica from master database placed near current back-end. We plan to develop the target back-end system named [[CallDirector]] but lack free time for development and are looking for collaboration in developing. CallDirector should use mesh-network technologies and an active-active replication schema to syncronize profile data.
+
* 2 vCPU
 +
* 4GB ~ 8GB memory
 +
* 10GB ~ 20GB disk space
 +
* Static Public IPv4 address assigned to the machine directly (no nat)
 +
* Minimal 100mbit up and down
 +
** at least 2TB of traffic per month
  
 
==Installation and Configuration==
 
==Installation and Configuration==
# Prepare a server: the solution requires a publically available server based on Debian x64 version 8.x with public static IP. You can use VM based on vmWare or KVM. Please do not use OpenVZ.  
+
# Prepare a server: this solution requires a publicly available server based on '''Debian x64 version 8.x with public static IP'''. You can use a VM based on vmWare or KVM. '''Please do not use OpenVZ or VirtualBox'''.
# Install and configure several components such as MySQL (+ configuration for slave replica and UTC time-zone), Apache2, php5, Memcached, Mosquitto (from Mosquitto repositories), dbus-beta for PHP5 (using pecl utility) and configure the necessary [[Network_Ports|iptables]]. We can deploy the initial configuration of BrandMeister for you.  
+
# Configure the necessary [[Network_Ports|iptables]]. '''We deploy the initial configuration of BrandMeister for you'''. '''Please do not install any package listed in previous sections'''.
# After these steps you will be able to install BrandMeister package. You need to do configuration after installation. BrandMeister will do automatic activation on the first run.  
+
# You will need some time to learn the paradigm of the system as well as how to manage and program the configuration. We will support you.
# You need some time to learn paradigm of the system, how to manage and program the configuration. We will support you.
+
  
We strongly recommend you to delegate the responsibility of deployment to our team. The server will be under your full control, we should have access to update and make fixes the system.
+
We strongly recommend that you delegate the responsibility of server deployment to our team. The server will always be under your full control, but we should have access to update and make fixes to the system.
  
Please send your questions and requests to [http://groups.yahoo.com/groups/brandmeister/ our Yahoo group] or directly to me.
+
Please send your questions and requests to our [http://groups.yahoo.com/groups/brandmeister/ Yahoo group], our [http://www.facebook.com/groups/BrandmeisterDMR/ Facebook Group] or directly to Rudy ([[PD0ZRY]]) or me.
  
 
73 de [[R3ABM]]
 
73 de [[R3ABM]]

Latest revision as of 13:43, 1 March 2019

Policy

  • We suggest using no more than one server for each country. Of course exceptions to this rule can be discussed.
  • Country should have more than 10 repeaters or country is far away from current Master
  • You have to be ready to have at least 2 TB of traffic every month (~ 5 Mbit/sec average on most cold server)

What is BrandMeister

The BrandMeister solution consists of 3 main parts:

  • Realtime frontend: BrandMeister DMR Server
  • Supplementary and REST API frontend: Apache + PHP
  • Middleware and backend: Tarantool, Mosquitto, D-BUS IPC

BrandMeister does all the work of switching DMR calls and communication with repeaters or other servers as well as running specific DMR applications like ARS, RRS, LRRP, IP transport, Parrot, etc. Currently we use a centralised solution based on Python to make data distribution. It processes events received from MQTT and writes data to the master database which have to be replicated to local databases of each master server.

Hardware specifications

The recommended server specifications are:

  • 2 vCPU
  • 4GB ~ 8GB memory
  • 10GB ~ 20GB disk space
  • Static Public IPv4 address assigned to the machine directly (no nat)
  • Minimal 100mbit up and down
    • at least 2TB of traffic per month

Installation and Configuration

  1. Prepare a server: this solution requires a publicly available server based on Debian x64 version 8.x with public static IP. You can use a VM based on vmWare or KVM. Please do not use OpenVZ or VirtualBox.
  2. Configure the necessary iptables. We deploy the initial configuration of BrandMeister for you. Please do not install any package listed in previous sections.
  3. You will need some time to learn the paradigm of the system as well as how to manage and program the configuration. We will support you.

We strongly recommend that you delegate the responsibility of server deployment to our team. The server will always be under your full control, but we should have access to update and make fixes to the system.

Please send your questions and requests to our Yahoo group, our Facebook Group or directly to Rudy (PD0ZRY) or me.

73 de R3ABM

Policy[edit]

We suggest to use not more than one server for each country. Of course, exceptions to this rule can be discussed.

What is BrandMeister[edit]

BrandMeister solution contains 3 main parts:

BrandMeister does all work of switching DMR calls, comunication with repeaters, other servers and running specific DMR applications like ARS, RRS, LRRP, IP transport, Parrot, etc. It uses a MySQL database in read-only mode to read user profiles and routes. Memcached is used in read-write mode to manage routes and Mosquitto is used to send network events. Currently we use a centralized work-around solution based on Python as the back-end. It processes events received from Mosquitto and writes data to the database. All servers have slave databases that have replica from master database placed near current back-end. We plan to develop the target back-end system named CallDirector but lack free time for development and are looking for collaboration in developing. CallDirector should use mesh-network technologies and an active-active replication schema to syncronize profile data.

Installation and Configuration[edit]

  1. Prepare a server: the solution requires a publically available server based on Debian x64 version 8.x with public static IP. You can use VM based on vmWare or KVM. Please do not use OpenVZ.
  2. Install and configure several components such as MySQL (+ configuration for slave replica and UTC time-zone), Apache2, php5, Memcached, Mosquitto (from Mosquitto repositories), dbus-beta for PHP5 (using pecl utility) and configure the necessary iptables. We can deploy the initial configuration of BrandMeister for you.
  3. After these steps you will be able to install BrandMeister package. You need to do configuration after installation. BrandMeister will do automatic activation on the first run.
  4. You need some time to learn paradigm of the system, how to manage and program the configuration. We will support you.

We strongly recommend you to delegate the responsibility of deployment to our team. The server will be under your full control, we should have access to update and make fixes the system.

Please send your questions and requests to our Yahoo group or directly to me.

73 de R3ABM