GeoServer on AWS – PART 2 : Install Geoserver on AWS

25/01/2019 at 17 h 30 min

PVous pouvez retrouvez la première partie de cette série de tutoriels consacrée à l’installation de Geoserver sur AWS ici !

Maintenant que vous disposez d’un accès SSH (cf : première partie), il est temps de passer aux choses sérieuses ! Nous allons désormais voir comment installer Geoserver sur votre espace distant.

Pour commencer, établissez une connexion SSH avec votre instance AWS.

Update the system 

Une fois la session ouverte, nous allons tout d’abord mettre à jour le système :

sudo yum update

Install Tomcat

Geoserver fonctionnant avec Tomcat, nous allons installer Tomcat sur notre instance AWS :

sudo yum install tomcat7

Update Java

Faite la commande suivante :

java -version

Si vous obtenez ceci :

Cela signifie que vous allez devoir mettre à jour java. En effet, Tomcat ne fonctionne qu’avec la version 8 de java.

sudo yum install java-1.8.0
sudo yum remove java-1.7.0-openjdk

Revérifiez votre version de java afin de vous assurer que la version 8 est correctement installée.

Install Apache

sudo yum install httpd httpd-devel libtool autoconf.noarch 

Install Geoserver

Déplacer-vous vers le dossier ec2-user puis téléchargez Geoserver :

cd /home/ec2-user/
wget 'http://sourceforge.net/projects/geoserver/files/GeoServer/2.14.2/geoserver-2.14.2-war.zip'

Dézippez l’archive et installez géoserver :

unzip geoserver-2.14.2-war.zip
sudo chown tomcat:tomcat geoserver.war
sudo mv geoserver.war /var/lib/tomcat7/webapps/

Install mod_jk (facultatif)

mod_jk est un petit module qui va permettre de connecter Apache avec Tomcat. Vous pourriez avoir des problèmes CORS (Cross-origin resource sharing) par la suite si vous passez cette étape.

Commencez par créer un dossier mod_jk :

mkdir mod_jk

Puis téléchargez le connecteur à l’intérieur du dossier récemment créé :

cd mod_jk
wget http://apache.rediris.es/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.44-src.tar.gz

Enfin, procédez à l’installation :

tar xzf tomcat-connectors-1.2.44-src.tar.gz
cd tomcat-connectors-1.2.44-src/native
./buildconf.sh
./configure -with-apxs=/usr/sbin/apxs
make
sudo make install

Change permissions for tomcat roles

Vous allez désormais utiliser l’éditeur vim afin de modifier les permissions pour tomcat. Vim peut être un éditeur de texte relativement déroutant lorsque l’on n’est pas habitué à le manipuler.

Commencez par insérer cette commande, permettant d’avoir accès au fichier en question :

sudo vi /etc/tomcat7/tomcat-users.xml

Vous devriez apercevoir ceci :

Dirigez-vous tout en bas du document, puis appuyer sur i. Vous venez de passer en mode insert sur vim. Là, copier-coller le morceau de code ci-dessous :


<tomcat-users>   <role rolename=”tomcat”/>   <role rolename=”role1″/>   <role rolename=”manager-gui”/>   <role rolename=”admin-gui”/>   <user username=”admin” password=”password” roles=”manager-gui,admin-gui”/>   <user username=”tomcat” password=”tomcat” roles=”tomcat”/>   <user username=”both” password=”tomcat” roles=”tomcat,role1″/>   <user username=”role1″ password=”tomcat” roles=”role1″/> </tomcat-users>

Une fois cela fait, appuyez sur Echap pour sortir de la fonction insert, puis taper : x  (sans espace entre les deux caractères) et appuyer sur Entrée. Vous venez de sauvegarder les changements que vous avez réalisé sur le document.

Configure your Apache HTTP server (uniquement si vous avez installez mod_jk)

Restons avec vim et modifions désormais le fichier http.conf d’Apache :

sudo vim /etc/httpd/conf/httpd.conf

Dirigez vous tout en bas du document à l’aide des flèches de votre clavier. Puis, même manipulation que précédemment :

i pour insérer du texte > copier-coller le texte ci-dessous > Echap pour quitter le mode insertion > : x (sans espace entre les deux caractères) pour sauvegarder > Entrée pour quitter le document.  

# Load mod_jk module
# Update this path to match your modules location
LoadModule    jk_module  /usr/lib64/httpd/modules/mod_jk.so
# Where to find workers.properties
# Update this path to match your conf directory location (put workers.properties next to httpd.conf)
JkWorkersFile /etc/httpd/conf/workers.properties
# Where to put jk shared memory
# Update this path to match your local state directory or logs directory
JkShmFile     /var/log/httpd/mod_jk.shm
# Where to put jk logs
# Update this path to match your logs directory location (put mod_jk.log next to access_log)
JkLogFile     /var/log/httpd/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel    info
# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# Send everything for context /geoserver and /geoserver/* to worker named geoserver_worker (ajp13)
JkMount  /geoserver/* geoserver_worker
JkMount  /geoserver   geoserver_worker

Create workers.properties

Dernière ligne droite ! Copiez cette ligne : 

sudo vim /etc/httpd/conf/workers.properties

Puis, vous connaissez désormais la manipulation, insérer ce bloc de texte au début du document :

worker.list=geoserver_worker
# Define geoserver_worker
worker.geoserver_worker.port=8009
worker.geoserver_worker.host=localhost
worker.geoserver_worker.type=ajp13

Sauvegarder puis fermer le document.

Il ne nous reste plus qu’à démarrer les services Apache et Tomcat afin toutes nos modifications puissent être effectives

sudo /sbin/service httpd start
sudo /sbin/service tomcat7 start

Si vous avez suivi ce tutoriel pas à pas et que tout s’est bien déroulé pour vous, normalement, en vous rendant à l’adresse IP de votre instance en cours, vous devriez trouver cette page :

Enfin, rajoutez /geoserver à la suite de votre IP et… SURPRISE !



Pour commencer à travailler sur votre Geoserver , il vous suffit de vous connecter avec les identifiants suivants : username = admin et password = geoserver

Partager cet article