aws beanstalk mysql_Amazon AWS创建Elastic Beanstalk,部署Tomcat,配置MySQL,发布Spring Boot应用...

说明

本文记录笔者在AWS创建Elastic Beanstalk应用的详细实现。

包括内容:

Tomcat应用的创建

MySQL数据库的创建,MySQL Work Bench数据库业务库scheme创建,表创建, 填充数据,查询数据

Spring Boot应用操作数据库

同一套代码配置生产环境,开发环境,

部署到AWS,验证访问数据库

1. 创建Tomcat应用

1.1. Elastic Beanstalk访问地址:

https://us-east-2.console.aws.amazon.com/elasticbeanstalk/home

1.2. 点击右上角 Create New Application

0028358a05e56b26c6d37baf60245de3.png

1.3. 填写应用的名字

2768cf2ce06c4d4f5ede4f958e4d8eee.png

1.4. 创建环境Environment

47a306f6e94d124943c22fd7ca44d29a.png

1.5 选择环境层,这里是运行Tomcat,所以是website的服务,选择第一个。

d98e1537247ef0a93d352cf1377be7ab.png

1.6 创建Web Server环境,Platform一定要选择Tomcat

8be855944e7399fcf27dd0a4ef328a15.png

1.7 创建成功以后,在首页就可以看到应用了。笔者这里改了名字Zelus_Dev

bc5112e980c8369688714c5d74bb9a8b.png

1.8 点击域名进去,就可以看到应用首页。

ed9ae7e42af29765deea6a305fd5e9f8.png

2. 创建数据库

2.1 点击1.7页面的应用链接,进入界面默认选择Dashboard, 选择Configuration > 选择Grid View (Table View视图显示太长) > Database > Modify

9e9567a6f4b75f1ae5aac1397812ece2.png

2.2 选择MySQL数据库, 填写登录Username, Password. Retention表示数据库删除后要不要留镜像,如果选择snapshot是需要收费的。慎重!!

9212add35394dde749f464b3b2fd9e88.png

2.3 点击Apply后,创建数据库需要一段时间(数分钟).

e75d75e184cb9c4649dcc843d77222c4.png

2.4 当数据库配置好后,在Configuration overview 的 Database,看到Endpoint信息。

73963bb1cb3dcf2babd29059f9343ce1.png

2.5 接下来用MySQL Workbench 连接远程AWS

225cd802630d17f12ddb3c3819c8f102.png

2.6 填写连接内容

000b0d87caa88fd4cdac167f65a09d79.png

2.7 点击TestConnection, 发现连接失败。真实原因是有AWS Database安全设置导致的。

c266a34f2cf12a7aaff67d1751b318a3.png

2.7 在2.4的Database 点击Endpoint链接进去DB identifier 列表,点击对应的DB identifier

44c2ef3ed569b1a4f8004796176be18c.png

2.8 点击DB实例, Connectivity & Security 下点击 Security > VPC security groups下的链接

9f16ad1b9858a0b58b3945240085b068.png

2.9 修改内部机器Inbound访问数据库的安全设置,Inbound > Edit (修改Inbound就可以连接,Outbound可以不用设置)

cfc7acc57645e4ad80caaf52a1baf71f.png

2.10 安全策略Source 修改为Anywhere

77390fe4f7ec6a7c1562847620bf8eb9.png

2.11 同理Outbound外部访问数据库,也把安全侧率Source修改为Anywhere

7d20f3b3ee1263c0cc3034081502f9a3.png

2.12 重试2.7的步骤,点击TestConnection, 数据库连接成功。

d9024fc2d3ddb82dd141748bbedde052.png

2.13 点击2.6步骤的OK按钮,数据库连接会多一个连接项。点击AWS Zelus Dev,开启数据库工作台。

033efe3c5c6fd37382c9a8b385af6ce1.png

2.14 AWS Zelus Dev默认生成的数据库有ebdb, innodb, sys.

1c1f7b1d6a67b660d1c2b81cd7705d9b.png

2.15 新建一个数据库zelusdb

ad6adaf53ce77c88fee80457e04d8da6.png

2.16 点击右下角的apply > 进入到Review页面 > 点击右下角的Apply

9ce190bc40871bd556462a2fd5645d44.png

2.17 创建成功以后,在Scheme下面多了zelusdb数据库

c896800b190ea4558834ad3ffdef5537.png

2.18 选择数据库zelusdb, 创建表city,插入数据,查询数据。

usezelusdb;CREATE TABLEcity (

idINT PRIMARY KEYauto_increment,

namevarchar(20),

statevarchar(20),

countryvarchar(20)

);INSERT INTO city (name, state, country) VALUES ('Szczecin', 'Pomerania', 'Poland');select * from city;

3. Spring Boot 操作数据库

请参考文章:易筋SpringBoot 2.1 | 第八篇:Mybatis访问MySQL

4. 配置prod生产环境和dev开发环境。

4.1 一份代码,只是数据库连接不一样如何配置呢? 可以通过配置文件的形式。

application.yml 配置active的配置文件,比如下面就是启用了dev的开发环境。application-dev.yml里面配置数据的信息。

1aa3d12faa5766720ea53fa1bcfb2f31.png

4.2 application-dev.yml 数据库配置举例

spring:

datasource:

driver-class-name: com.mysql.cj.jdbc.Driver

url: jdbc:mysql://dbidentifier.cmefjunjlcgs.us-east-2.rds.amazonaws.com:3306/yourdb

username: "name"

password: "password"

4.3 本地运行成功

c7e6e0bf3a42b76c50f569e1958f432f.png

5. 发布war包到AWS Tomcat服务器

5.1 导出war包,请参考文章:易筋SpringBoot 2.1 | 第三十四篇:Spring Boot导出war包部署到外部Tomcat

Maven package打包成功如下:

b79e37bd13a7bcf80857b736c645f3de.png

5.2 到AWS > Zelus-Dev > Dashboard > 点击Upload and Delpoy

fd495a0037e035284070aa95d0b1cc8c.png

5.3 选择5.1步骤导出来的包 > 填写Version label > 点击Deploy。

8559ce0795fef1266c5c8ba4546fcaa5.png

5.4 发布成功

92c29da8d1f9d8d96376e0a6ead23c74.png

5.5 访问数据库内容

f5c25f662a62f09ca09cc0c3ccb94424.png

总结

部署到AWS的步骤都在官方文档里面,

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/GettingStarted.html

talk is cheap, show me the code. 实操起来遇到很多坑,所以记录下来。

————————————————

版权声明:本文为CSDN博主「程序员易筋」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/zgpeace/java/article/details/104724777

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值