Amazon Web Services提供了12个月的免费使用期限,使开发人员可以在云中运行任何他们想要的东西。 免费层包括14个服务,其中Web开发人员最关注EC2服务。 EC2是一项服务,通过停止和启动Windows和/或Linux的虚拟实例来提供可调整大小的虚拟计算。 Elastic Load Balancing服务在实例之间分配传入流量,如果发生故障,将安装新实例。

在免费套餐下,可以通过选择预配置的Amazon Machine Image来安装Linux或Windows的微型实例。 该映像安装在您的EC2空间中,可以根据需要配置,停止和启动该映像。 可以将安全组配置为允许SSH流量访问实例,从而为您提供root访问权限,并可以对其进行配置,就像将其安装在本地计算机上一样。

在本教程中,我将展示如何使用Putty通过SSH设置EC2实例,安装和配置Java 7和Tomcat 7。

要完成本教程,我将遵循以下步骤:

  • 使用Amazon Web Services创建帐户
  • 选择一个实例
  • 下载并安装腻子
  • 配置安全组
  • 使用Putty通过SSH连接
  • 下载并安装Java 7
  • 下载,安装和配置Tomcat 7
  • 使用Tomcat的管理器启动WAR文件

因此,让我们开始吧:

要注册12个月的免费套餐,您需要提供地址详细信息,信用卡或借记卡详细信息以及您的电话号码。 注册表单位于: http : //aws.amazon.com/free/ ,只需几分钟即可完成该过程。 作为安全措施,您将收到自动电话,并要求您输入出现在屏幕上的四位数电话号码。

选择一个实例

使用新创建的帐户,您可以选择一个实例。 登录您的帐户,然后从Amazon Web Service列表中选择EC2。



亚马逊服务器 pem_tomcat

选择EC2 Web服务



您将进入EC2实例的控制面板。 到目前为止,您尚未安装实例。 要安装实例,请单击启动实例按钮。



亚马逊服务器 pem_centos_02

启动实例



您将看到一个弹出菜单,从中可以选择要安装的实例的类型。



亚马逊服务器 pem_java_03

创建一个新实例



您选择的实例取决于您的要求和预算。 当我们使用免费使用套餐时,我建议您选择“快速启动向导”选项和Amazon Linux AMI 2013.03.01 64位实例。

在设置过程中,将创建一个PEM文件,Putty将使用它来访问您的实例。 有关更多详细信息,请参见下文。

提示:如果您返回控制台但看不到您的实例,则可能是您未选择正确的区域。 在屏幕的右上角,您可以更改区域。

确保输入实例的名称并创建新的密钥对。 单击继续以安装实例。 安装和启动实例可能需要几分钟。 同时,我们将下载并安装Putty。

下载并安装腻子

Putty是SSH客户端,它允许远程访问我们Linux实例的根,可以从www.putty.org网站下载。 选择适合您的操作系统的版本。 当您在那里时,您还必须下载PuttyGen。 此应用程序将创建密钥对时生成的PEM(隐私增强邮件安全证书)文件转换为在Putty中使用的PPK文件。 从Putty连接到您的实例时,此文件提供身份验证。

安装这两个应用程序后,您必须将PEM文件转换为PPK文件。 打开PuttyGen并加载PEM文件,然后将其保存为PPK扩展名。



亚马逊服务器 pem_linux_04

油灰键生成器



配置安全组

安全组授予对指定端口上的流量的访问权限。 SSH协议使用端口22,HTTP协议使用端口80和8080,因此我们必须允许访问这些端口上的流量。

安全组配置位于“网络和安全性”菜单下。 将为您设置一个默认的安全组,现在您需要输入入站端口。 选择安全组,然后单击“入站”选项卡。



亚马逊服务器 pem_tomcat_05

配置安全组



对于这三个端口中的每一个,选择“自定义TCP规则”,然后输入端口号。 单击添加规则以添加它。 如果有一个ALL组,则应将其删除。 要保存更改,请单击“应用规则更改”。

尚未授予对SSH流量和HTTP流量的访问权限。

使用Putty通过SSH连接

现在,我们准备通过Putty连接到我们的实例。

要配置腻子,我们需要以下信息:

  • 您的实例的公共DNS;
  • 我们从PEM工程师转换而来的PPK文件和
  • 自动登录名称。

您的实例的DNS可以在EC2Dashboard上找到,其格式为:ec2-XX-XXX-XX-XX.us-west-2.compute.amazonaws.com,具体取决于实例所在的区域安装在。



亚马逊服务器 pem_java_06

公用DNS



自动登录名称应为:ec2-user

启动Putty,然后在“会话”屏幕上的“主机名”输入框中输入“公共DNS”,并在“已保存的会话”框中输入一个名称。



亚马逊服务器 pem_centos_07

油灰配置



切换到“连接”菜单选项下的“数据”屏幕,然后在登录详细信息框中输入用户名。 现在,切换到SSH下的Auth屏幕,然后浏览到PPK文件所在的位置。

返回会话屏幕并保存配置。 单击打开进行连接。



亚马逊服务器 pem_centos_08

通过SSH登录Linux实例



现在,您已登录到Linux on EC2实例。

下载并安装Java 7

现在,我们已经登录,将下载Java7。我们将需要root访问权限,因此键入sudo -i 导航到顶部目录。 我们将下载Java并将其安装到usr下的新目录中。 通过执行以下操作创建一个新目录: mkdir / usr / java并导航到java目录。

在撰写本文时,Java SE Development Kit 7u40是Java 7的最新版本。 因此,我们将下载此版本。 为了避免Cookie和Oracle许可证问题,我们执行以下变通方法:

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" 
"http://download.oracle.com/otn-pub/java/jdk/7u40-b43/jdk-7u40-linux-x64.tar.gz"

这应该在一分钟之内下载。

下载完成后,我们需要使用tar解压缩文件: tar zxpvf jdk-7u40-linux-x64.tar.gz。 这将创建目录jdk1.7.0_40 ,其中安装了Java。

现在,我们设置Java Home,并使用以下命令将Java放入用户的路径中:

JAVA_HOME=/usr/java/jdk1.7.0_40/
export  JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH

您可以通过执行以下操作来验证是否已安装Java: java -version这应该打印出Java版本“ 1.7.0_40”

下载,安装和配置Tomcat 7

我们将通过运行以下两个命令在/ usr / share目录中下载并安装Tomcat 7:

wget http://ftp.cixug.es/apache/tomcat/tomcat-7/v7.0.42/bin/apache-tomcat-7.0.42.tar.gz
tar zxpvf apache-tomcat-7.0.42.tar.gz

Tomcat将解压缩并安装在apache-tomcat-7.0.42目录中。 现在,我们将配置Tomcat用户并将tomcat设置为在服务器重新启动时自动启动,以完成操作。

要将Tomcat配置为自动启动,请在目录/etc/rc.d/init.d/中创建一个名为t omcat的文件,其内容如下:

!/bin/sh
# Tomcat init script for Linux.
#
# chkconfig: 2345 96 14
# description: The Apache Tomcat servlet/JSP container.
JAVA_HOME=/usr/java/jdk1.7.0_40/
CATALINA_HOME=/usr/share/apache-tomcat-7.0.42
export JAVA_HOME CATALINA_HOME
exec $CATALINA_HOME/bin/catalina.sh $*

我喜欢使用nano来创建和编辑文件,但是pico也可以正常工作。 接下来,执行以下命令来为您的初始化脚本设置适当的权限,并使Tomcat自动启动:

chmod 755 /etc/rc.d/init.d/tomcat
chkconfig --level 2345 tomcat on

现在,无论何时重新启动服务器,Tomcat都应该自动启动。

现在我们需要设置Tomcat用户。 这将允许访问Tomcat界面中的Manger Console。 在名为tomcat-user.xml的文件中配置用户,该文件存储在apache-tomcat-7.0.42 / config目录中。 使用nano打开此文件,然后如下编辑用户权限,并相应地更改密码:

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>

<user username="tomcat" password="winter04" roles="manager-gui,manager-status,admin-gui"/>
<user username="tomcattools" password="winter04" roles="manager-jmx,manager-script"/>

现在,我们已经配置了所有需要配置的东西。 返回EC2控制台并通过右键单击实例并选择重新启动来重新启动实例。 这应该不超过几分钟。

使用Tomcat的管理器启动WAR文件

实例重新启动后,转到浏览器并输入实例的公共DNS,然后输入端口8080。其外观应类似于: c2-XX-XXX-XX-XX.us-west-2.compute。 amazonaws.com:8080 您将看到Tomcat服务器主页。 要访问管理器应用程序,请单击右侧的管理器应用程序按钮。 输入您在tomcat-users.xml文件中配置的用户名和密码。 您将看到Web应用程序管理器控制台,从中可以上传WAR文件。 向下滚动到Deploy部分,从这里您可以选择一个WAR文件并将其部署到Tomcat中。

您的Web应用程序的URL如下所示:e c2-XX-XXX-XX-XX.us-west-2.compute.amazonaws.com:8080/MyWebAppName

结论

我已经展示了如何设置EC2 micro.t1 Linux实例,如何安装和配置Java 7和Tomcat 7以及如何部署WAR文件。 Amazon Web Services提供的12个月免费套餐包括的内容远远超过EC2实例。 值得一看的是Elastic Beanstalk服务以及如何将其与基于云的IDE一起使用。 请参阅我有关基于云的部署管道的文章。

参考: Amazon免费使用方法:在alex.theedom博客上,从我们的JCG合作伙伴 Alex Theedom在EC2 Linux实例上安装Tomcat 7 。

翻译自: https://www.javacodegeeks.com/2013/10/amazon-free-usage-tier-installing-tomcat-7-on-an-ec2-linux-instance.html