Wir haben über den Prozess der Erstellung eines Webdienstes und die Gliederung der Dienstgliederung gesprochen. Weitere Informationen finden Sie hier "Der Weg zur Erstellung von Webdiensten (Teil 1)".
Dieses Mal werde ich die Arbeit zum Aufbau der Serverumgebung veröffentlichen. Die Arbeitsinhalte sind wie folgt. ・ Installation des Betriebssystems ・ JDK-Installation -Installation und automatische Starteinstellungen von Tomcat und Apache httpd -Web Application Manager-Einstellungen für die einfache Bereitstellung in Tomcat ・ Zusammenarbeit zwischen Tomcat und Apache httpd Ermöglicht die Übergabe der Verarbeitung an Tomcat durch Zugriff auf Apache
Warum haben Sie Apache anstelle des trendigen Nginx gewählt? Das liegt daran, dass ich aufgrund der Berücksichtigung des Service-Inhalts und der Funktionalität dieser Zeit Apache für vorzuziehen hielt. Nginx scheint geschaffen worden zu sein, um das C10K-Problem von Apache zu lösen, aber dieser Dienst ist kein Dienst, auf den 10.000 Personen gleichzeitig zugreifen können. Und obwohl der ereignisgesteuerte Nginx weniger Speicher benötigt und schneller ist, hat er von Anfang an nicht viele Funktionen. Da Apache von Anfang an über zahlreiche Funktionen als Webserver verfügt, dachte ich, dass es für mich, der unerfahren ist, einfach sein würde, ihn ohne Arbeit zu erstellen.
Installieren Sie CentOS 7.4 auf VMware
Befolgen Sie die Schritte unter dem obigen Link, um CentOS auf VMware zu installieren. Normalerweise verwende ich CentOS als Hauptbetriebssystem. Es kann Ubuntu sein, wenn es beliebt ist, aber da Linux in erster Linie nur für Serverzwecke verwendet wird, wird die GUI nicht hauptsächlich verwendet. Daher finde ich Ubuntu nicht attraktiv. Außerdem fühle ich mich unwohl mit Ubuntu, das häufig aktualisiert wird. CentOS ist ein RHEL-Klon, der ein Gefühl der Stabilität hat und häufig von Unternehmen für den Einsatz in Unternehmen verwendet wird. Daher möchte ich mich für die Zukunft daran gewöhnen. Der Hauptgrund ist jedoch, dass es am einfachsten ist, RHEL im Feld zu verwenden.
# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
Erstellen Sie aus Sicherheitsgründen einen dedizierten Benutzer für Tomcat, ohne eine Anmeldeshell zu erstellen
# useradd -s /sbin/nologin tomcat
# cd /opt
# wget http://ftp.riken.jp/net/apache/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz
Sie können es mit yum installieren, aber tomcat7 ist standardmäßig installiert. Sie können die neueste Version installieren, indem Sie das yum-Repository bearbeiten. Dies ist jedoch problematisch. Laden Sie das Paket daher direkt herunter und entpacken Sie es.
# tar -xvzf apache-tomcat-9.0.8.tar.gz
Verwalten Sie das Tomcat-Verzeichnis mit symbolischen Links unter Berücksichtigung von Versionsänderungen
# ln -s /opt/apache-tomcat-9.0.8 /opt/tomcat
Folgende Inhalte wurden hinzugefügt
# vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre
export CATALINA_HOME=/opt/tomcat
Reflektieren
# source /etc/profile
Reflexionsbestätigung
# /opt/tomcat/bin/version.sh
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/9.0.8
Server built: Apr 27 2018 19:32:00 UTC
Server number: 9.0.8.0
OS Name: Linux
OS Version: 3.10.0-693.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_171-b10
JVM Vendor: Oracle Corporation
Überprüfen Sie die aktuellen Einstellungen
# firewall-cmd --list-services --zone=public --permanent
ssh dhcpv6-client
Fügen Sie hier Kater hinzu
Servicezusatz Erstellen Sie eine neue Datei und fügen Sie den folgenden Inhalt hinzu
# vi /etc/firewalld/services/tomcat.xml
Reflektieren Sie die Einstellungen
# firewall-cmd --add-service=tomcat --zone=public --permanent
# firewall-cmd --reload
Bestätigung
# firewall-cmd --list-services --zone=public --permanent
ssh dhcpv6-client tomcat
SELINUX wurde deaktiviert
# vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
Starten Sie neu
# reboot
Überprüfen Sie die Einstellungen nach dem Neustart
# getenforce
Disabled
# /opt/tomcat/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/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Tomcat started.
Bestätigen Sie den Start mit dem Browser http://localhost:8080
Erstellen Sie eine Tomcat-Servicedatei mit einer neuen Datei
# vi /etc/systemd/system/tomcat.service
[Unit] Description=Apache Tomcat 9 After=network.target
[Service] User=tomcat Group=tomcat Type=oneshot PIDFile=/opt/tomcat/tomcat.pid RemainAfterExit=yes
ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh ExecReStart=/opt/tomcat/bin/shutdown.sh;/opt/tomcat/bin/startup.sh
[Install] WantedBy=multi-user.target
Reflektieren
Autostart aktiviert
Benutzer, Gruppe in Kater geändert
Bestätigung des automatischen Starts
Überprüfen Sie den Status nach dem Neustart. Muss aktiv sein.
● tomcat.service - Apache Tomcat 9 Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled) Active: active (exited)
Überprüfen Sie für alle Fälle die Anzeige mit einem PC-Browser
http://[IPアドレス]:8080
### Einstellungen des Webanwendungsmanagers
Ermöglichen Sie die Bereitstellung und Verwaltung von Webanwendungen über die GUI.
Fügen Sie der Datei die folgende Beschreibung hinzu. * XXXX ist der Administratorname und der Pfad, den Sie festlegen möchten
#### **`# vi /opt/tomcat/conf/tomcat-users.xml `**
```xml
Ermöglicht den Zugriff von externen Terminals. Derzeit kann nur von localhost aus darauf zugegriffen werden. Ändern Sie daher die Zulassungseinstellung.
# vi /opt/tomcat/webapps/manager/META-INF/context.xml
Starten Sie neu und spiegeln Sie die Einstellungen wider
Zugang von außen
http://IPアドレス:8080/manager/html
[![https://gyazo.com/fd312f8dc485aa6a6e44b7270cc5b0a7](https://i.gyazo.com/fd312f8dc485aa6a6e44b7270cc5b0a7.png)](https://gyazo.com/fd312f8dc485aa6a6e44b7270cc5b0a7)
Wenn es sicher angezeigt wird, ist es OK
### Installieren und Konfigurieren von Apache httpd
Installation
Bestätigung
Server version: Apache/2.4.6 (CentOS) Server built: Apr 20 2018 18:10:38
Firewall-Einstellungen
Apache Autostart-Einstellungen
Überprüfen Sie die Einstellungen
Stellen Sie sicher, dass es aktiviert ist
● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: inactive (dead)
Bestätigung des Servicestarts
Überprüfen Sie den Status nach dem Neustart
● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: active (running)
### Zusammenarbeit zwischen Apache und Tomcat mithilfe des AJP-Protokolls
Stellen Sie sicher, dass das AJP-Protokoll eingestellt ist
#### **`# view /opt/tomcat/conf/server.xml`**
```xml
Modulfreigabeeinstellung Überprüfen Sie die folgenden zwei Module. Wenn es kommentiert ist, nehmen Sie einen Kommentar.
# vi /etc/httpd/conf.modules.d/00-proxy.conf
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
Allein damit habe ich es nur aktiviert und eine Einstellung hinzugefügt, um alle Apache-httpd-Anforderungen an Tomcat zu übergeben.
ProxyPass / ajp://localhost:8009/
Starten Sie Apache httpd neu und bestätigen Sie den Start
[![https://gyazo.com/2fe182fbafc4bd9b07cbbe83609221ed](https://i.gyazo.com/2fe182fbafc4bd9b07cbbe83609221ed.png)](https://gyazo.com/2fe182fbafc4bd9b07cbbe83609221ed)
Stellen Sie sicher, dass es von Apache httpd übergeben wird und Tomcat gestartet werden kann, ohne den Port auf 8080 zu setzen
Für diese Arbeit war der externe Zugriff des Webanwendungsmanagers von tomcat der entscheidende Punkt. Die meisten Einstellungsdateien wurden am falschen Ort gespeichert, und ich habe mich mit meinem erfahrenen Chef beraten und es schließlich gelöst.
Damit ist der Aufbau der serverseitigen Umgebung abgeschlossen. In Bezug auf die Datenbank ist auch das Tabellendesign involviert, daher werden wir dies zum Zeitpunkt der Java-Entwicklung gemeinsam tun.
Nächstes Mal werde ich die Arbeit um HTML und Bootstrap zusammen veröffentlichen.
Recommended Posts