Benutzer-Werkzeuge

Webseiten-Werkzeuge


openqrm_-_cluster

openQRM - Cluster

Probleme beim Clusterschwenk

IPs im Cluster:

  1. Cluster-IP: 192.168.1.10
  2. Knoten-01: 192.168.1.11
  3. Knoten-02: 192.168.1.12

Wenn zuerst der Knoten mit der IP 192.168.1.12 Master war und dann der Knoten mit der IP 192.168.1.11 Master wurde, wird der Cluster nur dann funktionieren, wenn in der Spalte resource_openqrmserver der Tabelle resource_info die Cluster-IP 192.168.1.10 steht!

[root@openqrm01:~]# echo "SELECT resource_id,resource_openqrmserver,resource_ip,resource_hostname FROM resource_info;"|mysql -t openqrm
+-------------+------------------------+---------------+-------------------+
| resource_id | resource_openqrmserver | resource_ip   | resource_hostname |
+-------------+------------------------+---------------+-------------------+
|           0 | 192.168.1.12           | 192.168.1.12  | openqrm01         |
|          10 | 192.168.1.12           | 192.168.1.40  | kvm01             |
|          19 | 192.168.1.12           | 192.168.1.235 | cloud-6-1-x       |
|          15 | 192.168.1.12           | 192.168.1.234 | cloud-48-1-x      |
|           8 | 192.168.1.12           | 192.168.1.241 | cloud-17-1-x      |
|           7 | 192.168.1.12           | 192.168.1.245 | cloud-13-1-x      |

In diesem Beispiel lief es falsch.

Problembehebung

  1. die DB-Einträge berichtigen;
  2. man muss dafür sorgen, dass openQRM beim Start einer Appliance hier die Cluster-IP einträgt und nicht die Host-IP (siehe die Variable "OPENQRM_SERVER_IP_ADDRESS" in der Datei "/usr/share/openqrm/include/openqrm-server-functions");
    • der Fehler kann nur dann auftreten, wenn die Variable $OPENQRM_SERVER_INTERFACE in der Datei /usr/share/openqrm/etc/openqrm-server.conf leer ist oder hier ein falscher NIC-Name eingetragen wurde;
    • weiterhin müssen (für einen erfolgreichen Start von openQRM) die folgenden beiden IP-Adressen identisch sein:
      1. die IP-Adresse, die auf dem NIC konfiguriert ist, welches in der Variable $OPENQRM_SERVER_INTERFACE in der Datei /usr/share/openqrm/etc/openqrm-server.conf (z.B. "br0:0") konfiguriert wurde;
      2. die IP-Adresse, die in der Datei /usr/share/openqrm/tftpboot/pxelinux.cfg/default (z.B. "openqrm=192.168.1.10") steht;
  3. wieder einhängen aller Appliances;

die DB-Einträge berichtigen

[root@openqrm01:~]# echo "UPDATE resource_info SET resource_openqrmserver='192.168.1.10' where resource_openqrmserver='192.168.1.12';"|mysql -t openqrm
[root@openqrm01:~]# echo "UPDATE resource_info SET resource_ip='192.168.1.10' where resource_ip='192.168.1.12';"|mysql -t openqrm

Datei für TFTP-Default berichtigen

[root@openqrm01:~]# sed -i 's/192.168.1.12/192.168.1.10/' /usr/share/openqrm/tftpboot/pxelinux.cfg/default

wieder einhängen aller Appliances

Leider kennen die Appliances jetzt nicht mehr die IP des aktiven openQRM-Management-Hosts, das muss man

der Appliance die Cluster-IP von openQRM bekannt machen:

[root@openqrm01:~]# vi /var/openqrm/openqrm-resource.conf
...
resource_openqrmserver="192.168.1.10"
...

den openqrm-client restarten, damit er sich bei openQRM wieder anmelden kann:

[root@openqrm01:~]# /etc/init.d/openqrm-client restart
/home/http/wiki/data/pages/openqrm_-_cluster.txt · Zuletzt geändert: von 127.0.0.1