Установка Apache Tomcat 8 на сервер CentOS 7

Apache Tomcat – это сервер приложений, который используется для обслуживания приложений Java. Tomcat – это открытая реализация технологий Java Servlet и JavaServer Pages, выпущенная Apache Software Foundation. Данное руководство охватывает базовую установку и настойку Tomcat 8 на сервере CentOS 7.

Требования

Для выполнения руководства нужен не-рутовый пользователь с расширенными привилегиями; подробнее об этом можно прочесть в статье «Начальная настройка сервера CentOS 7».

В данном руководстве такой пользователь называется demo.

Установка Java

Для корректной работы Tomcat нужно установить Java, иначе код Java не будет выполняться. Установите OpenJDK 7 при помощи yum:

sudo yum install java-1.7.0-openjdk-devel

Подтвердите установку.

Обратите внимание: ярлык каталога JAVA_HOME, для которого нужно будет позже настроить Tomcat, находится в /usr/lib/jvm/jre.

Теперь язык Java установлен. Приступайте к созданию пользователя по имени tomcat, который понадобится для запуска сервиса Tomcat.

Создание пользователя Tomcat

В целях безопасности сервер Tomcat должен запускаться с правами обычного пользователя (т.е. не-рутового). Создайте нового пользователя и группу, которые будут запускать сервис Tomcat.

Чтобы создать группу:

sudo groupadd tomcat

Затем создайте пользователя tomcat, который должен состоять в группе tomcat. Домашний каталог пользователя – /opt/tomcat (в него будет установлен Tomcat); оболочка – /bin/false (чтобы никто не мог открыть учётную запись):

sudo useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat

Подготовив пользователя и группу, приступайте к установке Tomcat.

Установка Tomcat

На данный момент Tomcat 8 проще всего установить путём ручной настройки бинарного релиза.

Загрузка бинарных файлов Tomcat

Найдите последнюю доступную версию Tomcat на странице загрузки. На данный момент актуальной версией является 8.0.23. В разделе Binary Distributions найдите список Core и скопируйте ссылку на tar.gz.

Теперь загрузите бинарный дистрибутив в домашний каталог. Перейдите в домашний каталог:

cd ~

Используйте команду wget, добавив ссылку, чтобы загрузить архив Tomcat (ссылка может отличаться):

wget http://mirror.sdunix.com/apache/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz

Теперь нужно установить Tomcat в каталог /opt/tomcat. Для этого создайте каталог и извлеките в него архив:

sudo mkdir /opt/tomcat
sudo tar xvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1

После этого нужно установить соответствующие права на каталог.

Права пользователя tomcat

Пользователь tomcat должен иметь доступ к установке Tomcat.

Откройте каталог установки Tomcat:

cd /opt/tomcat

Дайте пользователю tomcat право на запись в каталоге conf и право на чтение файлов этого каталога:

sudo chgrp -R tomcat conf
sudo chmod g+rwx conf
sudo chmod g+r conf/*

Затем передайте пользователю tomcat права на каталоги work, temp и logs.

sudo chown -R tomcat work/ temp/ logs/

Настройка Systemd

Чтобы запустить Tomcat как сервис, нужно настроить файл Systemd.

Создайте и откройте unit-файл, запустив команду:

sudo vi /etc/systemd/system/tomcat.service

Внесите в него следующий код (можно изменить настройки распределения памяти, которые указаны в CATALINA_OPTS):

/etc/systemd/system/tomcat.service
# Systemd unit file for tomcat
[Unit] Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service] Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/jre
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID
User=tomcat
Group=tomcat
[Install] WantedBy=multi-user.target

Сохраните и закройте файл. При помощи этого скрипта сервер будет запускать сервис Tomcat как пользователя tomcat со всеми указанными настройками.

Теперь перезапустите Systemd, чтобы загрузить unit-файл Tomcat:

sudo systemctl daemon-reload

Запустите Tomcat как сервис при помощи команды systemctl:

sudo systemctl start tomcat

Чтобы сервис Tomcat запускался вместе с сервером, используйте:

sudo systemctl enable tomcat

Настройка Tomcat еще не завершена, но при необходимости вы можете получить доступ к стандартной проходной странице, открыв в браузере IP-адрес и порт 8080:

http://server_IP_address:8080

На экране появится стандартная проходная страница Tomcat.

Настройка веб-интерфейса управления Tomcat

Чтобы использовать поставляемый с Tomcat интерфейс, добавьте логин на сервер Tomcat. Отредактируйте файл tomcat-users.xml:

sudo vi /opt/tomcat/conf/tomcat-users.xml

Этот файл содержит инструкции по его настройке. Эти подсказки можно удалить, если они не нужны.

tomcat-users.xml excerpt
<tomcat-users>
...
</tomcat-users>

Теперь нужно добавить пользователя, который будет иметь доступ к manager-gui и admin-gui (поставляемые с Tomcat интерфейсы). Для этого можно использовать приведённый ниже пример (используйте более надёжные имя и пароль пользователя):

tomcat-users.xml — Admin User
<tomcat-users>
<user username="admin" password="password" roles="manager-gui,admin-gui"/>
</tomcat-users>

Сохраните и закройте файл tomcat-users.xml. Чтобы активировать изменения, перезапустите сервис Tomcat:

sudo systemctl restart tomcat

Доступ к веб-интерфейсу

Теперь сервер Tomcat запущен. Попробуйте открыть веб-интерфейс управления в браузере. Для этого откройте:

http://server_IP_address:8080

На экране появится страница, сообщающая:

If you’re seeing this, you’ve successfully installed Tomcat. Congratulations!

Также на этой странице есть ссылки на веб-приложения админа, для которых ранее была создана учётная запись администратора.

Теперь откройте Manager App, доступный по ссылке:

http://server_IP_address:8080/manager/html

Менеджер веб-приложений нужен для управления приложениями Java. Он позволяет запускать, перезапускать, останавливать и сворачивать приложения. Кроме того, он позволяет проводить диагностику приложений (например, обнаруживать утечки памяти). Также в конце страницы находится информация о сервере.

Теперь откройте Host Manager:

http://server_IP_address:8080/host-manager/html/

Страница Virtual Host Manager предназначена для управления виртуальными хостами; она позволяет добавлять виртуальные хосты для развёртывания приложений.

Заключение

Теперь сервер Tomcat полностью готов к обслуживанию приложений Java.

Tags: , , , , ,

2 комментария

Добавить комментарий