Verbinden von 3CX mit einem eigenständigen PostgreSQL & Grafana
Einführung
Diese Anleitung beschreibt einen kompakten Prozess zum Verbinden Ihres 3CX-Telefonsystems mit einer eigenständigen PostgreSQL-Datenbank zur Verwendung mit Grafana zur Datenvisualisierung und Berichterstattung.
Schritt 1: Erstellen Sie eine PostgreSQL
- Installieren von PostgreSQL
- Windows: Laden Sie das Installationsprogramm von https://www.postgresql.org/download/windows/ herunter und folgen Sie dem Assistenten.
- Linux (Debian): sudo apt update && sudo apt install -y postgresql Verify cluster: pg_lsclusters. Create if needed: sudo pg_createcluster <major-version> main --start.
Merken Sie sich das Postgres-Superuser-Passwort und die Installationsdetails (Standardport 5432).
- Erstellen Sie einen PostgreSQL-Benutzer und eine PostgreSQL-Datenbank
- Windows: psql öffnen
- Führen Sie dann SQL aus:
CREATE ROLE your_user WITH LOGIN PASSWORD 'your_password';
CREATE DATABASE your_db OWNER your_user;
- Linux (Debian):
sudo -u postgres createuser <username> -P
sudo -u postgres createdb <dbname> -O <username>
Ersetzen Sie nach Bedarf your_user/username, your_password, und your_db/dbname
- Remoteverbindungen zulassen
- Editieren von postgresql.conf:
- Windows: Normalerweise in C:Program FilesPostgreSQL<version>datapostgresql.conf. Setze listen_addresses = '*'.
- Linux (Debian): Normalerweise in/etc/postgresql/<version>/main/postgresql.conf. Setze listen_addresses = '*'.
- Editieren von pg_hba.conf:
- Windows: Normalerweise in C:Program FilesPostgreSQL<version>datapg_hba.conf.
Add: host your_db your_user <allowed_ip>/<cidr> scram-sha-256 - Linux (Debian): /etc/postgresql/<version>/main/pg_hba.conf.
Add: host <dbname> <username> <allowed_ip>/<cidr> scram-sha-256
Ersetzen Sie <allowed_ip>/<cidr>, um den Zugriff bei Bedarf einzuschränken, z. B. 0.0.0.0/0 für jede IP.
- Starten Sie den PostgreSQL-Dienst neu:
- Windows: net stop postgresql-x64-<version>, dann net start postgresql-x64-<version> (als Administrator).
- Linux (Debian): sudo systemctl restart postgresql
- Datenbankberechtigungen erteilen
- Windows & Linux: Öffne psql (Windows) oder sudo -u postgres psql (Linux) und folgendes ausführen SQL :
GRANT ALL PRIVILEGES ON DATABASE your_db TO your_user;
Verwenden Sie Ihre konfigurierte Datenbank und Benutzernamen.
Alternativ: Schnellkonfiguration per Skript
- Linux: Als root, ausführen: sudo bash -c "$(wget -qO- https://downloads-global.3cx.com/downloads/misc/postgresql/linuxwizard.zip)" Folgen Sie den Anweisungen des Assistenten.
- Windows: Installieren Sie PostgreSQL (siehe Windows-Installationsschritte), öffnen Sie PowerShell als Administrator und führen Sie aus: https://downloads-global.3cx.com/downloads/misc/postgresql/windowswizard.zip und folgen Sie den Anweisungen des Assistenten.
Bitte beachten Sie, dass diese Skripte möglicherweise nicht aktiv gepflegt werden und ihre Verwendung auf Ihre eigene Verantwortung erfolgt. Seien Sie vorsichtig, wenn Sie Skripte mit Administratorrechten ausführen.
Schritt 2: Konfigurieren Sie den Datenkonnektor auf 3CX
- Navigieren Sie in 3CX zu Adminkonsole > Integrationen > Datenkonnectoren
- Wählen Sie „PostgreSQL-Datenbank“ und geben Sie Folgendes ein:
- Host: Die IP-Adresse oder der FQDN (falls verfügbar) des Hosts, auf dem Sie PostgreSQL installiert haben.
- Port: Der Datenbankport (Standard: 5432).
- Database Name: Der Name der Datenbank, die Sie in Schritt 1 erstellt haben.
- Username: Der Benutzername des neuen Benutzers, den Sie in Schritt 1 erstellt haben.
- Password: Das Passwort, das Sie für Ihren neuen Benutzer konfiguriert haben
- Frequency: Legen Sie die Häufigkeit für die Datenübertragung von der PBX zu Ihrem PostgreSQL fest.
- Speichern Sie die Konfiguration und klicken Sie auf Ihrer Telefonanlage auf die Schaltfläche „Testen“, um die Verbindung zur PostgreSQL-Datenbank zu überprüfen und die Erfolgsmeldung zu bestätigen. Sollte der Test fehlschlagen, überprüfen Sie Host, Port, Datenbanknamen, Benutzernamen und Passwort. Stellen Sie außerdem sicher, dass alle Firewalls auf dem PostgreSQL-Host oder -Netzwerk Verbindungen von Ihrer Telefonanlage-IP zulassen.
Bitte beachten: Sie benötigen eine 16SC+-Lizenz, um den 3CX Data Connector zu verwenden.
Schritt 3: Grafana mit der PostgreSQL-Instanz verbinden
- Melden Sie sich bei Ihrer Grafana-Instanz an (z. B. grafana.com oder Ihr selbst gehostetes Grafana).
- Gehen Sie zum Grafana-Konfigurationsmenü (Zahnradsymbol), klicken Sie auf „Data Sources“ und dann auf „Datenquelle hinzufügen“.
- Suchen Sie nach „PostgreSQL“ und wählen Sie es aus.
- Konfigurieren Sie die Datenquelle unter „Verbindung“ und geben Sie die folgenden Details ein:
- Host: Geben Sie die IP oder den FQDN und den Port Ihres PostgreSQL im Format ein: IP/FQDN:5432
- Database: Der Name der Datenbank, die Sie in Schritt 1 erstellt haben.
- User: Der Benutzername des neuen Benutzers, den Sie in Schritt 1 erstellt haben
- Password: Das Passwort, das Sie für Ihren neuen Benutzer konfiguriert haben
- Klicken Sie auf „Save & test“ und überprüfen Sie, ob die Meldung „Data source is working“ angezeigt wird. Sollten Fehler auftreten, überprüfen Sie die Verbindungsdetails und die SSL-Konfiguration. Stellen Sie außerdem sicher, dass alle Firewalls auf dem PostgreSQL-Host oder -Netzwerk Verbindungen von Grafana-IPs zulassen.
Siehe auch
- 3CX mit Google BigQuery und Grafana verbinden
- 3CX mit AWS RDS, PostgreSQL und Grafana verbinden
Letztes Update
Dieses Dokument wurde zuletzt am 10. Juni 2026 aktualisiert.
