Nasazení webové aplikace v Javě do virtuálního počítače ve službě Azure Stack Hub
Můžete vytvořit virtuální počítač pro hostování webové aplikace v Javě ve službě Azure Stack Hub. V tomto článku nainstalujete, otevřete správné porty a nakonfigurujete server Apache Tomcat na virtuálním počítači s Linuxem ve službě Azure Stack Hub. Potom na server načtete soubor prostředku webové aplikace Java (WAR). Soubor WAR se používá k distribuci kolekce archivních souborů Java (JAR), komprimovaných souborů, které obsahují prostředky Jazyka Java, jako jsou třídy, text, obrázky, XML a HTML, a další prostředky, které se používají k poskytování webové aplikace.
Vytvoření virtuálního počítače
Podle pokynů v tématu Nasazení virtuálního počítače s Linuxem pro hostování webové aplikace ve službě Azure Stack Hub nastavte virtuální počítač ve službě Azure Stack Hub.
V podokně Sítě virtuálních počítačů se ujistěte, že jsou přístupné následující porty:
Port Protokol Popis 80 HTTP Protokol HTTP (Hypertext Transfer Protocol) je protokol, který se používá k doručování webových stránek ze serverů. Klienti se připojují prostřednictvím protokolu HTTP s názvem DNS nebo IP adresou. 443 HTTPS Protokol HTTPS (Hypertext Transfer Protocol Secure) je zabezpečená verze protokolu HTTP, která vyžaduje certifikát zabezpečení a umožňuje šifrovaný přenos informací. 22 SSH Secure Shell (SSH) je šifrovaný síťový protokol pro zabezpečenou komunikaci. Toto připojení použijete s klientem SSH ke konfiguraci virtuálního počítače a nasazení aplikace. 3389 Protokol RDP Nepovinný parametr. Protokol RDP (Remote Desktop Protocol) umožňuje připojení ke vzdálené ploše používat grafické uživatelské rozhraní na vašem počítači. 8080 Vlastní Výchozí port pro službu Apache Tomcat. U produkčního serveru směrujete provoz přes 80 a 443.
Instalace Javy
Připojte se k virtuálnímu počítači pomocí klienta SSH. Pokyny najdete v tématu Připojení přes SSH pomocí PuTTY.
Na příkazovém řádku Bash na virtuálním počítači spusťte následující příkaz:
sudo apt-get install default-jdk
Ověřte instalaci. Stále připojený k virtuálnímu počítači v relaci SSH spusťte následující příkaz:
java -version
Instalace a konfigurace tomcat
Připojte se k virtuálnímu počítači pomocí klienta SSH. Pokyny najdete v tématu Připojení přes SSH pomocí PuTTY.
Vytvořte uživatele Tomcat následujícím způsobem:
a. Spuštěním následujícího příkazu vytvořte novou skupinu Tomcat:
sudo groupadd tomcat
b. Vytvořte nového uživatele Tomcat. Přidejte tohoto uživatele do skupiny Tomcat s domovským adresářem /opt/tomcat. Tomcat nasadíte do tohoto adresáře:
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Nainstalujte Tomcat následujícím způsobem:
a. Získejte adresu URL pro tar pro nejnovější verzi Tomcat 8 ze stránky pro stažení Tomcat 8.
b. Pomocí cURL stáhněte nejnovější verzi pomocí odkazu. Spusťte následující příkazy:
cd /tmp curl -O <URL for the tar for the latest version of Tomcat 8>
c. Nainstalujte tomcat do adresáře /opt/tomcat . Vytvořte složku a otevřete archiv:
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/
Aktualizujte oprávnění pro Tomcat spuštěním následujících příkazů:
sudo chgrp -R tomcat /opt/tomcat sudo chmod -R g+r conf sudo chmod g+x conf
Vytvořte soubor systémové služby, abyste mohli spustit Tomcat jako službu.
a. Tomcat potřebuje vědět, kde jste nainstalovali Javu. Tato cesta se běžně označuje jako JAVA_HOME. Vyhledejte umístění spuštěním příkazu:
sudo update-java-alternatives -l
Výsledkem je něco podobného:
Output java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64
Hodnotu proměnné JAVA_HOME můžete vytvořit tak, že z výstupu vezmete cestu a přidáte /jre. Například pomocí předchozího příkladu /usr/lib/jvm/java-1.8.0-openjdk-amd64/jre.
b. Pomocí hodnoty ze serveru vytvořte soubor systémové služby:
sudo nano /etc/systemd/system/tomcat.service
c. Do souboru služby vložte následující obsah. V případě potřeby upravte hodnotu JAVA_HOME tak, aby odpovídala hodnotě, kterou jste našli v systému. Můžete také změnit nastavení přidělení paměti, která jsou zadaná v CATALINA_OPTS:
[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. Uložte soubor a zavřete ho.
e. Znovu načtěte proces démon systemd, aby věděl o vašem souboru služby:
sudo systemctl daemon-reload
f. Spusťte službu Tomcat:
sudo systemctl start tomcat
například Zadáním příkazu ověřte, že se spustila bez chyb:
sudo systemctl status tomcat
Ověřte server Tomcat. Tomcat používá k přijímání běžných požadavků port 8080. Spuštěním následujícího příkazu povolte provoz na tento port:
sudo ufw allow 8080
Pokud jste pro virtuální počítač Azure Stack Hub nepřidali příchozí pravidla portů , přidejte je teď. Další informace najdete v tématu Vytvoření virtuálního počítače.
Otevřete prohlížeč ve stejné síti jako azure Stack Hub a pak otevřete server yourmachine.local.cloudapp.azurestack.external:8080.
Stránka Apache Tomcat na vašem serveru se načte. Dále nakonfigurujete server tak, aby vám umožňoval přístup ke stavům serveru, aplikaci Správce a Správce hostitelů.
Povolte soubor služby, aby se tomcat automaticky spustí při restartování serveru:
sudo systemctl enable tomcat
Pokud si chcete povolit přístup k rozhraní pro správu webu, nakonfigurujte server Tomcat.
a. Upravte soubortomcat-users.xml a definujte roli a uživatele, abyste se mohli přihlásit. Definujte uživatele pro přístup
manager-gui
k aadmin-gui
.sudo nano /opt/tomcat/conf/tomcat-users.xml
b. Do oddílu
<tomcat-users>
přidejte následující prvky:<role rolename="tomcat"/> <user username="<username>" password="<password>" roles="tomcat,manager-gui,admin-gui"/>
Konečný soubor může vypadat například takto:
<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. Uložte soubor a zavřete ho.
Tomcat omezuje přístup k aplikacím Manager a Správce hostitelů na připojení přicházející ze serveru. Vzhledem k tomu, že instalujete Tomcat na virtuální počítač ve službě Azure Stack Hub, budete chtít toto omezení odebrat. Změňte omezení IP adres u těchto aplikací úpravou příslušných souborůcontext.xml .
a. Aktualizace context.xml v aplikaci Manager:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
b. Zakomentujte omezení IP adres a povolte připojení odkudkoli, nebo přidejte IP adresu počítače, který používáte pro připojení ke službě Tomcat.
<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. Uložte soubor a zavřete ho.
d. Aktualizujte context.xml aplikaci Správce hostitelů podobnou aktualizací:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
e. Uložte soubor a zavřete ho.
Pokud chcete aktualizovat server pomocí změn, restartujte službu Tomcat:
sudo systemctl restart tomcat
Otevřete prohlížeč ve stejné síti jako Azure Stack Hub a pak otevřete server yourmachine.local.cloudapp.azurestack.external:8080.
a. Pokud chcete zkontrolovat stav serveru Tomcat a ověřit, že máte přístup, vyberte Stav serveru.
b. Přihlaste se pomocí svých přihlašovacích údajů tomcat.
Vytvoření aplikace
Pro nasazení do Tomcatu budete muset vytvořit war. Pokud chcete jenom zkontrolovat své prostředí, najdete příklad WAR na webu Apache Tomcat.
Pokyny k vývoji aplikací v Javě v Azure najdete v tématu Sestavování a nasazování aplikací v Javě v Azure.
Nasazení a spuštění aplikace
Připojte se k virtuálnímu počítači pomocí klienta SSH. Pokyny najdete v tématu Připojení přes SSH pomocí PuTTY.
Pokud chcete aktualizovat server pomocí balíčku aplikace, zastavte službu Tomcat:
sudo systemctl stop tomcat
Abyste mohli zapisovat do složky webapps, přidejte uživatele FTP do skupiny Tomcat. Váš uživatel FTP je uživatel, který definujete při vytváření virtuálního počítače ve službě Azure Stack Hub.
sudo usermod -a -G tomcat <VM-user>
Pokud chcete vymazat složku webových aplikací a pak načíst nový nebo aktualizovaný soubor WAR, připojte se ke svému virtuálnímu počítači přes FileZilla. Pokyny najdete v tématu Připojení přes SFTP pomocí FileZilla.
a. Vymažte TOMCAT_HOME nebo webové aplikace.
b. Přidejte war do TOMCAT_HOME/webapps (například /opt/tomcat/webapps/).
Tomcat aplikaci automaticky rozbalí a nasadí. Můžete ho zobrazit pomocí názvu DNS, který jste vytvořili dříve. Příklad:
http://yourmachine.local.cloudapp.azurestack.external:8080/sample
Další kroky
- Přečtěte si další informace o vývoji pro Azure Stack Hub.
- Seznamte se s běžnými nasazeními služby Azure Stack Hub jako IaaS.
- Informace o programovacím jazyku Java a vyhledání dalších zdrojů informací pro Javu najdete v tématu Java.com.