Locale
Check if the locale ‘en_US.utf8’ is installed. You can check this under Debian Linux by using the following command
localedef --list-archive
To create a new locale you can use the following command:
dpkg-reconfigure locales
It is not required to set this locale as default system locale. It is just required to have it created within the system.
uLimit Settings
Please make sure that the ulimit (-u)
“max user processes” is large enough to support all running server processes.
Thread maximum per server: Tomcat: 300 Node Apache (MPM): 75 each CRSync: 25
Please note that each server process will also need internal threads that are not listed here.
An ulimit -u
of 600 should be enough for a default installation. If possible set the ulimit to a higher value.
3.8 License Key
You can obtain a license key by sending an inquiry to Gentics Customer Support (support@gentics.com). Please prepare th following information in order to receive a license key:
- IP-address of server
- Domain and port of installation
- Your name and name of your company
1 Installation description
- The installer will move the Node-directory to your root-Directory. Of course it is possible to install Gentics Content.Node in another directory than /Node but you have to provide a symbolic Link from /Node which targets to the real location of the installation. You can change the directory after the installation process has been finished.
- Two users (node and node_public) and two groups (node and node_public) will be added to your Linux system.
- Additional entries in crontab (for scheduler) will be added by the installation process.
- MySQL Dumps will be installed in the MySQL Server which you have to provide.
2 Debian Linux
2.1 Guided Installation
Please note that the install.sh script will only work with Debian Linux. Please contact Gentics Support if you want to install Gentics Content.Node on a different operating system.
Download the installation package tar.gz file from the Gentics Updatesite using the login gcn and your licensekey.
After extracting the package you will find a script named install.sh
in it’s root directory. Execute this script as “root”-user.
cd /opt/ wget https://gcn:1111-2222-3333-4444-5555-6666-7777-8888@updates.gentics.com/maven2/com/gentics/contentnode-package/5.12.0/contentnode-package-5.12.0.tar.gz tar xfv gcn5_package-5.12.0.tar.gz cd package ./install.sh
The installation script will prompt for host names and license keys.
After you finished the installation, your Gentics Content.Node will be available at http://
By entering the address in your browser you can check whether the system is online. You can use the nodectl
script to check Gentics Content.Node’s status or stop and start it’s processes.
2.2 Unattended Installation
./install.sh cms.gcn-testing.office 1111-2222-3333-4444-5555-6666-7777-8888
3 Red Hat Enterprise Linux / SUSE Linux Enterprise Server
Currently the install.sh script only supports Debian Linux. However a manual installation can be achieved on SLES/RHEL.
3.1 User Creation
groupadd node groupadd node_public useradd -d /Node -g node -G node_public node useradd -d /Node -g node_public node_public
3.2 Move files into place
cd /opt/ wget https://gcn:1111-2222-3333-4444-5555-6666-7777-8888@updates.gentics.com/maven2/com/gentics/contentnode-package/5.12.0/contentnode-package-5.12.0.tar.gz tar xfv gcn5_package-5.12.0.tar.gz cd package # Main Installation cp -ra Node / # Demo Content Files cp -ra dumps/dbfiles/* /Node/node/content/dbfiles/ chown node: /Node/node/content/dbfiles/*
3.3 Correct local file permissions
cd /Node ./dist_setperm.sh
3.4 Setup the Autostart
ln -s /Node/bin/nodectl /etc/init.d/nodectl # Enable nodectl for runlevels 2,3,4,5 or use the dependency boot system tool __insserv__ or by using __sysv-rc-conf__.
3.5 Setup locales
Make sure that the locale en_US.UTF-8 has been created
3.6 Compatibility libraries
Make sure that the ia32 compatibility libraries have been installed.
3.7 JVM and native libraries
Change the JVM and native libraries (Only applies when a 64 Bit system is used) Use uname -a to check whether you have a 32bit or 64bit system
# JVM unlink /Node/java ln -s /Node/jdk1.7.0_25_x64/ /Node/java # Fileutils unlink /Node/lib/libgtx_fileutils.so.1.0 ln -s /Node/.node/modules/content/files/libgtx_fileutils_64.so.1.0 /Node/lib/libgtx_fileutils.so.1.0
License Key
echo "1111-2222-3333-4444-5555-6666-7777-8888" > /Node/etc/tomcat/gentics/license.key chown node:node /Node/etc/tomcat/gentics/license.key
3.9 Gentics Content.Node Configuration
Replace the string REPLACESERVERNAME with your desired server name in the /Node/etc/httpd/sites-available/cms.conf file.
3.10 Memory configuration
The default system configuration will utilize around 2-4 GB memory for the MySQL Server, Apache Tomcat Server, Apache and caches. Information about memory configuration can be found in this FAQ (Only available in german language)
3.11 Insert MySQL Dumps
# Main Gentics Content.Node Database echo "CREATE DATABASE node_utf8" | mysql -u root cat /opt/package/dumps/node_utf8.sql | mysql -u root node_utf8 # Demo ContentRepository echo "CREATE DATABASE contentrepository" | mysql -u root cat /opt/package/dumps/contentrepository.sql | mysql -u root contentrepository # Demo Portal ContentRepository echo "CREATE DATABASE contentrepository_portal" | mysql -u root cat /opt/package/dumps/contentrepository_portal.sql | mysql -u root contentrepository_portal
3.12 Start the backend
/Node/bin/nodectl start
3.13 Crontab Entry
echo "# Gentics Content.Node Scheduler Task" >> /etc/crontab echo "* * * * * node /Node/bin/scheduler.sh >> /Node/node/log/scheduler.log 2>&1" >> /etc/crontab
4 Final steps
You should now be able to access the Gentics Content.Node login page. The /opt/package directory can be deleted.
- Memory Setting
Please take some time and adjust the memory settings for your new server. This is very important because it will enhance the performance and improve the usability for your editor. Details are documented in the memory and performance guide.
4.1 Additional steps
4.1.1 Memory Configuration
Please take some time and adjust the memory settings for your new server. This is very important because it will enhance the performance and improve the usability for your editor. Details are documented in the memory and performance guide.
4.1.2 Change the password of user node
4.1.3 Backup
Backup is neither part of your Gentics Content.Node installation, nor is Gentics responsible for consistency of your backups. Please refer to our documentation on how to set up a backup for Gentics Content.Node.
Be sure to set up a backup for Gentics Content.Node in case something goes wrong.
4.1.4 Testing Your Installation
Use this list as a basis to verify your installation:
- Check CMS-users: Try to access your system with default user node and password node. Change password after successful login.
- Check Publishing: Create a new page, upload a new image/file and edit a page, start publishing by using the Scheduler and check whether the publishing process is working.
- Check Contentmap: Change settings of a node and activate publishing in contentmap. After changing contents, these changes should be available in the local contentmap.
- Check Character Set: All default installations of Gentics Content.Node are based on UTF-8. In case your synchronized content repository contains character errors, check whether the database, tables and columns are really set to UTF-8.
4.1.5 Securing start/stop script
The main start stop script is /Node/bin/nodectl
/Node/bin/nodectl [command]
Here’s a table of @nodectl@’s parameters
Parameter | Description |
---|---|
status | display status information of Apache, Tomcat and MySQL |
start | starts Gentics Content.Node |
stop | stops Gentics Content.Node |
restart | restarts Gentics Content.Node |
Make sure your user has sufficient privileges when using nodectl. For this it is recommended that you install sudo on your server and add a custom rule file.
echo "node ALL=(root) NOPASSWD:/etc/init.d/nodectl" > /etc/sudoers.d/nodectl chmod 0440 /etc/sudoers.d/nodectl
We recommend you to keep the new created users (node and node_public) as local accounts and not to move these to a LDAP-Directory or something else.