ThingWorx Apps Erweiterung für eine Hochverfügbarkeits-aktiv-aktiv-Umgebung importieren
ThingWorx Apps kann auf einem ThingWorx System, das als Hochverfügbarkeits-aktiv-aktiv-Umgebung konfiguriert ist, mit der folgenden Konfiguration ausgeführt werden:
• Hochverfügbarkeits-aktiv-aktiv-Installation mit zwei Servern
• Ausführung mit Apache Ignite, eingebettet in die ThingWorx Plattform, anstatt Ignite eigenständig auszuführen
Die folgende Grafik zeigt die Cluster-Konfiguration für dieses Szenario.
Die folgenden Komponenten können Teil einer HA-Bereitstellung sein:
• Benutzer und Geräte – Keine Rolle bei der HA-Funktionalität. Aus ihrer Perspektive ändert sich nichts. Sie verwenden immer dieselben URLs und dieselbe IP-Adresse, auch wenn sich der primäre ThingWorx Server geändert hat.
• Firewalls – Keine HA-Funktion und als optional anzusehen. Firewalls werden häufig platziert, um Sicherheitsanforderungen zu implementieren.
• Lastenausgleichsmodule – Lastenausgleichsmodule verwalten eine virtuelle IP-Adresse für die Anwendung, die sie unterstützen. Der gesamte Datenverkehr, der an diese virtuelle IP-Adresse weitergeleitet wird, wird an die aktive Anwendung geleitet, die ihn empfangen kann. In diesem Szenario wird HAProxy verwendet.
• ThingWorx Connection Servers – Empfängt Web Socket-Verkehr von Assets und leitet ihn an ThingWorx Platform weiter. Die Verbindungsserver können in einer Cluster-Konfiguration ausgeführt werden. Sobald ein Asset an einen bestimmten Connection Server weitergeleitet wird, sollte es immer denselben Connection Server verwenden. Wenn dieser Server offline geschaltet wird, sollte das Asset zu einem anderen verfügbaren Connection Server umgeleitet werden.
• ThingWorx Foundation – Empfängt den gesamten Benutzer- und Asset-Datenverkehr.
• ThingWorx Repositories – Dies sind erforderliche Speicherorte wie ThingworxPlatform, ThingworxStorage und ThingworxBackupStorage sowie zusätzliche Speicherorte, die zur Unterstützung Ihrer Implementierung hinzugefügt wurden. Bei einer Cluster-Umgebung müssen sich die Speicherordner in einem allgemeinen Speicherort, auf den alle ThingWorx Server Zugriff haben, befinden.
• Apache ZooKeeper – ZooKeeper ist ein zentraler Koordinationsdienst, der von ThingWorx Connection Server und Ignite für die Diensterkennung, Singleton-Auswahl und verteilte Koordination verwendet wird.
• Apache Ignite – Ignite bietet einen verteilten Speichercache für das Teilen von Status über die Server im Cluster hinweg. In dieser Konfiguration ist Ignite in der ThingWorx Plattform eingebettet und nicht separat installiert.
• PostgreSQL – Für eine HA-Konfiguration arbeitet PostgreSQL über zwei oder mehr Serverknoten in einer Hot-Standby-Konfiguration. Ein Knoten empfängt den gesamten Schreibdatenverkehr, und einer der anderen Knoten kann den gesamten Lesedatenverkehr empfangen. Die Streaming-Replikation wird zwischen allen Knoten aktiviert, damit jeder Knoten stets auf dem neuesten Stand ist.
• pgpool-II – Wird nur in PostgreSQL-HA-Konfigurationen verwendet. pgpool-II-Knoten empfangen die ThingWorx Anfragen (Lese- und Schreibvorgänge) und leiten sie an den entsprechenden PostgreSQL-Knoten weiter. Sie überwachen auch die Integrität jedes PostgreSQL-Knotens und können Failover-Aufgaben und Neuzuweisungen initiieren, wenn einer der Knoten offline geht.
• Microsoft SQL Server – Microsoft Failover wird verwendet, um sicherzustellen, dass mindestens ein MS SQL Server online und verfügbar ist.
• InfluxDB – Eine InfluxDB-Implementierung ist nicht erforderlich für eine ThingWorx Clustering-Konfiguration. Wenn sie erforderlich ist, um die Erfassungsanforderungen der Implementierung zu erfüllen, stellen Sie sicher, dass sie für HA konfiguriert ist.
Installationsprozess
Führen Sie die Schritte in den folgenden Abschnitten aus:
Voraussetzungen
Bevor Sie beginnen, müssen die folgenden Voraussetzungen erfüllt sein:
ThingWorx für eine Hochverfügbarkeits-aktiv-aktiv-Umgebung installieren und konfigurieren
Führen Sie die folgenden Schritte aus:
3. Installieren Sie Apache Ignite nicht.
5. Stellen Sie beim Konfigurieren der Datei platform-settings.json auf jedem ThingWorx Server sicher, dass die folgenden Werte festgelegt sind:
◦ Im Abschnitt cache:
▪ Legen Sie client-mode auf false fest.
▪ Legen Sie read-from-backup auf true fest.
▪ Legen Sie cache-mode auf REPLICATED fest.
▪ Legen Sie backups auf 0 fest.
◦ Legen Sie im Abschnitt BasicSettings die Einstellung für ScriptTimeout auf 500 fest.
9. Aktualisieren Sie die folgenden timeout-Einstellungen für HAProxy auf den Wert 500s:
◦ timeout connect
◦ timeout client
◦ timeout server
11. Die Erweiterung
ThingWorx Remote Access muss im Rahmen Ihrer
ThingWorx Plattforminstallation importiert werden, bevor die
ThingWorx Apps Erweiterung importiert wird. Weitere Informationen finden Sie unter
Remote-Zugriff im
ThingWorx Hilfe-Center.
Erweiterungsdateien importieren
Importieren Sie ThingWorx Apps als eine Erweiterung für ThingWorx in eine vorhandene ThingWorx 9.x Plattforminstallation.
1. Stellen Sie sicher, dass die Erweiterung
ThingWorx Remote Access importiert wurde. Weitere Informationen finden Sie unter
Remote-Zugriff im
ThingWorx Hilfe-Center.
2. Sie müssen die folgende Dateien herunterladen und ihren Inhalt entpacken: ThingWorx-Apps-<Version>-extension-bundle
3. Importieren Sie die Erweiterungsdateien für ThingWorx Apps. Die Erweiterungsdateien müssen in der folgenden Reihenfolge importiert werden:
a. ThingWorx-Apps-<Version>-extension-dependencies
b. ThingWorx-Apps-<Version>-extension
So importieren Sie die Erweiterungsdateien:
a. Navigieren Sie in ThingWorx Composer zu > .
b. Wählen Sie im Fenster Importieren die Option Erweiterung aus der Liste Importoption aus.
c. Klicken Sie unter Dateiname auf Durchsuchen. Navigieren Sie zur Erweiterungsdatei, und wählen Sie sie aus.
d. Klicken Sie auf Importieren. Wenn der Import abgeschlossen ist, klicken Sie auf Schließen.
e. Wiederholen Sie den Vorgang nach Bedarf.
4. Zeigen Sie die Erweiterungen nach dem Import an, indem Sie zu > navigieren.
Optionale Erweiterungen importieren
Die folgenden optionalen Erweiterungen sind zum Importieren zusammen mit
ThingWorx Apps verfügbar und stehen ebenfalls auf der Seite
PTC Software Downloads zum Download zur Verfügung:
Die folgende optionale Erweiterung ist zum Importieren zusammen mit ThingWorx Apps verfügbar und steht hier zum Download zur Verfügung: > > > .
| Da der ThingWorx Utilities Core-Erweiterungssatz eine Voraussetzung für die ThingWorx Software Content Management-Erweiterung ist, muss er zuerst importiert werden. Ist der ThingWorx Utilities Core Erweiterungssatz noch nicht installiert, müssen Sie dies tun, bevor Sie die ThingWorx Software Content Management-Erweiterung installieren. Weitere Informationen finden Sie unter
ThingWorx Utilities Installation im ThingWorx Utilities Hilfe-Center. |
Die folgende optionale Erweiterung ist zum Importieren zusammen mit ThingWorx Apps verfügbar und steht hier zum Download zur Verfügung: > > . Diese Erweiterung für 8.5.0 wird in ThingWorx Apps 9.0 unterstützt.
Importieren Sie die optionalen Erweiterungen auf die gleiche Weise wie Sie die ThingWorx Apps Erweiterungen importiert haben.
Datenbankkonfigurationen nach dem Import
Führen Sie nach dem Importieren der ThingWorx Apps Erweiterungen die folgenden Datenbankkonfigurationen aus.
1. Navigieren Sie zu dem Ihrer Datenbank entsprechenden Datenbankding: PTC.SCA.SCO.PostgresDatabase oder PTC.SCA.SCO.MSSQLDatabase.
2. Legen Sie unter Konfiguration die JDBC-Einstellungen für Ihre Datenbank fest, u.a. die Felder JDBC-Verbindungszeichenfolge, Datenbank-Benutzername und Datenbank-Passwort. Wenn Sie dieselbe Datenbank wie für die ThingWorx Plattform verwenden, geben Sie dieselben Werte wie in der Datei platform-settings.json in diesen drei Feldern ein.
| Stellen Sie vor der Konfiguration Ihres Datenbankdings sicher, dass die notwendigen JDBC-Treiber in ThingWorx vorhanden sind. ThingWorx kann JDBC-Treiber verwenden, um eine Verbindung mit einer beliebigen kompatiblen JDBC-Datenbank herzustellen (z.B. SQL Server, MySQL, Oracle usw.). Sie können auch über den ThingWorx Edge MicroServer und ThingWorx Host/Ressourcen unter Verwendung von OLEDB und ODBC eine Verbindung herstellen, wenn sich die Datenbank hinter einer Firewall befindet. Wenn in ThingWorx keine JDBC-Erweiterung für Ihre Datenbank vorhanden ist, können Sie den JDBC-Treiber manuell hinzufügen, indem Sie den Treiber herunterladen und die Dateien zum folgenden Speicherort hinzufügen: /<Tomcat-Ordner>/webapps/Thingworx/WEB-INF/lib. Nach dem Kopieren des Treibers müssen Sie Ihren ThingWorx Server neu starten. |
3. Klicken Sie auf Speichern, um das Datenbankding zu speichern.
4. Navigieren Sie zum Ding PTC.Factory.C_LaunchPointConfigurationThing_[Release-Version].
5. Bearbeiten Sie unter Konfiguration im Abschnitt DatabaseConfigurationSettingsdas Feld DBConnection, um auf das Datenbankding zu verweisen, das Sie in Schritt 2 konfiguriert haben.
6. Klicken Sie auf Speichern, um das Startpunkt-Konfigurationsding zu speichern.
7. Navigieren Sie zum Ding PTC.SCA.SCO.DatabaseManager.
8. Führen Sie unter Dienste den Dienst CreateTables aus.
Auf ThingWorx Apps zugreifen
Um auf ThingWorx Apps zuzugreifen, gehen Sie zur folgenden URL auf dem ThingWorx Server. Ersetzen Sie <Port> durch Ihre Portnummer.
https://localhost:<Port>/Thingworx/FormLogin/Welcome
Der Standard-Benutzername ist Administrator. Das Passwort ist das während der Installation und Konfiguration von ThingWorx angegebene Passwort.