Definieren einer Repository-basierten Konfiguration nur für eine bestimmte Instanz
Beschreibung description
Umgebung
Adobe Experience Manager
Problem/Symptome
Dieser Artikel definiert eine Repository-basierte Konfiguration für eine bestimmte Instanz.
Auflösung resolution
1. Konfigurieren der Apache Felix Web Management Console
Die Konfiguration in der Apache Felix Web Management Console (http://host:port/system/console/configMgr) ist immer spezifisch für die aktuelle Instanz.
Eine Beschreibung finden Sie in der Dokumentation: https://helpx.adobe.com/de/experience-manager/6-4/sites/deploying/using/configuring-osgi.html#OSGiConfigurationintheRepository
2. Repository-basierte Konfiguration
Es ist auch möglich, die Konfiguration im CRX-Repository als Knoten des Knotentyps sling:OsgiConfig zu speichern.
Weitere Informationen finden Sie unter https://helpx.adobe.com/de/experience-manager/6-4/sites/deploying/using/configuring-osgi.html#OSGiConfigurationintheRepository
Mit dieser Methode ist es möglich, die Konfiguration auf mehrere Instanzen freizugeben.
Der Name dieser Knoten muss mit der Persistent Identity (PID) der Konfiguration übereinstimmen (z. B. der Name des Dienstes). Wenn Sie sich http://host:port/system/console/configMgr angezeigt, werden diese Namen als service.pid-Eigenschaften aufgeführt. Diese Konfigurationsknoten müssen untergeordnete Knoten des Knotentyps nt:folder mit einem Namen sein, der mit config gefolgt von einem Punkt beginnt. Alle Ausführungsmodi, für die die Konfiguration gilt, werden ebenfalls durch einen Punkt getrennt.
Beispiele: config.author, config.publish, config.author.dev, config.author.foo.dev
Ausführungsmodus
Es ist möglich zu definieren, auf welchen spezifischen Ausführungsmodi eine bestimmte Instanz ausgeführt wird. Standardmäßig wird eine Autoreninstanz im Ausführungsmodus "author"ausgeführt und eine Veröffentlichungsinstanz im Ausführungsmodus "publish". Es ist möglich, mehrere Ausführungsmodi für eine Instanz zu definieren (z. B. author, foo und dev).
Legen Sie diese Ausführungsmodi als VM-Optionen fest.
Beispiel in der Konsole:
java -Dsling.run.modes=author,foo,dev -Xmx256m -jar aem64-quickstart.jar
oder im Startskript:
# default JVM options
CQ_JVM_OPTS='-Dsling.run.modes=author,foo,dev'
Die aktuellen Ausführungsmodi einer Instanz sind sichtbar unter http://host:port/system/console/status-slingsettings
Hinweis: Es wird nicht empfohlen, die standardmäßigen Run-Modi Autor und Veröffentlichung zu ändern oder zu entfernen. Fügen Sie einfach Ihre spezifischen Ausführungsmodi zur Standardliste der vorhandenen Ausführungsmodi hinzu.
Hinweis: Derselbe Mechanismus funktioniert für die Repository-basierte Bundle-Installation. Platzieren Sie die Bundles unter den Knoten des Knotentyps nt:folder mit einem Namen, der mit der Installation beginnt, gefolgt von einem Punkt. Alle Ausführungsmodi, auf die die Bundles angewendet werden, werden durch einen Punkt getrennt.
Beispiel: Um eine bestimmte SMTP-Mailserver-Konfiguration für alle Instanzen zu haben, die im Ausführungsmodus ausgeführt werden, erstellen Sie einfach einen Knoten mit dem Namen config.foo und dem Knotentyp nt:folder in /apps/we-retail und kopieren Sie den Knoten /libs/cq/config/com.day.cq.mailer.DefaultMailService nach /apps/we-retail/config.foo und passen Sie die Eigenschaften smtp.host an.
Beispiel: Um eine bestimmte Logrotationskonfiguration zu haben, verwenden Sie das Konfigurationspaket im KB-Artikel Rotieren von request.log und access.log und benennen Sie die Knotenkonfiguration beispielsweise in config.foo um, wenn die Konfiguration nur für alle Instanzen durchgeführt werden soll, die nur im Ausführungsmodus foo ausgeführt werden.