Bilgi Bankası: Linux
Apache Tomcat Kurulumu (Tomcat 8.0.20 & CentOS 6)
Posted by Veri Merkezi Operasyonları(287) on 19 March 2015 11:19 AM

Apache Tomcat Nedir?
Apache Tomcat, Java Servlet ve Java Server Pages (.JSP) teknolojileri için geliştirilen açık kaynak kodlu Apache‘nin bir alt projesi olan bir uygulama sunucusudur. Apache Tomcat sunucusu, JSP dilinde yazılmış betikleri derlemek için JDK (Java Development Kit) paketine ihtiyaç duyar. JDK için, open source (açık kaynak) OpenJDK ve Sun tarafından geliştirilen Java-JDK pakatleri mevcuttur. Bu yazıda Oracle Java JDK 1.8.0_40 ( jdk-8u40 ) kullanılmaktadır. Apache Tomcat, varsayılan olarak TCP 8080 Port'unu kullanmaktadır. 

Servlet Nedir?
Servlet, dinamik içerik üreten bir Java web bileşeni ve jsp sayfasının java koduna çevrilmiş halidir. Yazılan her .jsp sayfası java koduna çevrilmekte (servlet) ve o sayfa istendiğinde servlet (java kodu) çalıştırılıp onun çıktısı web tarayıcılarına gönderilmektedir.

Java Server Pages Nedir?
Java Server Pages, dinamik web sayfaları oluşturmak için kullanılan bir Java teknolojisidir. JSP (Java Server Page) HTML dili içine ve özel taglar kullanarak " <% %> " yazılır. JSP, Servlet uzantısıdır. HTML içerisine yazdığımız JSP kodları sunucuda Servlet’e çevirilir.

Bu yazıda Linux CentOS 6 üzerinde Apache Tomcat 8.0.20 ve Oracle Java JDK 1.8.0_40 kurulumu anlatılmaktadır.

Kuruluma başlamadan önce sunucunuzda güncelleme bekleyen bir paket var mı kontrol ediniz ve eğer bulunuyorsa ilgili paketleri güncelleyiniz. Bunun haricinde Apache Tomcat varsayılan port'u (TCP 8080) için NAT RULE ekleyiniz. Eğer Tomcat varsayılan port'un dışında bir port'ta çalıştırıyorsanız erişim için Yeni Port numarasını da NAT RULE eklemeniz gerekmektedir. DorukNET Azure Pack platformunda aşağıdaki adımlarla NAT RULE ekleyebilirsiniz.

http://destek.doruk.net.tr/staff/index.php?/Knowledgebase/ViewKnowledgebase/Article/199/42

Web archive (WAR) Nedir?
WAR dosyası, java web uygulamalarını içeren sıkıştırılmış bir dosya biçimidir. WAR dosyaları bir web uygulaması için HTML, JSP, Servlet ve kaynak dosyalarından oluşabilir. Eclipse ve benzeri bir java geliştirme platformu üzerinden uygulamanızı WAR formatında dışarı aktarabilirsiniz.

# Paket Güncelleme
yum update

DorukNET Azure Pack platformu üzerinde oluşturulan Linux sunucular minimal olarak hazırlandığı için ilgili sunucularda temel paketler kurulu bulunmaktadır. Bu nedenle Tomcat ve Java kurulumu sırasında kullanılacak wget, unzip gibi paketlerin kurulumu gerçekleştirilmelidir.

yum install wget unzip -y

# Oracle Java JDK Kurulumu
Aşağıdaki adresten güncel JDK 'yı kontrol ederek sunucunuza indiriniz. (Paket türü olarak Linux x64 seçiniz.)
http://www.oracle.com/technetwork/java/javase/downloads/index.html

Tarafımızdan yapılan kurulumda Java SE Development Kit 8u40 kullanılmaktadır. İlgili dosyayı indirmek için JAVA Ev dizini olarak kullanmak üzere " /usr/java " dizini oluşturunuz. Eğer farklı bir dizin oluşturmak istiyorsanız dökümantasyondaki ilgili alanları yeni dizine değiştirmeniz gerekmektedir.

mkdir /usr/java && cd /usr/java/
wget http://download.oracle.com/otn-pub/java/jdk/8u40-b26/jdk-8u40-linux-x64.tar.gz?AuthParam=1426775841_d5459357f0f7a1944b3fc674591d74b5
# Java JDK 'nın güncel sürümünü aşağıdaki adresten indiriniz.
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

tar -xzvf jdk-*
rm -fv *.tar.gz*
mv jdk1.8.0_40/* .

# JAVA_HOME (Ev dizinini) Path'e eklemek için aşağıdaki komutları sırasıyla çalıştırınız.

JAVA_HOME=/usr/java/
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH

# JAVA_HOME 'i aşağıdaki komutla test ediniz.
echo $JAVA_HOME

# JAVA_HOME (Java Ev Dizinini)'u kalıcı olarak ayarlamak için

vi /etc/profile.d/javahome.sh

JAVA_HOME=/usr/java/
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH

chmod +x /etc/profile.d/javahome.sh
source /etc/profile.d/javahome.sh

# Apache Tomcat 8 Kurulumu
Aşağıdaki adresten Apache Tomcat indirmek için mirror seçiniz. Tarafımızdan yapılan kurulumda Türkiye'den bir mirror kullanılacaktır. Şu an Apache Tomcat için güncel sürüm 8.0.20 'dir. İlgili adresten bu sürümden daha güncel Apache Tomcat bulunuyorsa ilgili dosyayı indirebilirsiniz.
http://tomcat.apache.org/download-80.cgi

cd /opt
wget ftp://ftp.itu.edu.tr/Mirror/Apache/tomcat/tomcat-8/v8.0.20/bin/apache-tomcat-8.0.20.zip
unzip apache-tomcat-8.0.20.zip
mv apache-tomcat-8.0.20 tomcat
rm -f apache-tomcat-8.0.20.zip

Tomcat; bir dizi bileşenden oluşur, Tomcat JSP engine’ini ve farklı çeşitlerde connector’leri içerir, ana bileşeni Catalina’dır. Catalina, Tomcat’in servlet şartnamesini fiziki olarak uygulamasını sağlar; Tomcat sunucusunu başlattığınızda, aslında Catalina çalıştırılır. Aşağıdaki adımlarla Catalina için Ev dizini ( CATALINA_HOME ) oluşturulmalıdır.

CATALINA_HOME=/opt/tomcat
PATH=$CATALINA_HOME/bin:$PATH
export PATH CATALINA_HOME
export CLASSPATH=.

# CATALINA_HOME 'u (Tomcat) aşağıdaki komutla test ediniz.
echo $CATALINA_HOME

# CATALINA_HOME 'u kalıcı olarak ayarlamak için

vi /etc/profile.d/script.sh

#!/bin/bash
CATALINA_HOME=/opt/tomcat
PATH=$CATALINA_HOME/bin:$PATH
export PATH CATALINA_HOME
export CLASSPATH=.

chmod +x /etc/profile.d/script.sh
source /etc/profile.d/script.sh

# Tomcat 'i Start / Stop / Restart için

chmod +x $CATALINA_HOME/bin/startup.sh
chmod +x $CATALINA_HOME/bin/shutdown.sh
chmod +x $CATALINA_HOME/bin/catalina.sh

vi /etc/init.d/tomcat

#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/opt/tomcat

case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0


chmod +x /etc/init.d/tomcat

# Boot sonrasında servisin aktif kalması için
chkconfig --add tomcat
chkconfig --level 234 tomcat on

# Tomcat için chkconfig ayarlarınızı kontrol ediniz.
chkconfig --list tomcat

# Apache Tomcat Yönetimi (Servisi Başlatma / Durdurma / Yeniden Başlatma)

service tomcat start
service tomcat stop
service tomcat restart

# Tomcat Kullanıcı ayarları için
mv $CATALINA_HOME/conf/tomcat-users.xml /root/
vi $CATALINA_HOME/conf/tomcat-users.xml

# İlgili dosya "(tomcat-users.xml)" içerisine aşağıdaki bilgileri düzenleyerek yazabilirsiniz.

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<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="PAROLANIZI_BURAYA_YAZIN" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
</tomcat-users>

Tomcat Servisi başladığında sunucunuzun External IP adresinden Apache Tomcat dökümantasyon,  konfigurasyon ve örnek sayfalarına erişebilir, Tomcat yönetimini grafik arayüz kullanarak gerçekleştirebilir, virtual host tanımlamaları gerçekleştirebilirsiniz.  Aşağıdaki adımlarla Azure Pack Platformu üzerindeki External IP adresinizi görebilirsiniz.

http://destek.doruk.net.tr/staff/index.php?/Knowledgebase/ViewKnowledgebase/Article/209/42

Apache Tomcat 'i çalıştırdığınız Port üzerinden ( varsayılan TCP 8080 'dir ) Farklı bir Port kullanıyorsanız adresi buna göre değiştirmelisiniz.

http://External_IPniz:8080/

İlgili sayfada bulunan Documentation,  Configuration,  Examples  gibi sayfalardan Apache Tomcat dökümanlarına, konfigurasyon dosyalarına ve Servlets , JSP ve WebSocket örnek kodlarına erişebilirsiniz.

Bunun haricinde Server Status, Manager App, Host Manager gibi menülerden Tomcat server bilgilerine ( Tomcat version, Java Virtual Machine (JVM), jvm memory kullanımı, sunucuya gelen istekler vb. ) erişebilir, döküman, örnek kod sayfaları ( Servlets , JSP ve WebSocket) gibi özellikleri yönetebilir ( start / stop vb.) Virtual Host tanımları yapabilir ve yönetebilirsiniz.

MAJP (Apache JServ Protocol) Nedir?
http://tr.wikipedia.org/wiki/Apache_JServ_Protokol%C3%BC

Java Virtual Machine (JVM) Nedir?
https://java.com/tr/download/faq/whatis_java.xml 

Documentation sayfasından Top Level Elements, Executors, Containers, Nested Components, Cluster, web.xml gibi başlıklardan çeşitli dökümantasyonlara erişebilirsiniz.

Configuration sayfasından Tomcat Servlet / JSP konteyner davranışını yapılandırmak için conf/server.xml dosyasına dahil edilebilecek parametreler hakkında bilgi alabilirsiniz.

Examples, sayfasından Servlet , JSP, WebSocket gibi başlıklarda örnek kodları çalıştırabilir veya örnek kaynak kodlarını görüntüleyebilirsiniz.

Servlet örnekleri çalıştırma ve örnek kodları

JSP Kodları çalıştırma ve örnek kodları

WebSocket çalıştırma ( Echo, Chat Uygulaması, Multiplayer Snake Oyunu, Multiplayer Drawboard vb)

Server StatusManager AppHost Manager gibi menülerden Tomcat server bilgilerine ( Tomcat version, Java Virtual Machine (JVM), jvm memory kullanımı, sunucuya gelen istekler vb. ) erişebilir, döküman, örnek kod sayfaları ( Servlets , JSP ve WebSocket) gibi özellikleri yönetebilir ( start / stop vb.) Virtual Host tanımları yapabilir ve yönetebilirsiniz.

$CATALINA_HOME/conf/tomcat-users.xml  dosyasında tanımlanan kullanıcı bilgileri ile aşağıdaki sayfaya erişim sağlayabilirsiniz.

Açılan sayfada Applications sütunu altındaki docs, examples linklerinden örnek kodlara ve döküman sayfalarına ulaşabilir, host-manager linkinden yeni Virtual Host ekleyebilir, manager linkinden, WAR dosyanızı deploy edebilir, web uygulamalarınız için diagnostic çalıştırabilir, SSL connector konfigurasyonu yapabilir, ve server bilgilerinizi görüntüleyebilirsiniz

# Apache Tomcat varsayılan Port'un Değiştirilmesi
$CATALINA_HOME/conf/server.xml dosyası herhangi bir metin editörü vasıtasıyla açarak " Connector port="8080" protocol="HTTP/1.1 " olarak satırdaki Port'u değiştirebilirsiniz. Düzenleme sonrasında Apache Tomcat 'i restart ediniz.

/etc/init.d/tomcat stop

vi $CATALINA_HOME/conf/server.xml

/etc/init.d/tomcat start

Apache Tomcat için varsayılan Port'un değiştirilmesi sonrasında aşağıdaki komutla Tomcat 'in dinlediği yeni Port'u görüntüleyebilirsiniz.

netstat -nltp

http://destek.doruk.net.tr/staff/index.php?/Knowledgebase/ViewKnowledgebase/Article/226/44

(2 oy)
Bu makale yararlı
Bu makale yararlı değil

Yorumlar (0)
Yorum gönder
 
 
Tam İsim:
E-Posta:
Yorumlar:
Resim Doğrulama 
 
Lütfen alttaki resimde gördüğünüz karakterleri aşağıdaki kutucuğa girin. Bu özellik otomatik kayıt ve form gönderilerini engellemek için uygulanmaktadır.