Sunday, March 15, 2015

Deployment Tomcat/Webserver on EC2

Deploy server on EC2:

1. Preliminary Note

This tutorial is based on Ubuntu 14.04 server, so you should set up a basic Ubuntu 14.04 server installation before you continue with this tutorial. The system should have a static IP address. I use 192.168.0.100 as my IP address in this tutorial and server1.example.com as the hostname.

[to know how to create instance on EC2, go to: HERE]

2. Installation

To start the installation of Tomcat we need to first install java-1.7.0-openjdk, we will install it as follows:
apt-get install default-jdk

Check the version of java as follows:
java -version

root@server1:~# java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (IcedTea 2.5.1) (7u65-2.5.1-4ubuntu1~0.14.04.2)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
root@server1:~#
Proceeding further we need some essential packages:
apt-get install unzip wget

Now we will download the latest Tomcat version from its home page and install it as:
cd /opt
wget http://ftp.nluug.nl/internet/apache/tomcat/tomcat-8/v8.0.9/bin/apache-tomcat-8.0.9.zip
unzip apache-tomcat-8.0.9.zip
mv apache-tomcat-8.0.9 tomcat

Configure .bashrc:
vi ~/.bashrc

[...]
export JAVA_HOME=/usr/lib/jvm/default-java/
export CATALINA_HOME=/opt/tomcat/
Restart the bash, to make the changes affective as:
. ~/.bashrc

Again before starting Tomcat service, we will provide executable permissions to following files:
chmod +x $CATALINA_HOME/bin/startup.sh
chmod +x $CATALINA_HOME/bin/shutdown.sh
chmod +x $CATALINA_HOME/bin/catalina.sh

Now we need to start Tomcat service by using:
$CATALINA_HOME/bin/startup.sh

root@server1:~# $CATALINA_HOME/bin/startup.sh
Using CATALINA_BASE:   /opt/tomcat/
Using CATALINA_HOME:   /opt/tomcat/
Using CATALINA_TMPDIR: /opt/tomcat//temp
Using JRE_HOME:        /usr/lib/jvm/default-java/
Using CLASSPATH:       /opt/tomcat//bin/bootstrap.jar:/opt/tomcat//bin/tomcat-juli.jar
Tomcat started.
root@server1:~#
It will start the Tomcat server, we can also check by using:
netstat -an | grep 8080

[root@server1 ~]# netstat -an | grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN  
[root@server1 ~]#
Now we need to setup the user account. Finally we need to create user accounts to secure and access admin/manager pages. Edit conf/tomcat-users.xml file in your editor and paste inside <tomcat-users> </tomcat-users> tags
vi  $CATALINA_HOME/conf/tomcat-users.xml


[...]
<!--
  NOTE:  The sample user and role entries below are wrapped in a comment
  and thus are ignored when reading this file. Do not forget to remove
  <!.. ..> that surrounds them.
-->
<!--
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="role1" password="tomcat" roles="role1"/>
-->
 <role rolename="manager-gui"/>
 <role rolename="manager-script"/>
 <role rolename="manager-jmx"/>
 <role rolename="manager-status"/>
 <role rolename="admin-gui"/>
 <role rolename="admin-script"/>
 <user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
</tomcat-users>
In above configuration I have used username=admin and password=admin, you can make the changes as per your choice. Then we need to stop/start the Tomcat service
cd $CATALINA_HOME
./bin/catalina.sh stop

[root@server1 tomcat]# ./bin/catalina.sh stop
Using CATALINA_BASE:   /opt/tomcat
Using CATALINA_HOME:   /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
[root@server1 tomcat]#
Then start the service:
./bin/catalina.sh start

[root@server1 tomcat]# ./bin/catalina.sh start
Using CATALINA_BASE:   /opt/tomcat
Using CATALINA_HOME:   /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@server1 tomcat]#
Now access the page for login at http://192.68.0.100:8080

-----------------------------------------------------------------------------------

  • To Start server: <Tomcat Root>/bin>startup.sh
  • To Stop server: <Tomcat Root>/bin>shutdown.sh

No comments:

Post a Comment