Hochverfügbarkeit für SMS Gateway einrichten

Sie können das SMS Gateway-Feature von IBM® Voice Gateway für die Ausführung in einer hoch verfügbaren Umgebung konfigurieren, indem Sie es in einem Kubernetes-Cluster in IBM Cloud Private bereitstellen und anschließend als Kubernetes-Service verfügbar machen. Die Skalierung dieser Instanzen in einem Kubernetes-Cluster ermöglicht SMS Gateway, größere Nachrichtenvolumen, Failover und rollierende Aktualisierungen zu verarbeiten.

SMS Gateway-Container starten

Stellen Sie mithilfe einer Bereitschaftsprüfung sicher, dass die Anforderungen zugestellt bereitgestellt werden, sobald der Server die Konfiguration lädt. Fügen Sie die Bereitschaftsprüfung der Bereitstellungsscriptdatei (deploy script) hinzu, wie im folgenden Beispiel gezeigt.

            "readinessProbe":{
                "exec": {
                                    "command": [
                                        "/opt/readiness.sh"
          ],
                "timeoutSeconds": 5
              }
        },

Die Variable timeoutSeconds gibt die Anzahl der Sekunden an, bevor das Zeitlimit für die Bereitschaftsprüfung überschritten wird. Der Standardwert ist 1 Sekunde. Der Mindestwert ist 1 Sekunde.

Sie können auch die Variable periodSeconds hinzufügen, um anzugeben, wie oft (in Sekunden) die Prüfung ausgeführt werden soll. Der Standardwert ist 10 Sekunden. Der Mindestwert ist 1 Sekunde. Beispiel periodSeconds: 30

Optional können Sie zum Authentifizieren der REST-API-Anforderung für die Bereitschaftsprüfung die folgenden Variablen für Benutzernamen und Kennwort der Bereitstellungsdatei (deploy script) hinzufügen.

Verwenden Sie die folgende API, um die REST-API anzufordern.

curl -X GET --user SMS_ADMIN_USERNAME:SMS_ADMIN_PASSWORD --header 'Accept: application/json' 'http://localhost:9080/sms.gateway/ready'

SMS Gateway-Container beenden

Bevor der Server gestoppt werden kann, benötigen Berichtsereignisse Zeit, um die Berichte für alle aktiven Transaktionen zu verarbeiten. Wenn die Berichterstellung aktiviert ist, können Sie dem preStop-Handle 25 Sekunden hinzufügen, damit SMS Gateway Zeit hat, um eine Sicherung zu erstellen oder um Berichterstellungsereignisse zu senden.


"lifecycle": {
                            "preStop": {
                                "exec": {
                                    "command": [
                                        "sh", "-c","sleep 25 ;"
                                    ]
                                }
                            }
                        },

SMS Gateway in IBM Cloud Private unter Red Hat Enterprise Linux bereitstellen

Wenn Sie SMS Gateway in IBM Cloud Private auf einem RHEL-Knoten (Red Hat Enterprise Linux) bereitstellen, muss SELinux (Security Enhanced Linux) inaktiviert werden, bevor Sie eine SMS Gateway-Hochverfügbarkeitsumgebung bereitstellen können.

  1. Bearbeiten Sie die SELinux-Konfigurationsdatei im Verzeichnis /etc/selinux/config und setzen Sie SELINUX=disabled wie im folgenden Beispiel gezeigt:

    SELINUX=disabled
    SELINUXTYPE=targeted
    
  2. Starten Sie das System erneut.

  3. Überprüfen Sie, ob die SELinux-Richtlinie inaktiviert ist, indem Sie den folgenden Befehl ausführen:
    bash getenforce
    

Wenn SELinux inaktiviert ist, wird eine Nachricht mit dem Hinweis Disabled ausgegeben.