Installationsanleitung für Akeneo

Mit dieser Installationsanleitung führen wir Sie Schritt für Schritt durch die Installation von Akeneo auf Ihrem Cluster.

Bei maxcluster ist es möglich, Akeneo in der Community Edition zu hosten. Wir bieten das Hosting der Versionen 4, 5 und 6 an.

Bei Neukunden sind die Systemanforderungen bei der Bereitstellung des Web Cluster bereits installiert bzw. vorinstalliert.

Bestandskunden wird empfohlen, Kontakt per E-Mail oder Telefon zur technischen Beratung aufzunehmen, um überprüfen zu lassen, ob die Systemanforderungen erfüllt sind. Gerne hilft Ihnen die technische Beratung unter beratung@maxcluster.de oder per Telefon unter +49 (0) 5251 4141-350 schnell weiter.

Systemanforderungen

Eine Auflistung der Systemanforderungen finden Sie hier: https://maxcluster.de/knowledge-base/managedcenter/faq-zu-akeneo-hosting-bei-maxcluster

Domain anlegen

Um Akeneo auf Ihrem maxcluster Web Cluster betreiben zu können, benötigen Sie eine neue Domain. Im Folgenden ist die Einrichtung von Akeneo für Apache beschrieben.

Melden Sie sich im Managed Center an und folgen Sie den Anweisungen auf den Screenshots, um in den Bereich Apache zu wechseln und eine neue Domain anzulegen:

ManagedCenter_Domain anlegen_1

Tragen Sie den gewünschten Domainnamen in das Feld "Domain" ein. Wir benutzen für diese Dokumentation in den Screenshots den Namen akeneo.c-76.maxcluster.net. Wann immer Sie im weiteren Verlauf dieser Anleitung diesen Domain-Namen oder den Platzhalter ${VHOST} sehen, sollten Sie ihn durch den von Ihnen in diesem Schritt gewählten Domainnamen ersetzen.

Zu beachten ist, dass Sie hier einen neuen Domain-Namen verwenden, da im späteren Verlauf der Installation alle Dateien im DocumentRoot dieser Domain gelöscht werden.

ManagedCenter_Domain anlegen_2

Wechseln Sie danach auf den Reiter "SSL-Zertifikat", setzen Sie den Haken bei "Let’s Encrypt-Zertifikat" und wählen Sie im Pull-Down-Menü die IP-Adresse des Clusters aus. Dies dient der Einrichtung eines Let’s Encrypt-SSL-Zertifikats, damit Ihre Webseite mittels HTTPS aufgerufen werden kann:

ManagedCenter_Domain anlegen_3

Wechseln Sie danach auf den Reiter "SSL-Optionen". Dort aktivieren Sie nun die automatische Weiterleitung auf SSL, damit Ihre Akeneo-Installation ausschließlich abgesichert aufgerufen werden kann:

ManagedCenter_Domain anlegen_4

PHP-Version festlegen

Je nach verwendeter Akeneo-Version wählen Sie an der im Screenshot gezeigten Stelle die passende PHP-Version aus. Die richtigen PHP-Versionen zur Akeneo-Version sind:

  • Akeneo 4: PHP 7.3
  • Akeneo 5: PHP 7.4
  • Akeneo 6: PHP 8.0

In diesem Beispiel verwenden wir PHP 7.3 als PHP-Version für Akeneo 4:

PHP-Versionen festlegen_1

Damit die Cronjobs später fehlerfrei laufen, müssen Sie noch die zu Ihrer Akeneo-Version passende PHP-CLI-Version einstellen. Wählen Sie analog zum Screenshot die passende PHP-Version:

  • Akeneo 4: PHP 7.3
  • Akeneo 5: PHP 7.4
  • Akeneo 6: PHP 8.0

PHP-Versionen festlegen_2

Wenn alles korrekt eingestellt ist, sollte die Anzeige im Managed Center wie folgt aussehen (an den mit "2" und "3" markierten Stellen sollte die PHP- und PHP-CLI-Version zu sehen sein, die zu der von Ihnen installierten Akeneo-Version passt:

PHP-Versionen festlegen_3

Composer-Version einstellen

Akeneo wird über Composer geladen und installiert. Dementsprechend müssen Sie noch die Composer-Version wie im Screenshot gezeigt auf Composer 2 umstellen:

Composer-Version_einstellen_1

MySQL-Datenbank anlegen

Die Datenbank können Sie vor oder nach dem MySQL-Upgrade auf Version 8 anlegen. Wir empfehlen aber damit bis nach dem Upgrade zu warten.

Wählen Sie dazu eine der beiden Schaltflächen “Neue Datenbank” aus und geben Sie der Datenbank im zweiten Schritt einen Beschreibungstext:

MySQL-Datenbank_anlegen_1

Der Beschreibungstext hilft Ihnen in der Übersicht des Managed Center bei einer schnellen und einfachen Identifizierung der Zugehörigkeit.

MySQL-Datenbank_anlegen_2

Anschließend werden Ihnen die Zugangsdaten der Datenbank angezeigt. Bitte speichern Sie den Datenbanknamen, den Datenbank-Benutzer und das Datenbank-Passwort zwischen, da Sie diese später bei der Akeneo-Installation zum Erstellen der Konfigurationsdatei benötigen:

MySQL-Datenbank_anlegen_3

Sobald MySQL korrekt eingerichtet ist, sollte dies im Managed Center wie folgt aussehen:

MySQL-Datenbank_anlegen_4

Elasticsearch-/Opensearch-Installation

Als nächstes müssen Sie Elasticsearch installieren und eine Instanz erstellen. Alternativ können Sie auch OpenSearch benutzen.

Die empfohlenen Versionen sind:

  • Akeneo 4: Elasticsearch = 7.5
  • Akeneo 5: Elasticsearch = 7.10
  • Akeneo 6: OpenSearch >= 1.3

Elasticsearch installieren

Elasticsearch-Installation_1

Während der Installation müssen Sie die zu verwendende Version auswählen und anschließend die Installation starten:

Elasticsearch-Installation_2

Nun können Sie die Elasticsearch-Instanz erstellen:

Elasticsearch-Installation_3

Beim Anlegen müssen Sie beachten, dass Sie eine Beschreibung festlegen und eine Heap-Size einstellen. Eine Heap-Size von 1024 MB ist für die Installation ausreichend und kann für den Live-Betrieb jederzeit erhöht werden:

Elasticsearch-Installation_4

OpenSearch installieren

Öffnen Sie den Bereich "OpenSearch" in der Seitenleiste und wählen Sie “OpenSearch installieren” aus:

OpenSearch-Installation_1

Während der Installation müssen Sie die zu verwendende Version auswählen und anschließend die Installation starten:

OpenSearch-Installation_2

Über eine der beiden Schaltflächen haben Sie die Möglichkeit, eine neue OpenSearch-Instanz zu erstellen:

OpenSearch-Installation_3

Beim Anlegen müssen Sie eine Beschreibung festlegen und eine Heap-Size einstellen. Eine Heap-Size von 1024 MB ist für die Installation ausreichend und kann für den Live-Betrieb jederzeit erhöht werden:

OpenSearch-Installation_4

Der fertige Elasticsearch/OpenSearch Server sollte im Managed Center wie folgt aussehen. Hier bitte die Port-Nummer notieren (im Beispiel OpenSearch mit Port 9500), da diese später zur Konfiguration der Environment-Datei benötigt wird.

OpenSearch-Installation_5

Supervisor installieren

Die Vorbereitungen sind nun größtenteils abgeschlossen. Jetzt müssen Sie nur noch Supervisor installieren:

Supervisor_installieren_1

Wenn die Installation abgeschlossen ist, können Sie sich um die Vorbereitung des Document Roots kümmern. Die Einrichtung des Supervisor-Programms nehmen Sie vor, nachdem Akeneo installiert ist. Dementsprechend benötigen Sie jetzt eine SSH-Verbindung zum Cluster.

DocumentRoot vorbereiten

Wechseln des Verzeichnisses

Als Erstes navigieren Sie in das Verzeichnis der neu angelegten Domain. Ersetzen Sie dazu in der folgenden Zeile den Ordnernamen akeneo.c-76.maxcluster.net durch den von Ihnen gewählten Domainnamen:

cd /var/www/share/akeneo.c-76.maxcluster.net

Entfernen des Standard-DocumentRoot

Nachdem Sie im Hauptverzeichnis der Domain angekommen sind, löschen Sie mit dem folgenden Befehl den Ordner "htdocs" samt Inhalt:

rm -r htdocs

Dies wird benötigt, da der Public-Ordner im Akeneo-Verzeichnis das spätere DocumentRoot sein wird.

Nun legen Sie einen Symlink namens "htdocs" an, der auf den Ordner public im Verzeichnis akeneo verweist:

ln -s akeneo/public htdocs

So sorgt man dafür, dass das DocumentRoot der Domain innerhalb des Akeneo-Verzeichnisses auf dem von Akeneo zur Verfügung gestellten Public-Verzeichnis liegt.

Akeneo-Download

Nun können Sie auch schon mit dem Download von Akeneo beginnen.

Akeneo 4

Für Akeneo 4 müssen Sie folgenden Befehl ausführen:

composer2 create-project akeneo/pim-community-standard akeneo "4.0.*@stable"

Akeneo 5

Für Akeneo 5 müssen Sie folgenden Befehl ausführen:

composer2 create-project akeneo/pim-community-standard akeneo "5.0.*@stable"

Akeneo 6

Für Akeneo 6 müssen Sie folgenden Befehl ausführen:

composer2 create-project akeneo/pim-community-standard akeneo "6.0.*@stable"

Secret erstellen

Für die Installation von Akeneo benötigen Sie einen bestenfalls 50 Zeichen langes Secret. Dieses können Sie wie folgt erstellen:

pwgen 50 1

Dieses neu erstellte Secret müssen Sie einmal zwischenspeichern, da Sie es im nächsten Schritt benötigen.

Environment-Datei

Sie erstellen nun eine .env.local-Datei, in der die Parameter für Akeneo festgelegt werden:

nano akeneo/.env.local

Dort tragen Sie folgenden Inhalt ein:

LOGGING_LEVEL=NOTICE
APP_DEBUG=0
APP_ENV=prod
APP_DATABASE_HOST=localhost
APP_DATABASE_PORT=3306
APP_DATABASE_NAME=db-NUMBER
APP_DATABASE_USER=db-user-NUMBER
APP_DATABASE_PASSWORD='PASSWORD'
APP_INDEX_HOSTS='localhost:9200'
APP_SECRET=SECRET
APP_DEFAULT_LOCALE=en
APP_PRODUCT_AND_PRODUCT_MODEL_INDEX_NAME=akeneo_pim_product_and_product_model
MAILER_URL=null://localhost
AKENEO_PIM_URL=http://${VHOST}
APP_ELASTICSEARCH_TOTAL_FIELDS_LIMIT=10000

Geändert werden müssen hier folgende Einträge:

  • APP_DATABASE_HOST: Sollte auf localhost gesetzt werden, wenn die Datenbank auf Ihrem Cluster liegt, was der Normalfall ist. Ansonsten muss hier der Hostname des externen Datenbank-Servers eingetragen werden.
  • APP_DATABASE_NAME: Hier muss NUMBER durch die Datenbank-Nummer ersetzt werden, die Ihnen beim Erstellen der Datenbank angezeigt wurde.
  • APP_DATABASE_USER: Hier muss NUMBER durch die Datenbank-Benutzer-Nummer ersetzt werden, die Ihnen beim Erstellen der Datenbank angezeigt wurde.
  • APP_DATABASE_PASSWORD: PASSWORD muss hier durch das Datenbank-Passwort ersetzt werden, das Ihnen beim Erstellen der Datenbank angezeigt wurde.
  • APP_INDEX_HOSTS: Hier muss 9200 durch die korrekte Portnummer der Elastic-/Opensearch Instanz ersetzt werden, die Ihnen beim Erstellen der Search-Instanz angezeigt wurde.
  • APP_SECRET: An dieser Stelle muss das Wort SECRET durch das vorher erstellte 50 Zeichen lange Secret ersetzt werden.
  • AKENEO_PIM_URL: Die Variable ${VHOST} müsste durch den Namen der erstellten Domain ersetzt werden.

Akeneo-Installation

Nun kann die Installation von Akeneo selbst beginnen. Sie wechseln zunächst in das Akeneo-Verzeichnis:

cd akeneo

Die Installation können Sie wie folgt starten:

NO_DOCKER=true make prod

Sollte hier eine Abfrage kommen, bestätigen Sie diese bitte mit durch das Tippen der Taste y gefolgt von der Entertaste.

Sobald die Installation durchgelaufen ist, wechseln Sie in das htdocs-Verzeichnis:

cd ../htdocs

Sie legen nun die .htaccess-Datei an, in der Sie die Umschreibungen aktivieren:

nano .htaccess

Hier tragen Sie folgenden Inhalt ein:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

Für die letzten zwei Schritte der Einrichtung von Akeneo wechseln Sie jetzt wieder in das Managed Center. Dort müssen Sie abschließend die Cronjobs eintragen und Supervisor fertig einrichten.

Cronjobs einrichten

Sie können Cronjobs auf der Kommandozeile mittels crontab -e anlegen oder das Managed Center dafür verwenden. Die folgende Anleitung zeigt die Einrichtung über das Managed Center:

Cronjobs_einrichten_1

Wir fügen hier als Beispiel den ersten Cronjob von Akeneo 4 hinzu, wobei die Vorgehensweise für alle Cronjobs dieselbe ist. Eine Liste der Cronjobs finden Sie weiter unten. Fügen Sie für jeden Cronjob die ersten fünf Zahlen oder Zeichen in die Felder 1-5 ein und den Befehlsstring dahinter in das Textfeld Befehl:

Cronjobs_einrichten_2

Cronjobs_einrichten_3

Liste der Cronjobs aller unterstützten Akeneo-Versionen

Hier die Auflistung der Cronjobs der einzelnen Akeneo-Versionen:

Akeneo 4

30 1 * * * php7.3 /var/www/share/${VHOST}/akeneo/bin/console pim:versioning:refresh
30 2 * * * php7.3 /var/www/share/${VHOST}/akeneo/bin/console pim:versioning:purge --more-than-days 90
1 * * * * php7.3 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-audit:update-data
20 0 1 * * php7.3 /var/www/share/${VHOST}/akeneo/bin/console akeneo:batch:purge-job-execution
30 4 * * * php7.3 /var/www/share/${VHOST}/akeneo/bin/console pim:volume:aggregate

Akeneo 5

30 1 * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console pim:versioning:refresh
30 2 * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console pim:versioning:purge --more-than-days 90
1 * * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-audit:update-data
20 0 1 * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console akeneo:batch:purge-job-execution
30 4 * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console pim:volume:aggregate
10 * * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-connection:purge-error
40 12 * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-audit:purge-error-count
15 0 * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console pim:data-quality-insights:schedule-periodic-tasks
*/10 * * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console pim:data-quality-insights:prepare-evaluations
*/30 * * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console pim:data-quality-insights:evaluations
0 */2 * * * php7.4 /var/www/share/${VHOST}/akeneo/bin/console akeneo:messenger:doctrine:purge-messages messenger_messages default

Akeneo 6

30 1 * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console pim:versioning:refresh
30 2 * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console pim:versioning:purge --more-than-days 90
1 * * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-audit:update-data
20 0 1 * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:batch:purge-job-execution
30 4 * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console pim:volume:aggregate
10 * * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-connection:purge-error
40 12 * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-audit:purge-error-count
15 0 * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console pim:data-quality-insights:schedule-periodic-tasks
*/10 * * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console pim:data-quality-insights:prepare-evaluations
*/30 * * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console pim:data-quality-insights:evaluations
0 */2 * * * php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:messenger:doctrine:purge-messages messenger_messages default
5 * * * *  php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-connection:purge-events-api-logs
0 0 * * 0 php8.0 /var/www/share/${VHOST}/akeneo/bin/console akeneo:connectivity-connection:openid-keys:create

Bitte beachten Sie beim Eintragen der Cronjobs, dass Sie den Platzhalter ${VHOST} durch die von Ihnen gewählte Domain ersetzen.

Supervisor-Programm einrichten

Als letztes müssen Sie jetzt noch Supervisor fertig einrichten. Dies ist erst nach erfolgreicher Installation von Akeneo möglich. Hierbei geht es darum, ein neues Supervisor-Programm anzulegen. Folgen Sie den Anweisungen des Screenshots:

Supervisor-Programm_einrichten_1

Sie können die Akeneo Version-spezifischen Supervisor-Programme weiter unten finden:

Supervisor-Programm_einrichten_2

Wenn Supervisor korrekt eingerichtet ist, sollte es wie im folgenden Screenshot aussehen:

Supervisor-Programm_einrichten_3

Liste der Supervisor Programme aller unterstützten Akeneo-Versionen

Bei den Programmen gibt es ebenfalls leichte Unterschiede in den verwendeten Akeneo-Versionen. Im Folgenden finden Sie die entsprechende Auflistung:

Akeneo 4

[program:akeneo_queue_daemon]
command=/usr/bin/php7.3 /var/www/share/${VHOST}/akeneo/bin/console akeneo:batch:job-queue-consumer-daemon --env=prod
autostart=true
autorestart=true
stderr_logfile=/var/www/share/${VHOST}/akeneo/var/logs/akeneo_daemon.err.log
stdout_logfile=/var/www/share/${VHOST}/akeneo/var/logs/akeneo_daemon.out.log

Akeneo 5

[program:akeneo_queue_daemon]
command=/usr/bin/php7.4 /var/www/share/${VHOST}/akeneo/bin/console akeneo:batch:job-queue-consumer-daemon --env=prod
autostart=true
autorestart=true
stderr_logfile=/var/www/share/${VHOST}/akeneo/var/logs/akeneo_daemon.err.log
stdout_logfile=/var/www/share/${VHOST}/akeneo/var/logs/akeneo_daemon.out.log

Akeneo 6

[program:akeneo_queue_daemon]
command=/usr/bin/php8.0 /var/www/share/${VHOST}/akeneo/bin/console messenger:consume ui_job import_export_job data_maintenance_job --env=prod -vv # optional: --limit=3
autostart=true
autorestart=true
stderr_logfile=/var/www/share/${VHOST}/akeneo/var/logs/akeneo_daemon.err.log
stdout_logfile=/var/www/share/${VHOST}/akeneo/var/logs/akeneo_daemon.out.log

Bitte beachten Sie beim Eintragen des Programm-Codes, dass Sie die Variable ${VHOST} durch die passende erstellte Domain ersetzen.

Sollten Sie Rückfragen haben oder Unterstützung benötigen, wenden Sie sich gerne an unseren Service per E-Mail support@maxcluster.de oder telefonisch +49 5251 41 41 30.

logo

Sie benötigen Unterstützung?

maxcluster GmbH
24 / 7 Kundensupport
Telefon:
+49 5251 414130
Telefon:
support@maxcluster.de
image
image