Cluster

ManDal

Active Member
Aug 28, 2019
13
3
43
40
Schweiz
www.onesystems.ch
Hallo zusammen
Ich betreibe einen PMG Cluster mit zwei Servern, jetzt steht aber schon seit bald zwei Tagen bei einem Node das der immer noch Synchronisiert:

Code:
root@mx1:~# pmgcm status
NAME(CID)--------------IPADDRESS----ROLE-STATE---------UPTIME---LOAD----MEM---DISK
mx1(1)               xxx.xxx.xxx.xxx  master S     1 day 23:43   0.07    67%    28%
mx2(2)               xxx.xxx.xxx.xxx  node   A     1 day 23:15   0.17    48%    14%

Weiss jemand woran das liegt?

Grüsse
ManDal
 
hi,

siehst du irgendwas interessantes in journal oder syslog?
 
Die beiden Server hatten bei der Systemzeit mehr wie 7 Sekunden unterschied, blöd ist einfach das ich jetzt folgenden Fehler erhalte:
Code:
Feb  4 16:24:14 mx1 pmgmirror[17738]: starting cluster syncronization
Feb  4 16:24:14 mx1 pmgmirror[17738]: database sync 'mx2' failed - DBD::Pg::st execute failed: ERROR:  duplicate key value violates unique constraint "cmailstore_pkey"#xxxxxxx:  Key (cid, rid)=(2, 7796) already exists. at /usr/share/perl5/PMG/DBTools.pm line 1049.
Feb  4 16:24:14 mx1 pmgmirror[17738]: cluster syncronization finished  (1 errors, 0.06 seconds (files 0.00, database 0.06, config 0.00))

Habe jetzt den mx2 nochmals mit pmgcm delete 2 gelöscht und neu hinzugefügt....

Mal abwarten ob der Sync jetzt durchläuft...
 
Habe das ganze jetzt über nacht laufen gelassen und jetzt sind immer beide permanent auf Syncing
Code:
root@mx1:~# pmgcm status
NAME(CID)--------------IPADDRESS----ROLE-STATE---------UPTIME---LOAD----MEM---DISK
mx1(1)               xxx.xxx.xxx.xxx  master S    2 days 18:39   0.10    68%    28%
mx2(3)               xxx.xxx.xxx.xxx  node   S    2 days 18:11   0.17    50%    14%

Im Syslog finde ich wieder den folgenden Fehler:
Code:
Feb  5 09:22:14 mx1 pmgmirror[17738]: starting cluster syncronization
Feb  5 09:22:14 mx1 pmgmirror[17738]: database sync 'mx2' failed - DBD::Pg::st execute failed: ERROR:  duplicate key value violates unique constraint "cmailstore_pkey"#xxxxxxx:  Key (cid, rid)=(3, 8453) already exists. at /usr/share/perl5/PMG/DBTools.pm line 1049.
Feb  5 09:22:14 mx1 pmgmirror[17738]: cluster syncronization finished  (1 errors, 0.04 seconds (files 0.00, database 0.04, config 0.00))

Kann man den alten Key irgend wie entfernen?
 
Bitte noch die Version posten.

pmgversion -v
 
Entschuldige sollte die aktuellste Version sein:
Code:
proxmox-mailgateway: 6.1-1 (API: 6.1-4/3187ac10, running kernel: 5.3.13-2-pve)
pmg-api: 6.1-4
pmg-gui: 2.1-5
pve-kernel-5.3: 6.1-2
pve-kernel-helper: 6.1-2
pve-kernel-5.3.13-2-pve: 5.3.13-2
libarchive-perl: 3.3.3-1
libjs-extjs: 6.0.1-10
libjs-framework7: 4.4.7-1
libpve-apiclient-perl: 3.0-2
libpve-common-perl: 6.0-10
libpve-http-server-perl: 3.0-3
libxdgmime-perl: 0.01-5
lvm2: 2.03.02-3
pmg-docs: 6.1-3
proxmox-mini-journalreader: 1.1-1
proxmox-spamassassin: 3.4.3-2
proxmox-widget-toolkit: 2.1-2
pve-firmware: 3.0-4
pve-xtermjs: 4.3.0-1
 
auch die er
database sync 'mx2' failed - DBD::pg::st execute failed: ERROR: duplicate key value violates unique constraint "cmailstore_pkey"#xxxxxxx: Key (cid, rid)=(3, 8453) already exists. at /usr/share/perl5/PMG/DBTools.pm line 1049. Feb 5 09:22:14 mx1 pmgmirror[17738]: cluster syncronization finished (1 errors, 0.04 seconds (files 0.00, database 0.04, config 0.00))

im postgresql log sollte potentiell ein hinweis stehen:
/var/log/postgresql/postgresql-11-main.log
 
Da habe ich immer folgende Meldungen:
Code:
2020-02-07 10:13:14.189 CET [21438] root@Proxmox_ruledb ERROR:  duplicate key value violates unique constraint "cmailstore_pkey"
2020-02-07 10:13:14.189 CET [21438] root@Proxmox_ruledb DETAIL:  Key (cid, rid)=(2, 8102) already exists.
2020-02-07 10:13:14.189 CET [21438] root@Proxmox_ruledb STATEMENT:  INSERT INTO CMailStore(cid,rid,time,qtype,bytes,spamlevel,info,sender,header,file) VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10)

Denke aber das ich die Konfiguration sichere und die beiden Server komplett neu aufsetze, irgend etwas stimmt da nicht wirklich.
 
Auch eine Möglichkeit - alternativ sollte es auch funktionieren node 2 aus dem cluster zu entfernen und danach nochmal hinzuzufügen.