Difference between revisions of "ECC"
| (8 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
{{Hardware | model = DELL SERVER PE R420 | {{Hardware | model = DELL SERVER PE R420 | ||
| cpu = (2x) Intel Xeon E5-2407 2,20GHz | | cpu = (2x) Intel Xeon E5-2407 2,20GHz | ||
| − | | ram = 128 | + | | ram = 128 GB |
| hdd = .. | | hdd = .. | ||
| network = 1 network interface, Intel PRO / 1000 MT Desktop (82540EM) – 1Gbit | | network = 1 network interface, Intel PRO / 1000 MT Desktop (82540EM) – 1Gbit | ||
| Line 7: | Line 7: | ||
| balancing = | | balancing = | ||
}} | }} | ||
| + | {{VM | os = CentOS 6.6 - x86_64 | ||
| + | | cpu = 2 Processors, 4 Cores 2.20GHz | ||
| + | | ram = 8 GB | ||
| + | | hdd = 68,36 GB (SAN/NAS configuration) | ||
| + | | network = 1 Gbit/s | ||
| + | | network required = no info available | ||
| + | }} | ||
| + | |||
| + | === Service Environment and Set-up on VM === | ||
| + | {| class="wikitable" | ||
| + | |+ Required Software | ||
| + | ! Software | ||
| + | ! Download | ||
| + | |- | ||
| + | | Apache 2 | ||
| + | | [http://www.apache.org/ Software-Link] | ||
| + | |- | ||
| + | | Mysql server 5 | ||
| + | | [https://www.mysql.com/downloads/ Software-Link] | ||
| + | |- | ||
| + | | PHP 5.4 | ||
| + | | [http://php.net/releases/5_4_0.php Software-Link] | ||
| + | |- | ||
| + | | Drupal 7 | ||
| + | | [https://www.drupal.org/about/drupal-7 Software-Link] | ||
| + | |- | ||
| + | | Nvd3 | ||
| + | | [https://github.com/novus/nvd3 Software-Link] | ||
| + | |} | ||
| + | |||
| + | ==== Software Licenses ==== | ||
| + | No software license needed | ||
| + | |||
| + | ==== OS Environment Variables ==== | ||
| + | No special settings required | ||
| + | |||
| + | ==== Installation ==== | ||
| + | ECC is essentially a custom drupal 7 theme. The installation procedure described below assumes that there is a backup sql file of the ECC database called ecompass.sql and a tar file containing the drupal files called ecompass.tar. | ||
| + | |||
| + | To create these two files from the current installation: | ||
| + | mysql -uroot -p ecompass >ecompass.sql | ||
| + | tar cvf ecompass.tar /var/www/html/ | ||
| + | |||
| + | ECC installation steps: | ||
| + | |||
| + | 1. Install Apache/PHP/Mysql | ||
| + | 2. Create a new database in Mysql (called ecompass) , and also create a new mysql user that has all privileges on the database | ||
| + | |||
| + | create database ecompass; | ||
| + | GRANT ALL PRIVILEGES ON ecompass.* to 'ecompassuser'@'localhost' IDENTIFIED BY 'ecompass-pass'; | ||
| + | use ecompass; | ||
| + | |||
| + | 3. Restore the Drupal database from the SQL file | ||
| + | |||
| + | use ecompass; | ||
| + | source ~/path/to/ecompass.sql | ||
| + | |||
| + | 4. Create a virtual host in apache for the ECC web app. Untar the contents of ecompass.tar in the virtual host root directory. Edit the /rootdirectory/sites/default/settings.php file and update the mysql user credentials. Example: | ||
| + | |||
| + | $databases = array ( | ||
| + | 'default' => | ||
| + | array ( | ||
| + | 'default' => | ||
| + | array ( | ||
| + | 'database' => 'ecompass', | ||
| + | 'username' => 'ecompassuser', | ||
| + | 'password' => 'ecompass-ass', | ||
| + | 'host' => 'localhost', | ||
| + | 'port' => '', | ||
| + | 'driver' => 'mysql', | ||
| + | 'prefix' => '', | ||
| + | ), | ||
| + | ), | ||
| + | ); | ||
| + | |||
| + | === Service Configuration === | ||
| + | |||
| + | ==== Configuration steps ==== | ||
| + | The CMS is based on [https://www.drupal.org/ Drupal] 7.x. and is installed at <code>/var/www/html</code>. There is a custom theme created and installed at <code>/var/www/html/sites/all/ecompass</code>. | ||
| + | |||
| + | The theme contains the CSS of the Cockpit and the custom templates/code of the site. | ||
| + | Custom templates: | ||
| + | * <code>node--sales_optimiser.tpl.php</code> | ||
| + | * <code>node--price_monitor.tpl.php</code> | ||
| + | * <code>node--visitor_profiler.tpl.php</code> | ||
| + | * <code>node--product_characterisation.tpl.php</code> | ||
| + | * <code>node--price_monitor_configurator.tpl.php</code> | ||
| + | * <code>node--competitor_profiler.tpl.php</code> | ||
| + | * <code>node--dashboard.tpl.php</code> | ||
| + | |||
| + | Configuration of REST endpoints at: | ||
| + | <code>/var/www/html/sites/all/ecompass/functions.php</code> | ||
| + | |||
| + | === Operation === | ||
| + | ==== Service startup procedure ==== | ||
| + | * Apache (web server): <code>service httpd stop| start | restart</code> | ||
| + | * Mysql (mysql server): <code>service mysqld stop| start | restart</code> | ||
| + | |||
| + | ==== Restarting the service ==== | ||
| + | see above | ||
| + | |||
| + | ==== Service Logs ==== | ||
| + | no information available | ||
| + | |||
| + | ==== Recurring Manual Actions / Maintenance Tasks ==== | ||
| + | '''Maintenance tasks''' (Login as admin): | ||
| + | * User management: http://ecompass.exus.co.uk/admin/people | ||
| + | * Check for module updates: http://ecompass.exus.co.uk/admin/reports/updates/update | ||
| + | |||
| + | Module updates are performed using the url above, via the web interface. Always run the update script each time a module is updated: http://ecompass.exus.co.uk/update.php?op=info | ||
| + | |||
| + | The drupal core cannot be updated via the web interface. To update the drupal core follow the instructions at: https://www.drupal.org/node/1494290 | ||
| + | |||
| + | === Limitations of the service === | ||
| + | ; With which parameters does the service scale? | ||
| + | {{comment|How many concurrent E-Shops, how many concurrent products and how many users/E-Shop customers are possible without causing loss in quality/speed for the hardware described above?}} | ||
| + | : There is no limitation for the number of concurrent users. All information is stored in different back-ends and is transferred on demand via http rest services to the ECC. The problem is that the user may experience delays when a large amount of data is requested. | ||
| + | ; If higher scaling was wanted, which of the hardware parameters would need to be increased? | ||
| + | : Currently none of the hardware parameters is the bottleneck in the ECC performance. The bottleneck is the network. | ||
| + | ; What else would be adjusted for higher scalability? | ||
| + | : A solution would be to store the data in a central database (or a clustered database) and use SQL queries instead of http REST services. All data from the various services of the distributed Ecompass platform should be saved in a central database (or a clustered database). This solution would significantly speed up the ECC. | ||
| + | ; Which further configuration would be necessary? | ||
| + | : … | ||
| + | |||
| + | === Contact Information E-COMPASS Cockpit === | ||
| + | Odysseas Bournas, [mailto:obour@exus.co.uk obour@exus.co.uk], +30 2107450222 | ||
Latest revision as of 22:08, 28 December 2015
Contents
Physical Hardware Characteristics
| Model: | DELL SERVER PE R420 |
| Processor: | (2x) Intel Xeon E5-2407 2,20GHz |
| RAM: | 128 GB |
| Hard Drive Space: | .. |
| Network Connection: | 1 network interface, Intel PRO / 1000 MT Desktop (82540EM) – 1Gbit |
| Hypervisor used: | VirtualBox 5.0.8 |
| Physical Load Balancing: |
Virtual Machine Hardware Specifications and Operating System
| Guest Operating System: | CentOS 6.6 - x86_64 |
| Processor: | 2 Processors, 4 Cores 2.20GHz |
| RAM: | 8 GB GB |
| Hard Drive Space VM: | 68,36 GB (SAN/NAS configuration) |
| Network Connection: | 1 Gbit/s |
| Minimum required Network Connection: | no info available |
Service Environment and Set-up on VM
| Software | Download |
|---|---|
| Apache 2 | Software-Link |
| Mysql server 5 | Software-Link |
| PHP 5.4 | Software-Link |
| Drupal 7 | Software-Link |
| Nvd3 | Software-Link |
Software Licenses
No software license needed
OS Environment Variables
No special settings required
Installation
ECC is essentially a custom drupal 7 theme. The installation procedure described below assumes that there is a backup sql file of the ECC database called ecompass.sql and a tar file containing the drupal files called ecompass.tar.
To create these two files from the current installation:
mysql -uroot -p ecompass >ecompass.sql tar cvf ecompass.tar /var/www/html/
ECC installation steps:
1. Install Apache/PHP/Mysql 2. Create a new database in Mysql (called ecompass) , and also create a new mysql user that has all privileges on the database
create database ecompass; GRANT ALL PRIVILEGES ON ecompass.* to 'ecompassuser'@'localhost' IDENTIFIED BY 'ecompass-pass'; use ecompass;
3. Restore the Drupal database from the SQL file
use ecompass; source ~/path/to/ecompass.sql
4. Create a virtual host in apache for the ECC web app. Untar the contents of ecompass.tar in the virtual host root directory. Edit the /rootdirectory/sites/default/settings.php file and update the mysql user credentials. Example:
$databases = array ( 'default' => array ( 'default' => array ( 'database' => 'ecompass', 'username' => 'ecompassuser', 'password' => 'ecompass-ass', 'host' => 'localhost', 'port' => , 'driver' => 'mysql', 'prefix' => , ), ), );
Service Configuration
Configuration steps
The CMS is based on Drupal 7.x. and is installed at /var/www/html. There is a custom theme created and installed at /var/www/html/sites/all/ecompass.
The theme contains the CSS of the Cockpit and the custom templates/code of the site. Custom templates:
node--sales_optimiser.tpl.phpnode--price_monitor.tpl.phpnode--visitor_profiler.tpl.phpnode--product_characterisation.tpl.phpnode--price_monitor_configurator.tpl.phpnode--competitor_profiler.tpl.phpnode--dashboard.tpl.php
Configuration of REST endpoints at:
/var/www/html/sites/all/ecompass/functions.php
Operation
Service startup procedure
- Apache (web server):
service httpd stop| start | restart - Mysql (mysql server):
service mysqld stop| start | restart
Restarting the service
see above
Service Logs
no information available
Recurring Manual Actions / Maintenance Tasks
Maintenance tasks (Login as admin):
- User management: http://ecompass.exus.co.uk/admin/people
- Check for module updates: http://ecompass.exus.co.uk/admin/reports/updates/update
Module updates are performed using the url above, via the web interface. Always run the update script each time a module is updated: http://ecompass.exus.co.uk/update.php?op=info
The drupal core cannot be updated via the web interface. To update the drupal core follow the instructions at: https://www.drupal.org/node/1494290
Limitations of the service
- With which parameters does the service scale?
How many concurrent E-Shops, how many concurrent products and how many users/E-Shop customers are possible without causing loss in quality/speed for the hardware described above?
- There is no limitation for the number of concurrent users. All information is stored in different back-ends and is transferred on demand via http rest services to the ECC. The problem is that the user may experience delays when a large amount of data is requested.
- If higher scaling was wanted, which of the hardware parameters would need to be increased?
- Currently none of the hardware parameters is the bottleneck in the ECC performance. The bottleneck is the network.
- What else would be adjusted for higher scalability?
- A solution would be to store the data in a central database (or a clustered database) and use SQL queries instead of http REST services. All data from the various services of the distributed Ecompass platform should be saved in a central database (or a clustered database). This solution would significantly speed up the ECC.
- Which further configuration would be necessary?
- …
Contact Information E-COMPASS Cockpit
Odysseas Bournas, obour@exus.co.uk, +30 2107450222