亚马逊免费使用套餐:在EC2 Linux实例上安装Tomcat 7

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。

选择EC2 Web服务

选择EC2 Web服务

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

启动实例

启动实例

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

创建一个新实例

创建一个新实例

您选择的实例取决于您的要求和预算。 当我们使用免费使用套餐时,我建议您选择“快速启动向导”选项和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扩展名。

油灰键生成器

油灰键生成器

配置安全组

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

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

配置安全组

配置安全组

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

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

使用Putty通过SSH连接

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

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

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

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

公用DNS

公用DNS

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

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

油灰配置

油灰配置

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

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

通过SSH登录Linux实例

通过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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

笔记:隐式转换规则

学习并背诵全文 原始值 类型UndefinedNullStringBooleanNumber值undefinednull所有字符串true false所有数字/NaN 引用类型 Object的成员叫对象&#xff0c;包括Array&#xff0c;Function&#xff0c;Math&#xff0c;Date&#xff0c;JSON&#xff0c;RegExp等除了原始值…

ble连接过程建立_九点之蓝牙连接

蓝牙连接蓝牙连接是如何进入到连接状态呢&#xff0c;首先必须经历前面提到的广播阶段&#xff0c;主端通过扫描到从端的广播来发现这个设备&#xff0c;之后让主端发出连接请求来要求与从端建立连接&#xff0c;便可以进入到连接状态。由于蓝牙连接牵涉的点比较多&#xff0c;…

华为服务器系统蓝屏,服务器主机蓝屏

服务器主机蓝屏 内容精选换一换云服务器创建后区域固定&#xff0c;不能将云服务器转移到另一个区域&#xff0c;也不能将云服务器转移到另一个帐号。您可以通过镜像迁移方式实现云服务器的跨帐号跨区域迁移。服务器迁移的常见场景与常用的迁移方式请参考常见的服务器迁移场景。…

多对一映射、一对多映射

Emp员工表 Dept部门表 多对一映射 在查询时&#xff0c;需要获取两张以上关联表的数据&#xff0c;通过关联映射&#xff0c;可以由一个对象获取关联对象的信息&#xff0c;例如&#xff1a;查询一个Emp员工对象&#xff0c;可以 通过关联映射获取员工所在的部门Dept对象信息 …

一道面试题目引发的思考

起因 多列布局是前端一个经典的反复被提及的面试题目&#xff0c;最典型的即两列&#xff0c;左列定宽菜单栏&#xff0c;右列变宽为内容区域。 通常得到的答案无外乎左列浮动定宽&#xff0c;然后右列或浮动&#xff0c;或设置外边距&#xff0c;或绝对定位等等。偶尔会有面试…

uniapp弹出框_uniApp上拉刷新,下拉加载,以及筛选功能

uniApp插件市场有很多友好的插件&#xff0c;今天举一个例子如上图所示&#xff0c;实现上拉刷新&#xff0c;下来加载&#xff0c;右上角点击弹出筛选框&#xff0c;只需要在插件市场搜索刷新选择你想要的效果(也可以下载后自己改动效果)点击导入插件&#xff0c;会自动打开项…

乐高无限的服务器怎么建,乐高无限悬空房子怎么建造 建造方法介绍

乐高无限悬空房子怎么建造?很多玩家对此还不是很清楚&#xff0c;下面给大家带来乐高无限悬空房子建造方法&#xff0c;还不知道怎么建造的朋友一起来看看吧!建造方法悬空房子非常容易搭建&#xff0c;如果我们想要将已经搭建的房子悬空&#xff0c;就只需要将建筑下方的土地挖…

Hibernate学习(一)

搭建环境 1、创建普通的Java工程 2、添加相应的jar包&#xff0c;下载链接&#xff1a;https://files.cnblogs.com/files/AmyZheng/required.rar 第一个实例 1、引用jar包 2、创建数据库和表 DROP TABLE IF EXISTS t_customer ;CREATE TABLE t_customer (id INT(5) PRIMARY KE…

使用Spring Webservices构建SOAP Webservices代理模块

前一段时间&#xff0c;我想看看使用Spring Web Services编写Web服务代理&#xff08;wsproxy&#xff09;有多么容易。 所以&#xff0c;我想我会在Github上分享结果。 可以随意使用它 &#xff08;Apache v2许可证&#xff09;或将其用作自己开发的基础。 本文的其余部分将解…

joc杂志影响因子2019_排名 ‖ 2019年中国体育学期刊影响因子

近日&#xff0c;由中国科学文献计量评价研究中心、清华大学图书馆研制&#xff0c;《中国学术期刊&#xff08;光盘版&#xff09;》电子杂志社有限公司出版的《中国学术期刊影响因子年报》&#xff08;2019版&#xff09;发布。该年报是中国科学文献计量评价研究中心自2002年…

Confluence 6 MySQL 3.x 字符集编码问题

MySQL 3.x is 已知在大写和小写转换的时候有些问题&#xff08;non-ASCII&#xff09;。 问题诊断 请按照 Troubleshooting Character Encodings 页面中的内容对问题进行诊断。如果大小写字符串编码诊断显示不同&#xff0c;那么有可能是你数据库导致的。一个错误的数据库大小写…

手型向下 点击一下 福昕_PPT多张缩略图点击放大展示

↑点击上方“菜鸟PPT”关注&#xff0c;教你玩转PPT&#xff01;多张图片单击放大展示&#xff0c;以前做过一个比较复杂的&#xff0c;在同一页PPT里面做&#xff0c;加了很多个“进入”和“退出”的动画&#xff0c;维护起来比较麻烦。今天&#xff0c;菜鸟菌跟大家一起来学习…

6个经典的JavaScript报错分析

代码报错是经常发生的一件事&#xff0c;我们要确定是什么原因造成的&#xff0c;以及如何避免错误。 1. Uncaught TypeError: Cannot read property 该错误说明没有某个属性&#xff0c;一般是该属性前面的值是undefined或者是null的情况会出现。 2. TypeError: ‘undefined…

git显示服务器所有分支,git 查看所有远程分支以及同步

在多台电脑使用git管理开发分支的时候&#xff0c;会出现这样的情况。电脑A创建了分支1&#xff0c;并且push上了远程仓库。电脑B本地clone仓库默认只会clone下master分支&#xff0c;而其他电脑A推送的分支是不会默认同步下来的。那么如何同步呢&#xff1f;查看电脑B本地仓库…

json-schema 可视化编辑器发布了

json-schema 的用途越来越广泛&#xff0c;除了定义数据结构外&#xff0c;我们还可以使用 json-schema 验证数据格式和生成随机数据&#xff0c;但是编写复杂数据结构的 json-schema 是非常痛苦的事情。假设一个 100 字段的数据结构&#xff0c;如果用 json-schema 定义&#…

tfw文件如何导入cad_如何将CAD的线稿导入PS并和底色分离

【新朋友】 点击标题下方的 CG伴学 迅速关注【老朋友】 点击右上角的按钮 分享 或者 收藏这是 【CG伴学 】制作的第249篇答疑教程观看往期视频教程请点击或者前往公众号自定义菜单【学习中心】我们专门制作了教程汇总目录&#xff0c;你可以根据标题关键词搜索获取我们在后台收…

Python全栈工程师(函数嵌套、变量作用域)

ParisGabriel 感谢 大家的支持 每天坚持 一天一篇 点个订阅吧 灰常感谢 当个死粉也阔以 Python人工智能从入门到精通 globals&#xff08;&#xff09;/locals&#xff08;&#xff09;函数&#xff1a;     globals&#xff08;&#xff09;返回当前全局作用域内变量…

可视化分析js的内存分配与回收

之前写了一篇文章浏览器是怎么看闭包的&#xff0c;发现有些读者对js内存分配与回收懵懵懂懂&#xff0c;理解文章的配图有些困难&#xff0c;我想主要是因为配图省略了一些细节。今天专门写一篇关于js内存分配回收的文章&#xff0c;帮助大家理解js代码的内存表示。原文备份在…

记录程序写入日志_终于有人把MySQL 三大日志讲清楚了

点击上方"蓝字"&#xff0c;关注了解更多日志是 mysql 数据库的重要组成部分&#xff0c;记录着数据库运行期间各种状态信息。mysql日志主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。作为开发&#xff0c;我们重点需要关注的是二进制日志( …

在ADF实体PK属性中使用MySQL自动增量PK列

大家好。 继续进行ADF MySQL解决方法系列&#xff0c;今天我们将看到要使用MySQL PK自动增量列和ADF实体PK属性来进行的工作。 如果使用的是Oracle数据库&#xff0c;则可以使用oracle.jbo.domain.DBSequence以及序列和触发器来立即进行操作。 为简单起见&#xff0c;我们将修…