[SOLVED] How to install gigacommerce (Elasticsearch) at second server
Forum rules
Always add your Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
Always add your Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
- ЕвгенияСемихова(ИПСемиховаЕ.А.)
- Posts: 70
- Joined: 11 Jan 2025, 09:45
[SOLVED] How to install gigacommerce (Elasticsearch) at second server
Have: Aimeos installed at first server (10.0.0.1)
I whant to install your gigacommerce extention at second server for better perfomance (10.0.0.2)
---
What and how I can install Elasticsearch to my second server?
Maybe you can give some link to documents?
---
I think I need to download composer at public_html of my second server, add line ai-elasticsearch to composer.json and also configure first and second servers for linking to both.
I whant to install your gigacommerce extention at second server for better perfomance (10.0.0.2)
---
What and how I can install Elasticsearch to my second server?
Maybe you can give some link to documents?
---
I think I need to download composer at public_html of my second server, add line ai-elasticsearch to composer.json and also configure first and second servers for linking to both.
Last edited by ЕвгенияСемихова(ИПСемиховаЕ.А.) on 11 Feb 2025, 11:20, edited 2 times in total.
Debian 12, PHP 8.3, Server 1 = Aimeos 2024.10.13, Server 2 = ES 8.17.1
life is full of many new and interesting things
life is full of many new and interesting things
Re: How to install gigacommerce (Elasticsearch) at second server
Don't mix up things! The ai-elastic extension is an Aimeos extension that needs to be installed in your Aimeos setup on 10.0.0.1. There, you can configure in your ./config/shop.php the ElasticSearch server you've installed on 10.0.0.2
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos,
give us a star
If you like Aimeos,

- ЕвгенияСемихова(ИПСемиховаЕ.А.)
- Posts: 70
- Joined: 11 Jan 2025, 09:45
Re: How to install gigacommerce (Elasticsearch) at second server
Need your help again, dear developer!
Regarding gigacommerce:
I have:
1) server #1 with IP=10.0.0.1 - Aimeos main server (shop.com)
2) server #2 with IP=10.0.0.2 - with installing Elasticserach (8.17.1 version)
----
Firs of all, I have open Elasticsearch server and test it by ip:9200:

I think at first test time is ok. This is not finish system, only for test start.
Second step is: configuring my Server #1 (Aimeos)
I have read at # ai-elastic (vendor/aimeoscom/ai-elastic/README.md) and add to aimeos config file:
At first time something start work (I see it by "top" and memory usage at Server #2)


After that I have change "'es-index' => [" to "'es' => [" and add this:
and after command "php artisan aimeos:setup" frontview of site is not working:

at admin I can enter, but there are no any items and sites:

if I start command: "php artisan aimeos:setup --option=setup/default/demo:1" , then write error:

at elasticserver (Server #2) health is green, at log no errors:

my google search give me no results.
This is the first time I've encountered elasticsearch, and I've tried to set up and connect on my own as much as possible. I think there is an error in specifying the "elastic" call in the settings, but the inscription "No active nodes found in your cluster" is confusing - I admit, it does call for knowledge, but there is a great desire to understand everything and explore deeper.
Regarding gigacommerce:
I have:
1) server #1 with IP=10.0.0.1 - Aimeos main server (shop.com)
2) server #2 with IP=10.0.0.2 - with installing Elasticserach (8.17.1 version)
----
Firs of all, I have open Elasticsearch server and test it by ip:9200:

I think at first test time is ok. This is not finish system, only for test start.
Second step is: configuring my Server #1 (Aimeos)
I have read at # ai-elastic (vendor/aimeoscom/ai-elastic/README.md) and add to aimeos config file:
Code: Select all
// if products from database are indexed in ES (products in DB and ES)
'es-index' => [
'hosts' => [
'10.0.0.2:9200',
],
'index' => 'aimeos',
'SSLVerification' => false, // for self-signed certificates
'basicAuthentication' => ['elastic', '[i]MYPASSWD[/i]'], // ElasticSearch 8+
'selectorClass' => '\Elasticsearch\ConnectionPool\Selectors\StickyRoundRobinSelector',
'settings' => [
'number_of_shards' => 5, // adapt to your needs
'number_of_replicas' => 0, // adapt to your needs
'max_result_window' => 10000, // maximum number of results retrieved
// 'refresh_interval' => -1, // for initial indexing only
],
// 'norefresh' => false, // for initial indexing only
],


After that I have change "'es-index' => [" to "'es' => [" and add this:
Code: Select all
'mshop' => [
'index' => [
'manager' => [
'name' => 'Elastic', // Only if products are not in DB
// 'name' => 'ElasticIndex', // If products exist in DB
'attribute' => [
'name' => 'Elastic',
],
'catalog' => [
'name' => 'Elastic',
],
'price' => [
'name' => 'Elastic',
],
'supplier' => [
'name' => 'Elastic',
],
'text' => [
'name' => 'Elastic',
],
]
],
// Only if products are not in DB
'product' => [
'manager' => [
'name' => 'Elastic',
'lists' => [
'name' => 'Elastic',
'type' => [
'name' => 'Elastic',
],
],
'property' => [
'name' => 'Elastic',
'type' => [
'name' => 'Elastic',
],
],
'type' => [
'name' => 'Elastic',
],
]
],
// Only if products are not in DB
'stock' => [
'manager' => [
'name' => 'Elastic',
'type' => [
'name' => 'Elastic',
],
]
]
]

at admin I can enter, but there are no any items and sites:

if I start command: "php artisan aimeos:setup --option=setup/default/demo:1" , then write error:

at elasticserver (Server #2) health is green, at log no errors:

my google search give me no results.
This is the first time I've encountered elasticsearch, and I've tried to set up and connect on my own as much as possible. I think there is an error in specifying the "elastic" call in the settings, but the inscription "No active nodes found in your cluster" is confusing - I admit, it does call for knowledge, but there is a great desire to understand everything and explore deeper.
Debian 12, PHP 8.3, Server 1 = Aimeos 2024.10.13, Server 2 = ES 8.17.1
life is full of many new and interesting things
life is full of many new and interesting things
- ЕвгенияСемихова(ИПСемиховаЕ.А.)
- Posts: 70
- Joined: 11 Jan 2025, 09:45
Re: How to install gigacommerce (Elasticsearch) at second server
Upd: I have read one solution: delete the space in front of the node name - I deleted the spaces:ЕвгенияСемихова(ИПСемиховаЕ.А.) wrote: ↑06 Feb 2025, 15:54 Need your help again, dear developer!
Regarding gigacommerce:
I have:
1) server #1 with IP=10.0.0.1 - Aimeos main server (shop.com)
2) server #2 with IP=10.0.0.2 - with installing Elasticserach (8.17.1 version)
----
Firs of all, I have open Elasticsearch server and test it by ip:9200:
I think at first test time is ok. This is not finish system, only for test start.
Second step is: configuring my Server #1 (Aimeos)
I have read at # ai-elastic (vendor/aimeoscom/ai-elastic/README.md) and add to aimeos config file:At first time something start work (I see it by "top" and memory usage at Server #2)Code: Select all
// if products from database are indexed in ES (products in DB and ES) 'es-index' => [ 'hosts' => [ '10.0.0.2:9200', ], 'index' => 'aimeos', 'SSLVerification' => false, // for self-signed certificates 'basicAuthentication' => ['elastic', '[i]MYPASSWD[/i]'], // ElasticSearch 8+ 'selectorClass' => '\Elasticsearch\ConnectionPool\Selectors\StickyRoundRobinSelector', 'settings' => [ 'number_of_shards' => 5, // adapt to your needs 'number_of_replicas' => 0, // adapt to your needs 'max_result_window' => 10000, // maximum number of results retrieved // 'refresh_interval' => -1, // for initial indexing only ], // 'norefresh' => false, // for initial indexing only ],
After that I have change "'es-index' => [" to "'es' => [" and add this:and after command "php artisan aimeos:setup" frontview of site is not working:Code: Select all
'mshop' => [ 'index' => [ 'manager' => [ 'name' => 'Elastic', // Only if products are not in DB // 'name' => 'ElasticIndex', // If products exist in DB 'attribute' => [ 'name' => 'Elastic', ], 'catalog' => [ 'name' => 'Elastic', ], 'price' => [ 'name' => 'Elastic', ], 'supplier' => [ 'name' => 'Elastic', ], 'text' => [ 'name' => 'Elastic', ], ] ], // Only if products are not in DB 'product' => [ 'manager' => [ 'name' => 'Elastic', 'lists' => [ 'name' => 'Elastic', 'type' => [ 'name' => 'Elastic', ], ], 'property' => [ 'name' => 'Elastic', 'type' => [ 'name' => 'Elastic', ], ], 'type' => [ 'name' => 'Elastic', ], ] ], // Only if products are not in DB 'stock' => [ 'manager' => [ 'name' => 'Elastic', 'type' => [ 'name' => 'Elastic', ], ] ] ]
at admin I can enter, but there are no any items and sites:
if I start command: "php artisan aimeos:setup --option=setup/default/demo:1" , then write error:
at elasticserver (Server #2) health is green, at log no errors:
my google search give me no results.
This is the first time I've encountered elasticsearch, and I've tried to set up and connect on my own as much as possible. I think there is an error in specifying the "elastic" call in the settings, but the inscription "No active nodes found in your cluster" is confusing - I admit, it does call for knowledge, but there is a great desire to understand everything and explore deeper.

but it still didn't help me and I'm stuck at this stage.

Maybe I need add node name for elasticsearch ip adress? Like node-1.10.0.0.2:9200 ? This also din't work

Upd_2: I've total reinstall all servers - can't create working systems with gigacommerce (all in elasticsearch for many items and SKU's). Please tell me where I went wrong

Debian 12, PHP 8.3, Server 1 = Aimeos 2024.10.13, Server 2 = ES 8.17.1
life is full of many new and interesting things
life is full of many new and interesting things
Re: How to install gigacommerce (Elasticsearch) at second server
Seems like your ES server (10.0.0.2:9200) is not reachable from 10.0.0.1. Maybe it's a firewall issue.
The error regarding \Aimeos\MShop\Index\Manager\Customer\Attribute\Elastic is strange because that class doesn't exist at all. Your configuration seems to be correct:
Does that also occur if you remove the aimeoscom/ai-customergroups extension?
The error regarding \Aimeos\MShop\Index\Manager\Customer\Attribute\Elastic is strange because that class doesn't exist at all. Your configuration seems to be correct:
Code: Select all
'mshop' => [
'index' => [
'manager' => [
'name' => 'Elastic', // Only if products are not in DB
// 'name' => 'ElasticIndex', // If products exist in DB
'attribute' => [
'name' => 'Elastic',
],
'catalog' => [
'name' => 'Elastic',
],
'price' => [
'name' => 'Elastic',
],
'supplier' => [
'name' => 'Elastic',
],
'text' => [
'name' => 'Elastic',
],
]
],
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos,
give us a star
If you like Aimeos,

- ЕвгенияСемихова(ИПСемиховаЕ.А.)
- Posts: 70
- Joined: 11 Jan 2025, 09:45
Re: How to install gigacommerce (Elasticsearch) at second server
It is impossible to fully connect the ai-elastic extension without your help.
Have:
1) Completely newly installed Aimeos server (10.0.0.1, site.com );
2) Only "ai-elastic" extension is installed on the Aimeos server;
3) The second server was completely re-installed with Elasticsearch 8.17.1 (10.0.0.1, without domain binding, hosting the server in the Netherlands to avoid installation errors). Any connections are allowed in the settings and ssl is not checked.
---
What am I doing:
1) I have entered the following data in the file shop.php (password changed to ***):
2) Here is my configuration file from the Elasticsearch server:
at the time of submitting the command: "php artisan aimeos:setup", the following error is displayed:

At front:

Q#2: need I add this to shop.php too? So, need to add both part?
'es' => [ .....]
'es-stock' => [....]
and es-stock need have connection data to elastic again? At one shop.php file two connection with elasticsearch parameters at each?
Have:
1) Completely newly installed Aimeos server (10.0.0.1, site.com );
2) Only "ai-elastic" extension is installed on the Aimeos server;
3) The second server was completely re-installed with Elasticsearch 8.17.1 (10.0.0.1, without domain binding, hosting the server in the Netherlands to avoid installation errors). Any connections are allowed in the settings and ssl is not checked.
---
What am I doing:
1) I have entered the following data in the file shop.php (password changed to ***):
Code: Select all
<?php
$multishop = $multiroute = [];
$prefix = env( 'SHOP_MULTILOCALE' ) ? '{locale}/' : '';
if( env( 'SHOP_MULTISHOP' ) ) {
$multishop = ['routes' => [
'admin' => ['prefix' => 'admin', 'middleware' => ['web']],
'jqadm' => ['prefix' => 'admin/{site}/jqadm', 'middleware' => ['web', 'auth', 'verified']],
'graphql' => ['prefix' => 'admin/{site}/graphql', 'middleware' => ['web', 'auth', 'verified']],
'jsonadm' => ['prefix' => 'admin/{site}/jsonadm', 'middleware' => ['web', 'auth', 'verified']],
'jsonapi' => ['prefix' => '{site}/jsonapi', 'middleware' => ['web', 'api']],
'account' => ['prefix' => $prefix . '{site}/profile', 'middleware' => ['web', 'auth', 'verified']],
'default' => ['prefix' => $prefix . '{site}/shop', 'middleware' => ['web']],
'basket' => ['prefix' => $prefix . '{site}/shop', 'middleware' => ['web']],
'checkout' => ['prefix' => $prefix . '{site}/shop', 'middleware' => ['web']],
'confirm' => ['prefix' => $prefix . '{site}/shop', 'middleware' => ['web']],
'supplier' => ['prefix' => $prefix . '{site}/s', 'middleware' => ['web']],
'page' => ['prefix' => $prefix . '{site}/p', 'middleware' => ['web']],
'home' => ['prefix' => $prefix . '{site}', 'middleware' => ['web']],
'update' => ['prefix' => '{site}'],
] ];
}
if( env( 'SHOP_MULTIROUTE' ) ) {
$multiroute = [
'client' => [
'html' => [
'catalog' => [
'multiroute' => true,
'detail' => [
'url' => [
'target' => 'aimeos_resolve',
'filter' => ['d_name', 'd_prodid', 'd_pos'],
],
],
'lists' => [
'url' => [
'target' => 'aimeos_resolve',
'filter' => [],
],
],
'tree' => [
'url' => [
'target' => 'aimeos_resolve',
'filter' => ['f_name', 'f_catid'],
],
],
],
'cms' => [
'page' => [
'url' => [
'target' => 'aimeos_resolve',
],
],
]
]
]
];
}
return array_replace_recursive( $multiroute, $multishop + [
'apc_enabled' => false, // enable for maximum performance if APCu is available
'apc_prefix' => 'aimeos:', // prefix for caching config and translation in APCu
'num_formatter' => 'Locale', // locale based number formatter (alternative: "Standard")
'pcntl_max' => 4, // maximum number of parallel command line processes when starting jobs
'version' => env( 'APP_VERSION', 1 ), // shop CSS/JS file version
'roles' => ['admin', 'editor'], // user groups allowed to access the admin backend
'panel' => 'dashboard', // panel shown in admin backend after login
'routes' => [
// Docs: https://aimeos.org/docs/latest/laravel/extend/#custom-routes
// Multi-sites: https://aimeos.org/docs/latest/laravel/customize/#multiple-shops
'admin' => ['prefix' => 'admin', 'middleware' => ['web']],
'jqadm' => ['prefix' => 'admin/{site}/jqadm', 'middleware' => ['web', 'auth']],
'graphql' => ['prefix' => 'admin/{site}/graphql', 'middleware' => ['web', 'auth']],
'jsonadm' => ['prefix' => 'admin/{site}/jsonadm', 'middleware' => ['web', 'auth']],
'jsonapi' => ['prefix' => 'jsonapi', 'middleware' => ['web', 'api']],
'account' => ['prefix' => $prefix . 'profile', 'middleware' => ['web', 'auth']],
'default' => ['prefix' => $prefix . 'shop', 'middleware' => ['web']],
'basket' => ['prefix' => $prefix . 'shop', 'middleware' => ['web']],
'checkout' => ['prefix' => $prefix . 'shop', 'middleware' => ['web']],
'confirm' => ['prefix' => $prefix . 'shop', 'middleware' => ['web']],
'supplier' => ['prefix' => $prefix . 's', 'middleware' => ['web']],
'page' => ['prefix' => $prefix . 'p', 'middleware' => ['web']],
'home' => ['prefix' => $prefix, 'middleware' => ['web']],
'update' => [],
],
'page' => [
// Docs: https://aimeos.org/docs/latest/laravel/extend/#adapt-pages
'account-index' => [ 'locale/select', 'basket/mini','catalog/tree','catalog/search','account/profile','account/review','account/subscription','account/basket','account/history','account/favorite','account/watch','catalog/session' ],
'basket-index' => [ 'locale/select', 'catalog/tree','catalog/search','basket/standard','basket/bulk','basket/related' ],
'catalog-count' => [ 'catalog/count' ],
'catalog-detail' => [ 'locale/select', 'basket/mini','catalog/tree','catalog/search','catalog/stage','catalog/detail','catalog/session' ],
'catalog-home' => [ 'locale/select','basket/mini','catalog/tree','catalog/search','catalog/home', 'cms/page' ],
'catalog-list' => [ 'locale/select','basket/mini','catalog/filter','catalog/tree','catalog/search','catalog/price','catalog/supplier','catalog/attribute','catalog/session','catalog/stage','catalog/lists' ],
'catalog-session' => [ 'locale/select','basket/mini','catalog/tree','catalog/search','catalog/session' ],
'catalog-stock' => [ 'catalog/stock' ],
'catalog-suggest' => [ 'catalog/suggest' ],
'catalog-tree' => [ 'locale/select','basket/mini','catalog/filter','catalog/tree','catalog/search','catalog/price','catalog/supplier','catalog/attribute','catalog/session','catalog/stage','catalog/lists' ],
'checkout-confirm' => [ 'catalog/tree','catalog/search','checkout/confirm' ],
'checkout-index' => [ 'locale/select', 'catalog/tree','catalog/search','checkout/standard' ],
'checkout-update' => [ 'checkout/update' ],
'supplier-detail' => [ 'locale/select','basket/mini','catalog/tree','catalog/search','supplier/detail','catalog/lists'],
'cms' => [ 'basket/mini','catalog/tree','cms/page' ],
],
'resource' => [
//add for connecting to elasticsearch
'es' => [
'hosts' => [
'1.1.220.222/:9200',
],
'index' => 'aimeos',
'SSLVerification' => false, // for self-signed certificates
'basicAuthentication' => ['elastic', '***'], // ElasticSearch 8+
'selectorClass' => '\Elasticsearch\ConnectionPool\Selectors\StickyRoundRobinSelector',
'settings' => [
'number_of_shards' => 5, // adapt to your needs
'number_of_replicas' => 0, // adapt to your needs
'max_result_window' => 10000, // maximum number of results retrieved
// 'refresh_interval' => -1, // for initial indexing only
],
// 'norefresh' => false, // for initial indexing only
],
//end of add for elasticsearch
'db' => [
'adapter' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.driver', 'mysql' ),
'host' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.host', '127.0.0.1' ),
'port' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.port', '3306' ),
'socket' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.unix_socket', '' ),
'database' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.database', 'forge' ),
'username' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.username', 'forge' ),
'password' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.password', '' ),
'stmt' => config( 'database.default', 'mysql' ) === 'mysql' ? ["SET SESSION sort_buffer_size=2097144; SET NAMES 'utf8mb4'; SET SESSION sql_mode='ANSI'"] : [],
'limit' => 3, // maximum number of concurrent database connections
'defaultTableOptions' => [
'charset' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.charset' ),
'collate' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.collation' ),
],
'driverOptions' => config( 'database.connections.' . config( 'database.default', 'mysql' ) . '.options' ),
],
'fs' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => public_path(),
'baseurl' => rtrim(env('ASSET_URL', PHP_SAPI == 'cli' ? env('APP_URL') : ''), '/'),
],
'fs-media' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => public_path( 'aimeos' ),
'baseurl' => rtrim(env('ASSET_URL', PHP_SAPI == 'cli' ? env('APP_URL') : ''), '/') . '/aimeos',
],
'fs-mimeicon' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => public_path( 'vendor/shop/mimeicons' ),
'baseurl' => rtrim(env('ASSET_URL', PHP_SAPI == 'cli' ? env('APP_URL') : ''), '/') . '/vendor/shop/mimeicons',
],
'fs-theme' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => public_path( 'vendor/shop/themes' ),
'baseurl' => rtrim(env('ASSET_URL', PHP_SAPI == 'cli' ? env('APP_URL') : ''), '/') . '/vendor/shop/themes',
],
'fs-admin' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => storage_path( 'admin' ),
],
'fs-export' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => storage_path( 'export' ),
],
'fs-import' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => storage_path( 'import' ),
],
'fs-secure' => [
'adapter' => 'Standard',
'tempdir' => storage_path( 'tmp' ),
'basedir' => storage_path( 'secure' ),
],
'mq' => [
'adapter' => 'Standard',
'db' => 'db',
],
'email' => [
'from-email' => config( 'mail.from.address' ),
'from-name' => config( 'mail.from.name' ),
],
],
'admin' => [
'jqadm' => [
'api' => [
'openai' => [
'key' => env( 'SHOP_OPENAI_APIKEY' )
],
'translate' => [
'key' => env( 'SHOP_DEEPL_APIKEY' )
],
'removebg' => [
'key' => env( 'SHOP_REMOVEBG_APIKEY' )
],
]
]
],
'client' => [
'html' => [
'basket' => [
'cache' => [
// 'enable' => false, // Disable basket content caching for development
],
],
'common' => [
'cache' => [
// 'force' => true // enforce caching for logged in users
],
],
'catalog' => [
'lists' => [
'basket-add' => true, // shows add to basket in list views
// 'infinite-scroll' => true, // load more products in list view
// 'size' => 48, // number of products per page
],
'selection' => [
'type' => [// how variant attributes are displayed
'color' => 'radio',
'length' => 'radio',
'width' => 'radio',
],
],
],
],
],
'controller' => [
'frontend' => [
'catalog' => [
'levels-always' => 3 // number of category levels for mega menu
]
]
],
'i18n' => [
'en' => [
'client' => [
'Suppliers' => ['Brands']
]
]
],
'madmin' => [
'cache' => [
'manager' => [
// 'name' => 'None', // Disable caching for development
],
],
'log' => [
'manager' => [
// 'loglevel' => 7, // Enable debug logging into madmin_log table
],
],
],
'mshop' => [
//start add for elasticsearch
'index' => [
'manager' => [
'name' => 'Elastic', // Only if products are not in DB
// 'name' => 'ElasticIndex', // If products exist in DB
'attribute' => [
'name' => 'Elastic',
],
'catalog' => [
'name' => 'Elastic',
],
'price' => [
'name' => 'Elastic',
],
'supplier' => [
'name' => 'Elastic',
],
'text' => [
'name' => 'Elastic',
],
]
],
//others line
// Only if products are not in DB
'product' => [
'manager' => [
'name' => 'Elastic',
'lists' => [
'name' => 'Elastic',
'type' => [
'name' => 'Elastic',
],
],
'property' => [
'name' => 'Elastic',
'type' => [
'name' => 'Elastic',
],
],
'type' => [
'name' => 'Elastic',
],
]
],
// Only if products are not in DB
'stock' => [
'manager' => [
'name' => 'Elastic',
'type' => [
'name' => 'Elastic',
],
]
],
//end of add for elasticsearch
'locale' => [
// 'site' => '<custom site code>', // used instead of "default"
]
],
'command' => [
],
'frontend' => [
],
'backend' => [
],
] );
Code: Select all
# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
# Before you set out to tweak and tune the configuration, make sure you
# understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
cluster.name: my-application
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
node.name: node1
#
# Add custom attributes to the node:
#
node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
path.data: /var/lib/elasticsearch
#
# Path to log files:
#
path.logs: /var/log/elasticsearch
#
# ----------------------------------- Memory -----------------------------------
#
# Lock the memory on startup:
#
#bootstrap.memory_lock: true
#
# Make sure that the heap size is set to about half the memory available
# on the system and that the owner of the process is allowed to use this
# limit.
#
# Elasticsearch performs poorly when the system is swapping the memory.
# ---------------------------------- Network -----------------------------------
#
# By default Elasticsearch is only accessible on localhost. Set a different
# address here to expose this node on the network:
#
network.host: 0.0.0.0
#
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200. Set a specific HTTP port here:
#
http.port: 9200
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
discovery.seed_hosts: ["host1", "host2"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
#cluster.initial_master_nodes: ["node-1", "node-2"]
#
# For more information, consult the discovery and cluster formation module documentation.
#
# ---------------------------------- Various -----------------------------------
#
# Allow wildcard deletion of indices:
#
#action.destructive_requires_name: false
#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------
#
# The following settings, TLS certificates, and keys have been automatically
# generated to configure Elasticsearch security features on 11-02-2025 08:40:04
#
# --------------------------------------------------------------------------------
# Enable security features
xpack.security.enabled: true
xpack.security.enrollment.enabled: true
# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
enabled: false
keystore.path: certs/http.p12
# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
enabled: true
verification_mode: certificate
keystore.path: certs/transport.p12
truststore.path: certs/transport.p12
# Create a new cluster with the current node only
# Additional nodes can still join the cluster later
cluster.initial_master_nodes: ["4236331-ipsemikhova"]
# Allow HTTP API connections from anywhere
# Connections are encrypted and require user authentication
http.host: 0.0.0.0
# Allow other nodes to join the cluster from anywhere
# Connections are encrypted and mutually authenticated
#transport.host: 0.0.0.0
#----------------------- END SECURITY AUTO CONFIGURATION -------------------------

At front:

Q#2: need I add this to shop.php too? So, need to add both part?
'es' => [ .....]
'es-stock' => [....]
and es-stock need have connection data to elastic again? At one shop.php file two connection with elasticsearch parameters at each?
Debian 12, PHP 8.3, Server 1 = Aimeos 2024.10.13, Server 2 = ES 8.17.1
life is full of many new and interesting things
life is full of many new and interesting things
Re: How to install gigacommerce (Elasticsearch) at second server
This is your error:
It must be:
The slash (/) is wrong and leads to not connecting to port 9200. The ElasticSearch server should be close to your web server in terms of latency. If they are far away, it increases the round trip time for the requests and slows down you shop.
Code: Select all
'es' => [
'hosts' => [
'194.87.220.222/:9200',
],
Code: Select all
'es' => [
'hosts' => [
'194.87.220.222:9200',
],
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos,
give us a star
If you like Aimeos,

- ЕвгенияСемихова(ИПСемиховаЕ.А.)
- Posts: 70
- Joined: 11 Jan 2025, 09:45
Re: How to install gigacommerce (Elasticsearch) at second server
I think my error was at "/" in shop.php:

Now "php artisan aimeos:setup" was finish without errors and site is working good. Need to understand how I can check all - is this the finish for connection gigacommerce?
UPD: yes, error was at "/", thanks
Dear Aimeos, how I can check it? By URL? By logs at Elasticsearch server?
I don't have enough air to breathe from the anticipation of victory (for me personally, this is a big victory)

Now "php artisan aimeos:setup" was finish without errors and site is working good. Need to understand how I can check all - is this the finish for connection gigacommerce?
UPD: yes, error was at "/", thanks
Dear Aimeos, how I can check it? By URL? By logs at Elasticsearch server?
I don't have enough air to breathe from the anticipation of victory (for me personally, this is a big victory)
Debian 12, PHP 8.3, Server 1 = Aimeos 2024.10.13, Server 2 = ES 8.17.1
life is full of many new and interesting things
life is full of many new and interesting things
- ЕвгенияСемихова(ИПСемиховаЕ.А.)
- Posts: 70
- Joined: 11 Jan 2025, 09:45
Re: How to install gigacommerce (Elasticsearch) at second server
dear, I understand that. At first test time I work for my own errors and expirience. Step by step I write my own instruction. And then I'll build ideal system.The ElasticSearch server should be close to your web server in terms of latency. If they are far away, it increases the round trip time for the requests and slows down you shop.
also have some questions about working scheme, if you not angry - can I ask from time to time?
Your sistem are very very amaizing! It's perfect, I think - all is clear and very stable, and very beautiful!
Debian 12, PHP 8.3, Server 1 = Aimeos 2024.10.13, Server 2 = ES 8.17.1
life is full of many new and interesting things
life is full of many new and interesting things
Re: How to install gigacommerce (Elasticsearch) at second server
To test connection latency, you can use the ping command from the CLI.ЕвгенияСемихова(ИПСемиховаЕ.А.) wrote: ↑11 Feb 2025, 10:52 Need to understand how I can check all - is this the finish for connection gigacommerce?
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos,
give us a star
If you like Aimeos,
