aws(学习笔记第二十六课) 使用AWS Elastic Beanstalk
aws(学习笔记第二十六课)
- 使用
aws Elastic Beanstalk
学习内容:
AWS Elastic Beanstalk整体架构AWS Elastic Beanstalk的hands onAWS Elastic Beanstalk部署node.js程序包- 练习使用
AWS Elastic Beanstalk的ebcli
1. AWS Elastic Beanstalk整体架构
-
官方的
guide
AWS的官方guide如下。
aws Elastic Beanstalk guide链接 -
为什么使用
AWS Elastic Beanstalk
web application开发,必须考虑很多环境面的问题。VPC如何分割成subnet- 如何设定
AutoScaling - 设定
Elastic Load Balancing Route53设定dev/test/prod的环境设定
对于
web application开发者来说,要考虑应用开发以外的很多,需要很多考虑。如果想简单使用AWS,只考虑开发业务代码,生成.zip或者war文件就能够作成一个完整的web application,那么可以考虑使用AWS Elastic Beanstalk。
2. AWS Elastic Beanstalk的hands on
AWS Elastic Beanstalk的全体架构

- 构建
AWS Elastic Beanstalk- 开始一个新的
Elastic Beanstalk,首先创建Elastic Beanstalk application

- 之后创建
environment- 选择
web服务器环境

- 选择平台
平台选择java。其他的也没有问题,这里首先使用java

- 选择应用程序代码
这里就是应用程序代码,开发人员只关注业务代码上传,web应用程序的部署都交给AWS。这里选择AWS提供的示例程序。后面的练习中使用node.js的打包程序

- 选择
- 权限设定
- 使用
AWS的自动设置功能
自动生成一个生成的role

- 可以查看
AWS创建的两个role的权限设定
可以看出都是关于Elastic Beanstalk执行和ec2的各种权限。

- 使用
- 选择网络设定
VPC和Subnet的设定
这里选择待带有公网权限的default的VPC和Subnet。

database的设定这里无效
主要是练习使用Elastic Beanstalk的功能,这里让database的设置无效化。
- 安全组设定
安全组这里选择网络全开的default安全组,为了方便练习。

- 最后提交
Elastic BeanStalk

- 经过几分钟之后,
Elastic BeanStalk Environment会创建成功

- 开始一个新的
- 访问
AWS Elastic Beanstalk示例程序- 回到
Elastic BeanStalk Application一栏画面,进入创建的Applicaiton

- 点击
Elastic BeanStalk Application的域
可以看出马上会进入该示例程序。

- 回到
3. AWS Elastic Beanstalk部署node.js程序包
- 编写自己的
node.js web application- 进入上面创建的
ec2

- 在
ec2上创建node.js web applicationsudo -i cd /home/ec2-user mkdir my_webapp yum install npm -y npm init -y npm install express - 在
/home/ec2-user/my_webapp上创建app.jsconst express = require('express'); const app = express(); app.get('/',(req,res)=>{ res.send("Welcome to Home Page") }); app.listen(8080,() =>{console.log("I am node js"); }); - 执行
app.jsnode application.js - 访问该
node.js web application

- 打包
node.js web application,上传到s3 bucket[root@ip-172-31-1-135 my_webapp]# zip -r app.zip ./* [root@ip-172-31-1-135 my_webapp]# aws s3 cp ./app.zip s3://finlay-cloudshell
- 进入上面创建的
- 部署
node.js web application- 开始创建另一个
application
- 选择平台环境

- 选择
s3 bucket的应用程序

- 访问
node.js web application

AWS Elastic Beanstalk让开发者单纯面对web application的开发,其他的交个AWS来构建。在这方面表现很出色。
- 开始创建另一个
4.练习使用AWS Elastic Beanstalk的ebcli
- 什么是
eb cli
顾名思义,这个是Elastic Beanstalk Command Line Interface
pypi的官方网站 - 使用
ebcli
这里可以使用cloudshell进行开发。-
进入
cloudshell,并创建一个helloworld的实例applicationmkdir myapp cd myapp echo "I am EB CLI" > index.html eb init(选择区域) eb create -
trouble shooting
这里会有几种常见错误对应方法。Default subnet in ap-northeast-1a not found
这里,loader balancer需要default VPC必须要有default subnet,但是这里的环境没有,所以需要创建一个subnet
并且,AWS console是不能够创建default subnet,必须使用aws cli来创建。
同样,使用cloudshellaws ec2 create-default-subnet --availability-zone ap-northeast-1aAt least two subnets in two different Availability Zones must be specified
这个也是常见的错误,但是这个提示特别的误导开发者,正确的是,AWS Elastic Beanstalk在自动load balancer的时候,需要两个条件。- 必须在有两个以上的
Availability Zone里面作成subnet - 必须对每个
Availability Zone设定default subnet注意AWS console是不能够创建default subnet,必须使用aws cli来创建。 - 创建
subnet代码aws ec2 create-default-subnet --availability-zone ap-northeast-1c aws ec2 create-default-subnet --availability-zone ap-northeast-1d
- 必须在有两个以上的
-
再次挑战
eb create
最后,创建成功。

-
访问
web application(Elastic Beanstalk)- 进入
application,点击environment

- 点击该
environment的domain
这里尝试了9次才成功,所以点击最后一次的domain。

- 访问
application
成功打开页面。
- 进入
-
相关文章:
aws(学习笔记第二十六课) 使用AWS Elastic Beanstalk
aws(学习笔记第二十六课) 使用aws Elastic Beanstalk 学习内容: AWS Elastic Beanstalk整体架构AWS Elastic Beanstalk的hands onAWS Elastic Beanstalk部署node.js程序包练习使用AWS Elastic Beanstalk的ebcli 1. AWS Elastic Beanstalk整体架构 官方的guide AWS…...
《OpenCV》——图像透视转换
图像透视转换简介 在 OpenCV 里,图像透视转换属于重要的几何变换,也被叫做投影变换。下面从原理、实现步骤、相关函数和应用场景几个方面为你详细介绍。 原理 实现步骤 选取对应点:要在源图像和目标图像上分别找出至少四个对应的点。这些对…...
9 点结构模块(point.rs)
一、point.rs源码 use super::UnknownUnit; use crate::approxeq::ApproxEq; use crate::approxord::{max, min}; use crate::length::Length; use crate::num::*; use crate::scale::Scale; use crate::size::{Size2D, Size3D}; use crate::vector::{vec2, vec3, Vector2D, V…...
Java线程认识和Object的一些方法ObjectMonitor
专栏系列文章地址:https://blog.csdn.net/qq_26437925/article/details/145290162 本文目标: 要对Java线程有整体了解,深入认识到里面的一些方法和Object对象方法的区别。认识到Java对象的ObjectMonitor,这有助于后面的Synchron…...
【高等数学】贝塞尔函数
贝塞尔函数(Bessel functions)是数学中一类重要的特殊函数,通常用于解决涉及圆对称或球对称的微分方程。它们在物理学、工程学、天文学等多个领域都有广泛的应用,例如在波动方程、热传导方程、电磁波传播等问题中。 贝塞尔函数的…...
99.20 金融难点通俗解释:中药配方比喻马科维茨资产组合模型(MPT)
目录 0. 承前1. 核心知识点拆解2. 中药搭配比喻方案分析2.1 比喻的合理性 3. 通俗易懂的解释3.1 以中药房为例3.2 配方原理 4. 实际应用举例4.1 基础配方示例4.2 效果说明 5. 注意事项5.1 个性化配置5.2 定期调整 6. 总结7. 代码实现 0. 承前 本文主旨: 本文通过中…...
实现使用K210单片机进行猫脸检测,并在检测到猫脸覆盖屏幕50%以上时执行特定操作
要实现使用K210单片机进行猫脸检测,并在检测到猫脸覆盖屏幕50%以上时执行特定操作,以及通过WiFi上传图片到微信小程序,并在微信小程序中上传图片到开发板进行训练,可以按照以下步骤进行: 1. 硬件连接 确保K210开发板…...
小程序设计和开发:如何研究同类型小程序的优点和不足。
一、确定研究目标和范围 明确研究目的 在开始研究同类型小程序之前,首先需要明确研究的目的。是为了改进自己的小程序设计和开发,还是为了了解市场趋势和用户需求?不同的研究目的会影响研究的方法和重点。例如,如果研究目的是为了…...
tiktok 国际版抖抖♬♬ X-Bogus参数算法逆向分析
加密请求参数得到乱码,最终得到X-Bogus...
Redis 基础命令
1. redis 命令官网 https://redis.io/docs/latest/commands/ 2. 在 redis-cli 中使用 help 命令 # 查看 help string 基础命令 keys * # * 代表通配符set key value # 设置键值对del key # 删除键expire key 时间 # 给键设置时间 # -2 代表时间到期了, -1 代表…...
深入解析Python机器学习库Scikit-Learn的应用实例
深入解析Python机器学习库Scikit-Learn的应用实例 随着人工智能和数据科学领域的迅速发展,机器学习成为了当下最炙手可热的技术之一。而在机器学习领域,Python作为一种功能强大且易于上手的编程语言,拥有庞大的生态系统和丰富的机器学习库。其…...
专业的定制版软件,一键操作,无限使用
今天给大家介绍一个专业的PDF转word的小软件,软件只有5.5M。非常小,而且没有文档大小的限制,可以随意使用。 PDFtu PDF转word 软件第一次使用需要安装一下。 安装好之后,我们就能在桌面找到对应的图标,打开就能直接使…...
小程序-基础加强
前言 这一节把基础加强讲完 1. 导入需要用到的小程序项目 2. 初步安装和使用vant组件库 这里还可以扫描二维码 其中步骤四没什么用 右键选择最后一个 在开始之前,我们的项目根目录得有package.json 没有的话,我们就初始化一个 但是我们没有npm这个…...
pytorch实现基于Word2Vec的词嵌入
PyTorch 实现 Word2Vec(Skip-gram 模型) 的完整代码,使用 中文语料 进行训练,包括数据预处理、模型定义、训练和测试。 1. 主要特点 支持中文数据,基于 jieba 进行分词 使用 Skip-gram 进行训练,适用于小数…...
流媒体娱乐服务平台在AWS上使用Presto作为大数据的交互式查询引擎的具体流程和代码
一家流媒体娱乐服务平台拥有庞大的用户群体和海量的数据。为了高效处理和分析这些数据,它选择了Presto作为其在AWS EMR上的大数据查询引擎。在AWS EMR上使用Presto取得了显著的成果和收获。这些成果不仅提升了数据查询效率,降低了运维成本,还…...
鸿蒙 循环控制 简单用法
效果 简单使用如下: class Item {id: numbername: stringprice: numberimg: stringdiscount: numberconstructor(id: number, name: string, price: number, img: string, discount: number) {this.id idthis.name namethis.price pricethis.img imgthis.discou…...
四、GPIO中断实现按键功能
4.1 GPIO简介 输入输出(I/O)是一个非常重要的概念。I/O泛指所有类型的输入输出端口,包括单向的端口如逻辑门电路的输入输出管脚和双向的GPIO端口。而GPIO(General-Purpose Input/Output)则是一个常见的术语,…...
Linux安装zookeeper
1, 下载 Apache ZooKeeperhttps://zookeeper.apache.org/releases.htmlhttps://zookeeper.apache.org/releases.htmlhttps://zookeeper.apache.org/releases.htmlhttps://zookeeper.apache.org/releases.htmlhttps://zookeeper.apache.org/releases.htmlhttps://zookeeper.apa…...
【贪心算法篇】:“贪心”之旅--算法练习题中的智慧与策略(二)
✨感谢您阅读本篇文章,文章内容是个人学习笔记的整理,如果哪里有误的话还请您指正噢✨ ✨ 个人主页:余辉zmh–CSDN博客 ✨ 文章所属专栏:贪心算法篇–CSDN博客 文章目录 前言例题1.买卖股票的最佳时机2.买卖股票的最佳时机23.k次取…...
007 JSON Web Token
文章目录 https://doc.hutool.cn/pages/jwt/#jwt%E4%BB%8B%E7%BB%8D JWT是一种用于双方之间安全传输信息的简洁的、URL安全的令牌标准。这个标准由互联网工程任务组(IETF)发表,定义了一种紧凑且自包含的方式,用于在各方之间作为JSON对象安全地传输信息。…...
Phi-3-mini-128k-instruct实战:利用VLOOKUP逻辑进行多源数据关联与报告生成
Phi-3-mini-128k-instruct实战:利用VLOOKUP逻辑进行多源数据关联与报告生成 1. 引言 如果你用过Excel,肯定对VLOOKUP这个函数不陌生。它的核心就一句话:根据一个表格里的某个值,去另一个表格里找到对应的信息,然后“…...
Serilog:从结构化日志认知到 .NET 工程落地
MySQL 中的 count 三兄弟:效率大比拼! 一、快速结论(先看结论再看分析) 方式 作用 效率 一句话总结 count(*) 统计所有行数 最高 我是专业的!我为统计而生 count(1) 统计所有行数 同样高效 我是 count(*) 的马甲兄弟…...
Phi-3-mini-4k-instruct-gguf入门必看:q4-GGUF量化对中文语义保留的影响实测
Phi-3-mini-4k-instruct-gguf入门必看:q4-GGUF量化对中文语义保留的影响实测 1. 模型简介 Phi-3-mini-4k-instruct-gguf是微软Phi-3系列中的轻量级文本生成模型GGUF版本,特别适合中文场景下的问答、文本改写、摘要生成等任务。这个经过量化的模型版本在…...
Graphormer部署指南:3.7GB纯Transformer图神经网络GPU快速启动
Graphormer部署指南:3.7GB纯Transformer图神经网络GPU快速启动 1. 项目概述 Graphormer是一种基于纯Transformer架构的图神经网络,专门为分子图(原子-键结构)的全局结构建模与属性预测而设计。这个3.7GB大小的模型在OGB、PCQM4M…...
Qwen3-TTS-VoiceDesign应用案例:智能硬件设备嵌入式多语种语音播报
Qwen3-TTS-VoiceDesign应用案例:智能硬件设备嵌入式多语种语音播报 1. 智能语音播报的市场需求 现在的智能硬件设备越来越普及,从智能家居到车载系统,从工业设备到消费电子产品,几乎都需要语音交互功能。但很多设备面临一个共同…...
千问3.5-2B网页交互教程:上传→提问→获取JSON接口响应,全流程代码实例
千问3.5-2B网页交互教程:上传→提问→获取JSON接口响应,全流程代码实例 1. 快速了解千问3.5-2B 千问3.5-2B是Qwen系列的小型视觉语言模型,它能够同时理解图片和文字。想象一下,你有一个既能看图又能聊天的智能助手——这就是千问…...
新手福音:基于快马平台零基础入门Ubuntu与OpenClaw机器人开发
作为一个刚接触机器人开发的新手,最近在Ubuntu上折腾OpenClaw机器人开发时踩了不少坑。从环境配置到代码调试,每一步都让人头大。不过后来发现了InsCode(快马)平台,简直像找到了救星。今天就把我的学习过程整理成笔记,分享给同样想…...
MogFace人脸检测工具实操案例:从监控截图提取人脸ROI用于后续关键点分析
MogFace人脸检测工具实操案例:从监控截图提取人脸ROI用于后续关键点分析 1. 引言:从监控画面到精准分析 想象一下,你手头有一堆从监控摄像头截取的图片,里面可能有多个人脸,有的正对着镜头,有的侧着脸&am…...
NaViL-9B多模态能力详解:从API调用到温度参数优化的完整指南
NaViL-9B多模态能力详解:从API调用到温度参数优化的完整指南 1. 平台概述与核心能力 NaViL-9B是一款原生多模态大语言模型,由专业研究机构开发。它同时具备文本理解和图像分析能力,能够处理纯文本问答和图片内容理解任务。这种双模态能力使…...
实测分享:Claude+万象熔炉组合,抽象概念也能变成具体画面
实测分享:Claude万象熔炉组合,抽象概念也能变成具体画面 你有没有过这样的体验?脑子里突然冒出一个绝妙的画面,可能是昨晚梦里的一个片段,也可能是读到某段文字时脑海中浮现的场景。你想把它画下来,但拿起…...
