Java-webalkalmazás üzembe helyezése virtuális gépen az Azure Stack Hubban
Létrehozhat egy virtuális gépet (VM) a Java-webalkalmazás Azure Stack Hubban való üzemeltetéséhez. Ebben a cikkben telepíti, megnyitja a megfelelő portokat, és konfigurál egy Apache Tomcat-kiszolgálót egy Linux rendszerű virtuális gépen az Azure Stack Hubban. Ezután betölt egy Java webalkalmazás-erőforrásfájlt (WAR) a kiszolgálóra. A WAR-fájlok java archív (JAR) fájlok gyűjteményének, a Java-erőforrásokat tartalmazó tömörített fájlok, például osztályok, szövegek, képek, XML és HTML-fájlok, valamint a webalkalmazások kézbesítéséhez használt egyéb erőforrások terjesztésére szolgálnak.
Virtuális gép létrehozása
Állítsa be a virtuális gépet az Azure Stack Hubban a Linux rendszerű virtuális gép üzembe helyezése webalkalmazások azure Stack Hubban való üzemeltetéséhez című témakörben található utasítások szerint.
A virtuális gép hálózati paneljén győződjön meg arról, hogy a következő portok érhetők el:
Port Protokoll Description 80 HTTP A Hypertext Transfer Protocol (HTTP) a weblapok kiszolgálókról történő továbbítására használt protokoll. Az ügyfelek HTTP-kapcsolaton keresztül csatlakoznak DNS-névvel vagy IP-címmel. 443 HTTPS A Hypertext Transfer Protocol Secure (HTTPS) a HTTP biztonságos verziója, amely biztonsági tanúsítványt igényel, és lehetővé teszi az információk titkosított továbbítását. 22 SSH A Secure Shell (SSH) egy titkosított hálózati protokoll a biztonságos kommunikációhoz. Ezt a kapcsolatot egy SSH-ügyféllel használja a virtuális gép konfigurálásához és az alkalmazás üzembe helyezéséhez. 3389 RDP Választható. A Távoli asztali protokoll (RDP) lehetővé teszi, hogy egy távoli asztali kapcsolat grafikus felhasználói felületet használjon a számítógépen. 8080 Egyéni Az Apache Tomcat szolgáltatás alapértelmezett portja. Éles kiszolgáló esetén a forgalmat a 80-on és a 443-on keresztül irányíthatja.
Java telepítése
Csatlakozzon a virtuális géphez az SSH-ügyfél használatával. Útmutatásért lásd: Csatlakozás SSH-val a PuTTY használatával.
Futtassa a következő parancsot a virtuális gép bash parancssorában:
sudo apt-get install default-jdk
Ellenőrizze a telepítést. Az SSH-munkamenetben továbbra is csatlakozik a virtuális géphez, futtassa a következő parancsot:
java -version
A Tomcat telepítése és konfigurálása
Csatlakozzon a virtuális géphez az SSH-ügyfél használatával. Útmutatásért lásd: Csatlakozás SSH-val a PuTTY használatával.
Hozzon létre egy Tomcat-felhasználót a következő módon:
a. Hozzon létre egy új Tomcat-csoportot a következő parancs futtatásával:
sudo groupadd tomcat
b. Hozzon létre egy új Tomcat-felhasználót. Adja hozzá ezt a felhasználót a Tomcat csoporthoz a /opt/tomcat kezdőkönyvtárával. A Tomcatet ebben a könyvtárban helyezi üzembe:
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Telepítse a Tomcatet a következő módon:
a. A Tomcat 8 legújabb verziójához tartozó tar URL-címét a Tomcat 8 letöltési oldaláról szerezheti be.
b. A cURL használatával töltse le a legújabb verziót a hivatkozás használatával. Futtassa az alábbi parancsot:
cd /tmp curl -O <URL for the tar for the latest version of Tomcat 8>
c. Telepítse a Tomcatet a /opt/tomcat könyvtárba . Hozza létre a mappát, majd nyissa meg az archívumot:
sudo mkdir /opt/tomcat sudo tar xzvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1 sudo chown -R tomcat webapps/ work/ temp/ logs/
Frissítse a Tomcat engedélyeit a következő parancsok futtatásával:
sudo chgrp -R tomcat /opt/tomcat sudo chmod -R g+r conf sudo chmod g+x conf
Hozzon létre egy rendszerezett szolgáltatásfájlt, hogy szolgáltatásként futtathassa a Tomcatet.
a. A Tomcatnek tudnia kell, hol telepítette a Java-t. Ezt az elérési utat gyakran JAVA_HOME néven is említik. Keresse meg a helyet a következő futtatásával:
sudo update-java-alternatives -l
Ez a következőhöz hasonló eredményt ad:
Output java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64
A JAVA_HOME változó értékét úgy hozhatja létre, hogy a kimenetből veszi az elérési utat, és hozzáadja a /jre értéket. Használja például az előző példát: /usr/lib/jvm/java-1.8.0-openjdk-amd64/jre.
b. A kiszolgáló értékének használatával hozza létre a rendszerezett szolgáltatásfájlt:
sudo nano /etc/systemd/system/tomcat.service
c. Illessze be a következő tartalmat a szolgáltatásfájlba. Szükség esetén módosítsa a JAVA_HOME értékét, hogy megfeleljen a rendszerben talált értéknek. Érdemes lehet módosítani a CATALINA_OPTS megadott memórialefoglalási beállításokat is:
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/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=/opt/tomcat/bin/shutdown.sh User=tomcat Group=tomcat UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
d. Mentse és zárja be a fájlt.
e. Töltse be újra a systemd démont, hogy tudjon a szolgáltatásfájlról:
sudo systemctl daemon-reload
f. Indítsa el a Tomcat szolgáltatást:
sudo systemctl start tomcat
: Ellenőrizze, hogy hiba nélkül indult-e el a következő beírással:
sudo systemctl status tomcat
Ellenőrizze a Tomcat-kiszolgálót. A Tomcat a 8080-s portot használja a hagyományos kérések elfogadásához. Engedélyezze a portra történő forgalmat a következő parancs futtatásával:
sudo ufw allow 8080
Ha még nem adta hozzá az Azure Stack Hub virtuális gép bejövő portszabályát , vegye fel őket most. További információ: Virtuális gép létrehozása.
Nyisson meg egy böngészőt az Azure Stack Hubbal azonos hálózaton, majd nyissa meg a kiszolgálót( yourmachine.local.cloudapp.azurestack.external:8080).
A kiszolgáló Apache Tomcat oldala betöltődik. Ezután úgy konfigurálja a kiszolgálót, hogy hozzáférjen a Kiszolgáló állapota, a Kezelő alkalmazás és a Gazdagépkezelő eléréséhez.
Engedélyezze a szolgáltatásfájlt, hogy a Tomcat automatikusan elinduljon a kiszolgáló újraindításakor:
sudo systemctl enable tomcat
A webfelügyeleti felülethez való hozzáférés engedélyezéséhez konfigurálja a Tomcat-kiszolgálót.
a. Szerkessze a tomcat-users.xml fájlt, és adjon meg egy szerepkört és egy felhasználót, hogy bejelentkezhesse. Határozza meg a felhasználót, hogy hozzáférhessen a és
admin-gui
amanager-gui
fájlhoz.sudo nano /opt/tomcat/conf/tomcat-users.xml
b. Adja hozzá a következő elemeket a
<tomcat-users>
szakaszhoz:<role rolename="tomcat"/> <user username="<username>" password="<password>" roles="tomcat,manager-gui,admin-gui"/>
Az utolsó fájl például a következőhöz hasonló lehet:
<tomcat-users xmlns="http://tomcat.apache.org/xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd" version="1.0"> <role rolename="tomcat"/> <user username="tomcatuser" password="changemepassword" roles="tomcat,manager-gui,admin-gui"/> </tomcat-users>
c. Mentse és zárja be a fájlt.
A Tomcat a kiszolgálóról érkező kapcsolatokra korlátozza a Manager és a Host Manager alkalmazáshoz való hozzáférést. Mivel a Tomcatet egy Azure Stack Hubbeli virtuális gépre telepíti, el kell távolítania ezt a korlátozást. Ezen alkalmazások IP-címkorlátozásait a megfelelő context.xml fájlok szerkesztésével módosíthatja.
a. Frissítse context.xml a Manager alkalmazásban:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
b. Tegye megjegyzésbe az IP-cím korlátozását, hogy bárhonnan engedélyezze a kapcsolatokat, vagy adja hozzá annak a gépnek az IP-címét, amellyel a Tomcathez csatlakozik.
<Context antiResourceLocking="false" privileged="true" > <!--<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />--> </Context>
c. Mentse és zárja be a fájlt.
d. Frissítse context.xml a Gazdagépkezelő alkalmazást egy hasonló frissítéssel:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
e. Mentse és zárja be a fájlt.
Ha frissíteni szeretné a kiszolgálót a módosításokkal, indítsa újra a Tomcat szolgáltatást:
sudo systemctl restart tomcat
Nyisson meg egy böngészőt az Azure Stack Hubbal azonos hálózaton, majd nyissa meg a kiszolgálót: yourmachine.local.cloudapp.azurestack.external:8080.
a. A Tomcat-kiszolgáló állapotának áttekintéséhez és a hozzáférés ellenőrzéséhez válassza a Kiszolgáló állapota lehetőséget.
b. Jelentkezzen be a Tomcat hitelesítő adataival.
Alkalmazás létrehozása
Létre kell hoznia egy WAR-t a Tomcatben való üzembe helyezéshez. Ha csak a környezetet szeretné ellenőrizni, az Apache Tomcat webhelyén talál egy példát a WAR-ra.
A Java-alkalmazások Azure-beli fejlesztésével kapcsolatos útmutatásért lásd: Java-alkalmazások létrehozása és üzembe helyezése az Azure-ban.
Az alkalmazás üzembe helyezése és futtatása
Csatlakozzon a virtuális géphez az SSH-ügyféllel. Útmutatásért lásd: Csatlakozás SSH-val a PuTTY-val.
A kiszolgáló alkalmazáscsomaggal való frissítéséhez állítsa le a Tomcat szolgáltatást:
sudo systemctl stop tomcat
Ha a webapps mappába szeretne írni, adja hozzá FTP-felhasználóját a Tomcat csoporthoz. Az FTP-felhasználó az a felhasználó, amelyet a virtuális gép Azure Stack Hubban történő létrehozásakor határoz meg.
sudo usermod -a -G tomcat <VM-user>
A webapps mappa törléséhez, majd az új vagy frissített WAR betöltéséhez csatlakozzon a virtuális géphez a FileZilla használatával. Útmutatásért lásd: Csatlakozás SFTP-vel a FileZilla használatával.
a. Törölje a TOMCAT_HOME/webalkalmazásokat.
b. Adja hozzá a WAR-t TOMCAT_HOME/webalkalmazásokhoz (például /opt/tomcat/webapps/).
A Tomcat automatikusan kiterjeszti és üzembe helyezi az alkalmazást. Ezt a korábban létrehozott DNS-névvel tekintheti meg. Például:
http://yourmachine.local.cloudapp.azurestack.external:8080/sample
Következő lépések
- További információ az Azure Stack Hub fejlesztéséről.
- Ismerje meg az Azure Stack Hub IaaS-ként történő gyakori üzembe helyezését.
- A Java programozási nyelv megismeréséhez és a Java további erőforrásainak megkereséséhez lásd: Java.com.