unix服务器java配置_在UNIX中安装和配置开发Web服务器

在你开始前

了解对本教程的期望以及如何最大程度地利用本教程。

关于本教程

因此,您是否想要(或需要)安装功能齐全的应用程序服务器以开发,测试,部署和调整Java™2平台企业版(J2EE™)应用程序? 或者,也许您只是想学习一些新知识,因此您决定建立自己的应用程序服务器环境。 你从哪里开始?

无论您是出于何种动机,如果您正在阅读本教程,则可能会熟悉网站的工作原理,以及从浏览器访问应用程序(域,代码,Web)所需的最低公分母。浏览器,数据库等)。 只要您了解基础知识,需要Web或应用程序服务器,可以访问UNIX服务器并希望学习有关Web服务器管理的一三件事,本教程就适合您。

目标

在本教程中,您将找到:

  • 对Apache Tomcat和UNIX的介绍,以及开始所需要的内容。
  • 企业与独立Web架构的比较。
  • 如何从头开始设置UNIX服务器,以准备安装Web或应用程序服务器。
  • 有关如何安装和启动Tomcat Web服务器的详细分步说明。
  • 有关设置对Tomcat Web应用程序管理器的访问的信息。
  • 部署示例应用程序的说明。
  • 其他资源。

所有这一切,同时慢慢塑造你。 。 。 从头开始—快速地将您变成初学者UNIX管理员。

先决条件

本教程假定您已经安装了所选的基本UNIX操作系统。 要运行本教程中的示例,您还必须安装并运行Tomcat版本6。

系统要求

您的服务器应至少有10GB的可用硬盘空间和至少512MB的RAM。 在开始之前,需要在UNIX服务器上安装以下附加工具:

  • Web浏览器:任何浏览器都可以。
  • Java 2 Standard Edition运行时环境(JRE)发行版5.0或更高版本: Apache Tomcat版本6需要JRE。
  • C编译器:不幸的是,此类编译器没有随附针对Solaris和IBM®AIX®之类的基础UNIX构建。 请参阅链接到GNU GCC文章相关信息以获取更多信息。
  • 文件提取工具:在您的服务器,你可能会需要gunziptarbzcat ,并且可能GNU maketargmakegtar -适用于从下载GNU站点 )正确地提取文件。

    要检查服务器上已经在运行哪些工具,请运行以下命令:

    cd /usr
    Find . –name *.tar (repeat for *make, *zip, etc.)
  • Tomcat代码:在继续之前,您需要从Apache下载站点下载Tomcat版本6代码。 将tar.gz文件保存到服务器。

Tomcat和UNIX

本教程的目的不是为您提供有关Tomcat的所有方面的权威指南,而是使您具有与独立开发或测试服务器环境有关的扎实知识基础。 如果您有这样的基础,可以根据需要将其扩展到成熟的企业环境中。

为什么选择Tomcat?

为什么要使用Tomcat而不是JBoss,Geronimo或WebSphere Application Server Express等替代方案之一?

Tomcat 6本身就是一个轻量级的解决方案。 它不具有JBoss,Geronimo和IBMWebSphere®Application Server Express中提供的所有Java平台,企业版(Java EE)功能和其他软件包,但它并不需要太多内存,即使在较小的服务器上也可以快速运行。 。 另外,它是免费提供的。

Tomcat是JavaServer™Pages(JSP)/ servlet容器,仅支持基本Java应用程序服务器功能。 它缺乏可伸缩性和Java EE版本5合规性,这就是为什么仅在生产环境中很少使用它的原因。

如果要在企业环境中使用新服务器,则最明显的UNIX风格是AIX和Solaris。 实际上,Solaris具有最高的企业市场份额百分比。 其他UNIX选项包括FreeBSD和Mac OSX。

Tomcat的UNIX和Windows®安装

可以在Windows计算机上运行本教程中的示例。 通过为Windows平台开发,Apache社区在仅迎合UNIX多年后就做了礼貌。 但是,根据您要检查的统计信息,超过90%的Web服务器体系结构解决方案都使用Apache Web Server及其后续产品。 无需过多讨论,UNIX即可提供WindowsServer®操作系统无法比拟的纯多用户操作系统的稳定性,安全性和简单性。

就是说,如果您决定使用Windows,则在继续之前,应注意UNIX和Windows之间在Tomcat设置方面的一些差异:

  • 在UNIX服务器上提取初始安装文件可能需要bzcatgunziptargtar 。 Windows Server计算机通常使用WinZip或类似的实用程序。
  • 在UNIX服务器上,PATH设置更为公开。 Windows仍然使用路径 ,但是其中很多是在幕后或在安装软件时自动进行。
  • 在UNIX设置和配置中,权限注意事项更为重要。 UNIX服务器强大的安全性也是造成问题的唯一主要原因:权限问题。 最初安装软件时,您需要适当的权限才能将该软件写入基本操作系统的文件系统(/ var,/ tmp等)。 此外,将各种内部和外部软件组件连接到UNIX服务器时,请始终注意权限注意事项。 始终考虑ID,组和适当的访问权限。
  • 在Windows中,安装基于图形用户界面(GUI),而UNIX传统上使用命令行界面(CLI)。 随着Gnome和其他图形环境(包括日益流行的Mac OS X 10.5 Leopard)的变化,这种情况有所改变。 但是,纯粹主义者总是会向CLI发誓。 此外,这是最好的学习方式。
  • Windows将.bat文件用于自动批处理,并将.exe文件用于可执行文件。 UNIX默认情况下将.sh或.ksh扩展文件用于可执行脚本,等等。 .sh或.ksh格式取决于您使用的shell。

Tomcat版本

每个发行版中都包含许多修复程序,调整,新功能或执行旧任务的新方法,有时很难决定要使用哪个软件版本。 在Tomcat中,您会遇到相同的问题。 我建议查看表1中的详细信息,以使您的管理服务器与J2EE规范相匹配,该规范针对您正在部署的应用程序进行了编码。

表1.与Tomcat版本有关的JSP规范
JSP规范 Tomcat版本
2.5 / 2.1 6.0.x
2.4 / 2.0 5.5.x
2.3 / 1.2 4.1.x
2.2 / 1.1 3.3.x(已存档)

决定软件版本的另一种非技术方法是坚持使用要使用的软件的最新稳定版本。 通常,您可以获得所有最新的安全修复程序和功能。

架构概述

了解Tomcat的局限性以及如何设置典型的企业环境。

局限性

您的Tomcat安装是否仅需要在开发环境中是一台服务器? 那不是很有限吗? 是的,事实上! Tomcat实际上已经下载了数百万次,并且在生产环境中成功运行了许多知名的网站。 但是,它有其局限性。

商业软件产品(尤其是IBM WebSphere Application Server)在生产环境中的使用要优越得多,这主要是因为完全符合J2EE规范,附加功能和安全性。 如果要在功能齐全的生产环境中实施Tomcat,仍然可以使用本教程来建立基础。

企业环境

图1所示的企业体系结构或多或少准确地描述了当您在浏览器中按Enter键时可能在幕后看到的内容。 该体系结构由经常出现的元素组成,我见过这些元素为全国各地的客户工作,包括IBM和美国空军花费数百万美元的关键任务应用程序。 接下来的部分在图1中的每个区域展开。

图1.示例企业架构
示例企业架构
A.网络的守护者

通常,您的网络会受到保护-路由器或防火墙,然后是将Web请求与适当的域相匹配的代理服务器(具体来说是反向代理)。 在请求到达网络中的第一台服务器之前,前端IBMTivoli®Access Manager(TAM)/ TAM WebSEAL服务器级别可能存在认证甚至授权级别,这很可能受到非军事区的保护( DMZ)。

B. Web服务器

接下来是Web服务器。 请注意,所有这些服务器都可能具有垂直和水平故障转移,这意味着在每个级别克隆的单独硬件,甚至可能在软件级别重复。 当您的Web服务器传递Web请求并完成提供静态内容的工作时,您可能会具有另一层网络调度程序(ND),或者至少具有一个插件(例如IBM HTTP Server [IHS])插件)执行其他路由。

C.应用程序服务器(Servlet引擎)

现在,您有了一个J2EE引擎(WebSphere Application Server),它可能由Web或servlet容器以及一个Enterprise JavaBean(EJB)容器组成,用于处理基本和高级Java功能以及业务逻辑。 您可能有多个适配器可以做很多事情,包括连接Web服务和IBM WebSphere MQ消息。 而且,通常情况下,您有一个数据库连接池可以连接到MySQL,IBMDB2®或Oracle后端。

当您将潜在的连接绑定到轻型目录访问协议(LDAP)服务器甚至旧式服务器时,您就拥有了真正的n层体系结构。 现在,看一下入门Web服务器环境。

开发环境

图2的假设下,它基于单个UNIX操作系统上的单服务器安装,该操作系统也具有通过浏览器访问Internet的某种方式。 该服务器将容纳您的Tomcat安装,各种操作系统级别的工具以及(可能)您自己的本地数据库,或者至少存储在本地存储库(本地目录结构)中的软件和应用程序代码。

注意:当我说Tomcat 服务器时,是在谈论整个容器。

图2.示例独立服务器架构
独立的Tomcat服务器

尽管这看上去并不像真正的企业体系结构,但是您至少将能够从服务器复制基本的应用程序功能。 您非常有限,但是出于所有目的和目的,您将此安装视为示例测试开发服务器,或者如果您是管理员,则只能将其用作沙箱服务器。

您可以选择在Tomcat安装中设置并运行一个单独的Apache HTTP Server前端,但是出于本教程的目的,我们不建议这样做,因为它需要更多的开销以及更多的管理和设置。 您还需要mod_jk模块,必须设置适当的路由,依此类推。

无论哪种方式,在继续安装和配置之前,让我们继续一些常见问题。

准备服务器

通过配置变量,编辑配置文件,创建用户等来准备服务器。

设定路径

除了必须在服务器上安装的工具之外,您还需要正确设置外壳程序的所有PATH变量设置。 PATH变量告诉Shell在哪里寻找某些软件安装,工具等。

JAVA_HOME

首先,您必须根据发行版随附的说明安装JRE。 我通常选择使用完整的Java软件开发套件(JDK),而不仅仅是JRE。 如果也这样做,请将JAVA_HOME环境变量设置为安装JDK的目录的路径名(例如,/ usr / local / java / j2sdk5.0)。 使用以下代码来设置您的JAVA_HOME变量:

bash-3.00# export JAVA_HOME=/usr/jdk/instances/jdk1.5.0

您还可以运行:

JAVA_HOME=/usr/bin/java; export JAVA_HOME'

(实际上没有区别)。

输入echo命令以再次检查该命令是否有效:

bash-3.00# echo $JAVA_HOME
/usr/jdk/instances/jdk1.5.0
CATALINA_HOME(Tomcat的默认主目录)

CATALINA_HOME用于引用发布目录的完整路径名。 使用以下代码在服务器上设置此变量:

bash-3.00# export CATALINA_HOME=/opt/apache-tomcat-6.0.16

此代码专门与您已安装的Tomcat版本有关。 如有疑问,请以您提取的.tar文件命名,因为它带有名称中的正确版本。

在您的用户下编辑外壳程序和配置文件

您可能已经注意到,在命令示例中我有一些对Bash的引用。 不必担心无聊的细节,登录到UNIX的用户用尽了服务器上的Shell,即可执行CLI,该CLI允许他们导航和管理服务器。 这与其他操作系统没有什么不同,但是更加灵活,因为您可以通过键入诸如Bourne shell( sh )或Bourne-again shell( bash )之类的内容来定义该Shell。

此外,根据您使用的外壳,您可以编辑CLI的自定义外壳配置文件,以自动设置PATH变量,甚至别名字符来表示服务器上有用的常用命令。 为此,请编辑.bashrc,.profile(bash shell中的默认设置)等。 使用vi编辑器创建此文件,然后在您的root,个人或Tomcat特定的用户ID下进行适当的编辑,以确保每次登录服务器时都会设置PATH变量。

在主目录下,使用标准UNIX编辑器vi创建.profile文件(如清单1所示)(如果尚不存在)。

清单1.使用标准的UNIX编辑器创建.profile
cd ~/ (home dir)
vi .profile

键入i (用于插入),然后添加您在上面设置的每个路径。 一个例子可能看起来像这样:

# /bin/sh
stty istrip
PATH=$PATH:/usr/bin:/usr/local/bin:/usr/ucb:/etc
export PATH
umask 077

export SHELL=/usr/bin/ksh
export ENV=$HOME/.kshrc
export EDITOR=vi
export FCEDIT=vi

#Tomcat specific PATHs

export JAVA_HOME=/usr/jdk/instances/jdk1.5.0
export CATALINA_HOME=/opt/apache-tomcat-6.0.16

这也可能是添加其他PATH变量的好时机,以覆盖您要参考的已安装工具的所有区域。 对于我的设置,我还需要创建以下两个路径:

bash-3.00# PATH=/usr/ccs/bin:$PATH; export PATH (for make cmd)
bash-3.00# PATH=/usr/sfw/bin:$PATH; export PATH

用户和组

如果有多个用户使用您的服务器,则您肯定要设置用户和组特权,以允许不同的用户访问各种工具和文件系统。 如果要以非root用户身份运行Tomcat安装,这也是必需的(建议在大多数生产环境中使用)。 我将在以后的教程中详细介绍。 但是,这里有一些命令需要注意。

要创建Tomcat组,请使用清单2中的代码。

清单2.为Tomcat创建一个唯一的组以在
/usr/sbin/groupadd -g {specific gid. Leave this blank and the OS will assign you a gid} 
{group name}
ie.
/usr/sbin/groupadd -g 10004 tomcatgroup

要创建Tomcat用户,请使用清单3中的代码。

清单3.为Tomcat创建一个唯一的用户以在下面运行
/usr/sbin/useradd -d {user home directory} -g {user primary group} -u 
{specific UID. You can leave this blank, and the operating system will assign you a UID.) 
-s {default shell path for this user} -c "{Description of the user}" {username}
ie. 
/usr/sbin/useradd -d /export/home/tomcat -g tomcatgroup -u 10010 -s /bin/ksh -c 
"Main Tomcat Administrative User" tomcat

下载并解压缩服务器安装文件

探索提取服务器安装文件的各种方法。

查找并移动安装文件

如果您使用的是GUI,请通过选择启动>应用程序>实用程序>终端打开终端窗口。 如果将此文件保存到桌面上并且仍然是root用户,请运行命令cd /Desktop 。 运行ls -ltr以查看您的Tomcat tar.gz文件是否在那里。 然后,将此文件移动到/ opt目录(安装了大多数新软件的目录)下。 要移动安装文件,请键入:

mv *tar.gz /opt

然后,键入Ls –ltr /opt以确保它在那里。

设定权限

权限是UNIX系统的命脉。 没有适当的权限,您将无能为力。 在不将权限限制于某些特定事物的情况下,任何用户都可以做任何事情。 这就是为什么您首先必须授予自己对安装文件的更高级别的权限,以便您(或另一个用户)可以正确执行该文件的原因。 接下来,使用清单4所示的umask命令,确保在提取安装代码时可以将文件适当地写入所有temp和安装目录。

清单4.设置适当的权限和umask
cd /opt
chmod +x *gz (same as chmod 775)
umask 007 (makes any new files your user creates to be created with a 770 permission. 
Think chmod in reverse)

解压缩安装文件

大多数代码包都以.tar文件的形式提供,并带有.gz文件以进一步压缩它。 gunzip命令只是从压缩的第一层开始扩展软件包:

gunzip *.gz

提取.tar文件

最后,您必须“取消保存”(解压缩)代码。 这样做将完全按照打包的代码(包括目录和所有代码)提取代码。 这就是为什么在需要安装代码的目录路径下解压缩文件很重要的原因。 在UNIX中,最好的位置是/ opt。

tar -xvf *.tar

此命令提取您的应用程序文件。 键入ls -latr以查看提取的文件。 如果由于某种原因您的安装附带了.bat或.exe文件,则可以通过键入以下内容删除它们:

rm *.exe
rm *.bat

建立Tomcat目录后,您可以继续配置,编译和启动服务器。

配置,编译和启动

我使用过的所有Apache产品都包括配置,编译和启动产品的步骤。 此过程将准备好代码,告诉软件如何以及在何处安装,等等。

配置软件

要配置Tomcat软件,请输入:

cd $CATALINA_HOME/bin

./configure --with-java=/usr/java

要么:

export JAVA_HOME
./configure

编译代码

配置了Tomcat软件之后,就可以对其进行编译了。

构建二进制文件和库

清单5显示了用于构建Tomcat二进制文件和库的代码。

清单5.构建二进制文件和库
# gunzip jsvc.tar.gz

# pwd
/opt/apache-tomcat-6.0.16/bin

# tar -xvf jsvc.tar

# gmake

确保gmake的路径在您的PATH中(例如,。/ sfw / bin /)。

注意: Tomcat站点指出您应该在FreeBSD系统上使用GNU makegmake )而不是本机BSD make命令。

清单6中的代码生成了可执行文件.jsvc。 该文件是成功将Tomcat作为守护程序运行所必需的。

清单6.在jsvc上设置权限并复制
chmod 775 jsvc
cp jsvc ..
cd ..

启动服务器

您可以从CLI或作为嵌入式服务器的Java程序启动服务器。 此外,服务器可以作为守护程序运行,该守护程序将自动运行,类似于Windows环境中的服务设置。

运行基本的启动脚本

清单7显示了Tomcat的基本启动脚本。

清单7.运行基本的启动脚本
cd $CATALINA_HOME/bin
./startup.sh 
cd ../logs

检查catalina.out中的错误! 如果在此文件上使用catvimoreless ,请键入shift G转到文件底部。 或者,您可以输入以下内容:

tail -50 catalina.out

检查文件的最后50行是否有错误。

尽管这样做超出了本教程的范围,但是您也可以通过修改Tomcat代码或实现自己的LifecycleListener来自定义启动过程。

运行启动守护程序

您可以使用多种选项启动守护程序,例如-user用于非root用户),- -pid用于指定.pid文件位置)以及-errfile-outfile用于指定错误和输出文件日志)。 有关完整列表,请找到您的jsvc进程,然后输入./jsvc -help清单8显示了jsvc启动脚本的示例。

清单8.示例jsvc启动脚本
Bash#./jsvc –home /usr/jdk/instances/jdk1.5.0 \
–Dcatalina.home=/opt/apache-tomcat-6.0.16 \
-cp ./bin/bootstrap.jar -outfile ./logs/catalina.out \
-errfile ./logs/catalina.err \
       org.apache.catalina.startup.Bootstrap

使用jsvc / bin目录下的Tomcat.sh脚本也非常有帮助。 但是,您将需要编辑变量以确保路径等与您的环境匹配。

测试您的Tomcat安装

Tomcat的基本安装在http端口8080上安装了一个内部HTTP服务器— Coyote HTTP / 1.1。对于此体系结构和设置,您不需要单独的Apache HTTP Server。 只需编辑$ CATALINA_HOME目录树下的server.xml文件,就可以将端口更改为更典型的Web服务器端口,例如80。 您还可以将默认的安全套接字层(SSL)端口更改为典型的SSL端口(端口443)。server.xml文件是Tomcat获取其大部分核心配置服务器信息的位置。

您可以通过转到http:// localhost:8080 /来验证是否成功启动了Tomcat。 您应该看到类似于图3的启动页面。

图3.初始Tomcat管理控制台欢迎页面
Tomcat初始启动页面

设置Tomcat Web应用程序管理器

Tomcat Web应用程序管理器提供了许多功能来帮助管理Web应用程序。 它允许您以多种方式部署和“取消部署” Web应用程序,列出应用程序,重新加载它们,甚至停止和启动它们。

授予特定用户访问权限

要实现Tomcat Web应用程序管理器,必须首先在tomcat-users.xml文件中向特定用户授予访问权限。 为此,请使用清单9中的代码。

清单9.通过添加用户和角色来授予对Tomcat Web Application Manager的访问权限
vi tomcat-users.xml
Add these two lines below in between the two <tomcat-users> tags
	<tomcat-users>
	<role rolename="manager"/>
	<user username="tomcat1" password="test1234" roles="manager"/>
	</tomcat-users>

万一您想知道,上述用户名和密码完全是任意的。 您无需使用UNIX服务器上的密码来创建该用户,并且可以将其设置为所需的名称。 但是,您将使用该信息登录到管理控制台。

为了提高安全性,请将对该tomcat-users.xml文件的访问限制为仅该文件的所有者。 为此,您必须将权限设置为700或更低,例如:

# chmod 600 tomcat-users.xml

重新启动Tomcat服务器

为了使以上更改生效,您必须重新启动Tomcat服务器。 为此,请使用清单10中的代码。

清单10.重新启动Tomcat服务器
cd $CATALINA_HOME/bin
./shutdown.sh 
./startup.sh ;tail -f ../logs/catalina.out

尾部添加catalina.out日志文件时,应该看到类似以下内容:

May 15, 2008 4:08:12 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/74  config=null
May 15, 2008 4:08:12 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 6271 ms

打开Tomcat Web应用程序管理器控制台

返回到Tomcat管理控制台。 单击左侧导航窗格“ 管理”部分中的“ Tomcat管理器”链接。 成功后,您将看到一个类似于图4的窗口。

图4. Tomcat Web应用程序管理器启动页面
Tomcat Web应用程序管理器

Tomcat还具有一个状态应用程序,该应用程序显示Tomcat服务器的状态,包括JVM的内存利用率和线程数。 您可以通过单击Tomcat Web应用程序管理器右上方的“ 服务器状态”来访问此非常有用的工具。

安装示例应用程序

Tomcat附带了一个主要的示例应用程序。 这当然不足以测试您的特定应用程序需求,但是它将提供对基本JSP应用程序和基本servlet的功能测试。

查找战争的地点

当您拉起Tomcat Web应用程序管理器以部署应用程序时,需要知道要查找哪个目录来选择要部署的Web归档(WAR)。 使用清单11中的代码查找此文件。

清单11.查找您的WAR文件以进行部署
bash-3.00# cd $CATALINA_HOME
bash-3.00# find . -name *.war
./webapps/docs/appdev/sample/sample.war
./webapps/sample.war

打开Tomcat Web应用程序管理器控制台以部署服务器

在Manager Application下,向下滚动到Deploy部分,如图5所示。

图5.示例应用程序部署
示例应用程序部署

要部署的War文件下 ,只需单击浏览 。 使用上面找到的路径选择示例应用程序WAR。 单击“ 打开” ,然后单击“ 部署” 。 确实,它与部署示例应用程序一样简单。

测试示例应用程序

部署应用程序后,可以通过转到http:// localhost:8080 / sample /查看它是否启动。 在这里,您可以单击JSP ,然后单击Servlet来验证它们是否存在以及基本的应用程序功能, 如图6所示。 现在,服务器应已为您的应用程序做好了准备。

图6.示例应用程序测试和验证页面
样本应用程序测试和验证页面

如您所知,这只是验证Tomcat服务器是否已正确安装并且是否按预期运行。 要部署您的个人应用程序,必须遵循有关在Tomcat服务器目录下某些“上下文根”下打包和安装的J2EE准则。

摘要

结论

到目前为止,您应该已经可以很好地在新的Tomcat服务器上部署和测试动态J2EE应用程序了! 希望您了解了常见的Web体系结构,如何在UNIX操作系统上安装和配置Tomcat开发服务器,并在此过程中获得了一些不错的UNIX管理技巧。 从这里开始,可能性是无止境的,还有很多东西要学习。

祝你好运!


翻译自: https://www.ibm.com/developerworks/aix/tutorials/au-webdevserver/index.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值