Selbst-Hosting der Anwendungsdatei und oeffentlicher Ressourcen
Die einfachste On-Premises-Option ermoeglicht es Ihnen, die Anwendungsdatei selbst zu hosten. Sie koennen die Kameleoon-Anwendungsdatei sicher auf dem Kameleoon-CDN (Standard, SaaS-Einrichtung) oder auf Ihren eigenen Servern oder CDN hosten. Stellen Sie die Konfigurationsoption im Kameleoon-Backoffice im Bereich Website-Einrichtung ein. Sie koennen aus drei Werten waehlen: kein Selbst-Hosting, nur die Anwendungsdatei selbst hosten, nur oeffentliche Ressourcen selbst hosten oder vollstaendiges Selbst-Hosting (sowohl Anwendungsdatei als auch Bilder). Lesen Sie die Leitfaeden zum Selbst-Hosting mit Cloudflare CDN oder Fastly CDN.Geben Sie zusaetzlich zur Auswahl der richtigen Selbst-Hosting-Option die geplante Hosting-URL im Textfeld an. Kameleoon verwendet diese URL, um ein korrektes Installations-Skript zu erzeugen und Bilder selbst zu hosten (siehe Details unten).
Selbst-Hosting der Anwendungsdatei
Das Hosten der Kameleoon-Anwendungsdatei auf Ihren eigenen Servern kann einen kleinen Leistungsschub bieten, indem die zusaetzliche DNS-Abfrage und der SSL-Handshake entfallen, die das Kameleoon-CDN erfordert. Sie koennen sich auch aus Sicherheitsgruenden fuer das Selbst-Hosting entscheiden. Wenn Sie die Anwendungsdatei von Ihren eigenen Servern bereitstellen, koennen Sie die Einhaltung interner Sicherheitsrichtlinien sicherstellen und die Sicherheit der Hosting-Server direkt verwalten. Um die Kameleoon-Anwendungsdatei selbst zu hosten, befolgen Sie diese beiden Schritte:- Geben Sie die Hosting-URL fuer die Anwendungsdatei im Installations-Tag an. Dies fuehrt zu einem leicht modifizierten Installations-Tag im Vergleich zu den Standard-Tags.
//SITE_CODE.kameleoon.io/engine.js. Aendern Sie diese URL im Installations-Tag in Ihre eigene URL (z. B. https://www.customerdomain.com/resources/scripts/engine.js).
- Implementieren Sie eine Synchronisation zwischen der Datei auf Ihren Servern oder Ihrem CDN und der Originaldatei, die von der Kameleoon-Plattform generiert wird. Dieser Schritt ist obligatorisch, da die Anwendungsdatei dynamisch ist; ihr Inhalt aendert sich jedes Mal, wenn sich der Status eines Experiments oder einer Personalisierung auf der Plattform aendert oder wenn Sie die Konfiguration aendern.
wget-Befehl zum Abrufen der Datei ausfuehrt. Fuehren Sie diesen Job alle 5 Minuten aus.
Sobald Sie diese Schritte abgeschlossen haben, koennen Sie die Kameleoon-Plattform mit einer selbst gehosteten Anwendungsdatei verwenden.
Sie koennen einen Hash des Inhalts der Originaldatei ueber die Automation API abrufen. Verwenden Sie dies, um zu pruefen, ob die kopierte Datei mit dem Original uebereinstimmt, oder um die Synchronisation nur dann auszuloesen, wenn sich der Inhalt aendert.
Beispiel: Anweisungen fuer das Selbst-Hosting der Kameleoon-Anwendungsdatei
//www.customerdomain.com/resources/scripts/engine.js. Unten finden Sie Beispiele fuer Synchronisationsbefehle.
Die Domains der Kameleoon-Skripte variieren je nach Projekt. Projekte verwenden je nach Erstellungsdatum entweder
kameleoon.eu oder kameleoon.io. Verwenden Sie die in der Kameleoon App fuer Ihr Projekt angezeigte Domain.https://www.customerdomain.com/path/to/kameleoon-iframe.html). Lesen Sie die Dokumentation Sitzungsdaten ueber Subdomains vereinheitlichen fuer Details.
Selbst-Hosting von Bildern
Sie koennen auch Bilder, die ueber die Kameleoon-Plattform hochgeladen wurden, selbst hosten. Wenn Sie diese Option waehlen und eine Bild-URL angeben, verwenden die fuer hochgeladene Bilder generierten URLs Ihren Server oder Ihr CDN. Der Standard-URL-Pfad fuer hochgeladene Bilder istSITE_CODE.kameleoon.io/images/. Das CDN von Kameleoon stellt diese Ressourcen bereit. Wenn Sie einen anderen Pfad angeben, z. B. https://server.mydomain.com/path/resources/images/, muessen Sie Ihr CDN so konfigurieren, dass /path/resources/images/ in /images/ umgeschrieben wird. Wenn Sie keinen bestimmten Pfad benoetigen, verwenden Sie den Standardpfad: https://server.mydomain.com/images/.
Sie muessen ausserdem einen Synchronisationsmechanismus fuer das Selbst-Hosting von Bildern verwenden. Dieser Prozess ist komplexer als die Synchronisierung einer einzelnen Datei, da Sie mehrere Dateien beruecksichtigen muessen und die genauen Namen und URLs hochgeladener Bilder nicht im Voraus kennen koennen.
Verwenden Sie das Selbst-Hosting von Bildern nur ueber ein CDN, das einen eingebauten Replikationsmechanismus bietet. Stellen Sie Ihr CDN so ein, dass Ressourcen von der Origin-URL SITE_CODE.kameleoon.io/images/ bereitgestellt werden.
Die Domains der Kameleoon-Skripte variieren je nach Projekt. Projekte verwenden je nach Erstellungsdatum entweder
kameleoon.eu oder kameleoon.io. Verwenden Sie die in der Kameleoon App fuer Ihr Projekt angezeigte Domain.Dedizierte Cluster fuer die Datenspeicherung
Ein separates Cluster fuer die Datenspeicherung trennt die fuer Besucher auf Ihrer Website gesammelten Daten physisch von anderen Kameleoon-Nutzern. Diese Daten befinden sich auf dedizierten, separaten Servern und bieten die folgenden Vorteile:- Sicherheit: Die physische Trennung bietet ein hoeheres Sicherheitsniveau als die logische Trennung.
- Leistung: Dedizierte Server gewaehrleisten optimale Geschwindigkeit fuer Speicherung und Operationen.
- Zugriff auf Rohdaten: Kameleoon autorisiert Low-Level-Zugriff auf die zugrunde liegenden Datenbanken (hauptsaechlich ClickHouse), sodass Ihre Data Scientists benutzerdefinierte Abfragen ausfuehren koennen.
- Kafka (obligatorisch): Produzenten senden alle Datenerhebungsereignisse an Kafka-Topics, sodass sie ETL-Anwendungen zur Verfuegung stehen.
- Hadoop File System (obligatorisch): Kameleoon speichert alle Datenerhebungsereignisse in HDFS. Kameleoon rekonstruiert Besuche aus diesen Rohdaten zur Verwendung in anderen skalierbaren Datenbanken. HDFS dient als primaerer Datenspeicher und als Single Source of Truth.
- ClickHouse (obligatorisch): ClickHouse ist die OLAP-Engine, die Kameleoon zum Erstellen von Analyseberichten verwendet. Sie koennen benutzerdefinierte Abfragen fuer erweiterte Analysen ausfuehren.
- Cassandra (erforderlich fuer Personalisierung oder geraeteuebergreifende Abstimmung): Kameleoon verwendet Cassandra fuer Machine-Learning-Modelle und die geraeteuebergreifende Verlaufsabstimmung.
Die Server-Einrichtung und -Konfiguration wird in der Regel von erfahrenen Kameleoon-Ingenieuren durchgefuehrt. Kameleoon kann diese Vorgaenge in Ihrem Rechenzentrum (Server, die Sie besitzen und betreiben) oder in den Rechenzentren von Kameleoon durchfuehren.
| Komponente | Version | Mindestserver | Optimale Server | Empfohlener RAM | Speichertyp | Bemerkungen |
|---|---|---|---|---|---|---|
| Kafka | 2.3.1 | 2 | 2 | 32 GB | Drehende Festplatten (8 TB+) | Confluent v5.3.1 |
| HDFS | 2.9.1 | 2 | 2 | 32 GB | Drehende Festplatten (8 TB+) | Erfordert 2 Server fuer Replikation |
| ClickHouse | 22.3.3 | 1 | 2 | 64 GB | SSD empfohlen | |
| Cassandra | 4.0.1 | 1 | 2 | 32 GB | SSD obligatorisch |
Verwenden Sie nur fuer A/B-Tests eine Mindestkonfiguration von 5 Servern (6 empfohlen). Verwenden Sie fuer Personalisierung eine Mindestkonfiguration von 6 Servern (8 empfohlen).
Vollstaendiges On-Premises-Modell (getrenntes Backoffice, Datenspeicher-Cluster und Hosting der Anwendungsdatei)
In diesem Szenario hosten Sie alle Komponenten und Funktionen der Kameleoon-Plattform in Ihrem IT-Oekosystem. Dies ermoeglicht Ihnen die Implementierung benutzerdefinierter Sicherheitsrichtlinien, wie z. B. die Beschraenkung des Zugriffs auf Firmenarbeitsplaetze ueber VPN. Die Backoffice-Anwendung laeuft auf einem Tomcat-JEE-Server und nutzt mehrere eigenstaendige Java-Anwendungen, die ueber ActiveMQ kommunizieren. Kameleoon verwendet MySQL als relationale Datenbank fuer das Backoffice und nginx als hochleistungsfaehigen HTTP-Server zum Sammeln von Datenereignissen von Browsern. Pruefen Sie die Server-Anforderungen fuer die dedizierte Datenpipeline und das Backoffice:| Komponente | Version | Mindestserver | Optimale Server | Empfohlener RAM | Speichertyp | Bemerkungen |
|---|---|---|---|---|---|---|
| JDK/Tomcat/ActiveMQ | 1.8/8.0.47/5.14.5 | 1 | 1 | 32 GB | SSD empfohlen | Eigenstaendige Java-Anwendungen sind kolokiert |
| MySQL | 8.0.21 | 1 | 1 | 32 GB | SSD empfohlen | |
| nginx | 1.20.1 | 1 | 2 | 32 GB | Drehende Festplatten | Enthaelt proprietaere Java-Log-Parsing-Anwendung |
Sie koennen den MySQL-Server mit dem Tomcat-JEE-Server kolokieren, aber Kameleoon empfiehlt, eine Kolokation aus Sicherheits- und Leistungsgruenden zu vermeiden, sofern nicht ausdruecklich anders angegeben.
Verwenden Sie fuer A/B-Tests eine Mindestkonfiguration von 9 Servern (11 empfohlen). Verwenden Sie fuer Personalisierung eine Mindestkonfiguration von 10 Servern (13 empfohlen). Berechnen Sie diese Zahlen, indem Sie die Tabellen addieren und einen Server fuer das Hosting der Anwendungsdatei hinzufuegen (einen abziehen, wenn Sie ein CDN verwenden).