aws beanstalk 使用eb cli配置和启动环境

news2025/1/24 2:10:57

Elastic Beanstalk 不额外收费,只需为存储和运行应用程序所需的 AWS 资源付费

EB CLI 是 Amazon Elastic Beanstalk 的命令行界面,它提供了可简化从本地存储库创建、更新和监控环境的交互式命令

安装eb cli

$ pip install virtualenv
$ virtualenv ebvenv
$ source venv/bin/activate
$ (ebvenv) pip install awsebcli --upgrade
$ $ eb --version
EB CLI 3.20.3 (Python 3.7.1)

帮助信息

commands:
  abort        Cancels an environment update or deployment.
  appversion   Listing and managing application versions
  clone        Clones an environment.
  codesource   Configures the code source for the EB CLI to use by default.
  config       Modify an environment's configuration. Use subcommands to manage saved configurations.
  console      Opens the environment in the AWS Elastic Beanstalk Management Console.
  create       Creates a new environment.
  deploy       Deploys your source code to the environment.
  events       Gets recent events.
  health       Shows detailed environment health.
  init         Initializes your directory with the EB CLI. Creates the application.
  labs         Extra experimental commands.
  list         Lists all environments.
  local        Runs commands on your local machine.
  logs         Gets recent logs.
  open         Opens the application URL in a browser.
  platform     Commands for managing platforms.
  printenv     Shows the environment variables.
  restore      Restores a terminated environment.
  scale        Changes the number of running instances.
  setenv       Sets environment variables.
  ssh          Opens the SSH client to connect to an instance.
  status       Gets environment information and status.
  swap         Swaps two environment CNAMEs with each other.
  tags         Allows adding, deleting, updating, and listing of environment tags.
  terminate    Terminates the environment.
  upgrade      Updates the environment to the most recent platform version.
  use          Sets default environment.

初始化

初始化eb环境,可以指定凭证profile

$ mkdir test-beangolang && cd test-beangolang
$ eb init
$ #eb init --profile profilename

初始化使用默认的aws凭证,要求选择region,application,ssh,platform(此处选择go)等。新的application默认以当前文件夹名称创建。

初始化完成后在本地生成如下文件。其中config.yml包含配置信息

$ tree -a
.
├── .elasticbeanstalk
│   └── config.yml
└── .gitignore
$ cat .elasticbeanstalk/config.yml
branch-defaults:
  default:
    environment: null
    group_suffix: null
global:
  application_name: test-beangolang
  branch: null
  default_ec2_keyname: dev-key
  default_platform: Go 1 running on 64bit Amazon Linux 2
  default_region: cn-north-1
  include_git_submodules: true
  instance_profile: null
  platform_name: null
  platform_version: null
  profile: null
  repository: null
  sc: null
  workspace_type: Application

初始化之后只会创建application,不会启动environment(即实例,负载均衡器,数据库等资源)
在这里插入图片描述

高级配置

如果 .ebignore 不存在,但存在 .gitignore,EB CLI 将忽略 .gitignore 中指定的文件。如果存在 .ebignore,EB CLI 将不会读取 .gitignore

eb cli工具的凭证优先级

部署构建而非文件夹

创建环境

$ eb create

环境初始化会选择环境name,dns,lb,是否下载sample,最后启动环境,启动过程中会输出日志

最终所有资源都会通过创建cloudformation的方式进行创建

Would you like to enable Spot Fleet requests for this environment? (y/N): n
NOTE: The current directory does not contain any source code. Elastic Beanstalk is launching the sample application instead.
Do you want to download the sample application into the current directory? (Y/n): y
INFO: Downloading sample application to the current directory.
INFO: Download complete.
Environment details for: test-beangolang-dev
  Application name: test-beangolang
  Region: cn-north-1
  Deployed Version: Sample Application
  Environment ID: e-254v23ad2m
  Platform: arn:aws-cn:elasticbeanstalk:cn-north-1::platform/Go 1 running on 64bit Amazon Linux 2/3.6.1
  Tier: WebServer-Standard-1.0
  CNAME: test-beangolang-dev.cn-north-1.eb.amazonaws.com.cn
  Updated: 2022-11-13 15:35:24.287000+00:00
Printing Status:
2022-11-13 15:35:23    INFO    createEnvironment is starting.
2022-11-13 15:35:24    INFO    Using elasticbeanstalk-cn-north-1-xxxxxxxxxxxx as Amazon S3 storage bucket for environment data.
2022-11-13 15:35:46    INFO    Created target group named: arn:aws-cn:elasticloadbalancing:cn-north-1:xxxxxxxxxxxx:targetgroup/awseb-test-bea-default-5gkjd/6de4b45758a2fab6
2022-11-13 15:35:46    INFO    Created security group named: awseb-e-254v23ad2m-stack-AWSEBSecurityGroup-1X8RQFJTFG3WA
2022-11-13 15:36:03    INFO    Created Auto Scaling launch configuration named: awseb-e-254v23ad2m-stack-AWSEBAutoScalingLaunchConfiguration-vWQ0HP7XfOUA
2022-11-13 15:36:03    INFO    Created Load Balancer listener rule named: arn:aws-cn:elasticloadbalancing:cn-north-1:xxxxxxxxxxxx:listener-rule/app/main-alb/17ec2f283414a86a/80c5154ba2598551/d2ff9a73b3344c39
 -- Events -- (safe to Ctrl+C)

下载sample程序,一个简单的go web程序

$ tree
.
├── application.go
├── cron.yaml
└── public
    └── index.html

查看当前状态和健康状况

$ eb status
Environment details for: test-beangolang-dev
  Application name: test-beangolang
  Region: cn-north-1
  Deployed Version: Sample Application
  Environment ID: e-254v23ad2m
  Platform: arn:aws-cn:elasticbeanstalk:cn-north-1::platform/Go 1 running on 64bit Amazon Linux 2/3.6.1
  Tier: WebServer-Standard-1.0
  CNAME: test-beangolang-dev.cn-north-1.eb.amazonaws.com.cn
  Updated: 2022-11-13 15:37:06.756000+00:00
  Status: Launching
  Health: Grey
$ eb health

查看事件输出,包括环境构建,重新部署,配置修改等事件日志,和图形控制台一致

$ eb evnets

查看控制台

在这里插入图片描述

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

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

相关文章

2023年考研数学测试卷(预测)

2023年考研数学测试卷 原题再现: 多的我也不说了,直接把预测的2023年考研数学卷子分享给大家好吧,准确详细全面是我的宗旨,我的博客创立初衷和发展方向肯定不应该只是"考试有用",而是面对社会生产生活的有用…

Day815.数据库参数设置优化 -Java 性能调优实战

数据库参数设置优化 Hi,我是阿昌,今天学习记录的是关于数据库参数设置优化。 MySQL 是一个灵活性比较强的数据库系统,提供了很多可配置参数,便于根据应用和服务器硬件来做定制化数据库服务。 数据库主要是用来存取数据的&#…

视频编解码 — DCT变换和量化

目录 视频编码流程 DCT变换 Hadamard变换 量化 H264中的DCT变换和量化 H264各模式的DCT变换和量化过程 1、亮度16x16帧内预测块 2,其它模式亮度块 3,色度块 小结 视频编码流程 DCT变换 离散余弦变换 它能将空域信号转换到频率上表示&#xff0…

建造者模式

文章目录定义优点使用场景代码实现定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 4个角色: Product产品类:通常是实现了模板方法模式,也就是有模板方法和基本方法Builder抽象建造者&#xf…

PyQt5可视化编程-事件、信号和对话框

一、概述: 所有的应用都是事件驱动的。事件大部分都是由用户的行为产生的,当然也有其他的事件产生方式,比如网络的连接,窗口管理器或者定时器等。调用应用的exec_()方法时,应用会进入主循环,主循环会监听和分发事件。…

算法题:整数除法

一.题目描述以及来源 给定两个整数 a 和 b ,求它们的除法的商 a/b ,要求不得使用乘号 *、除号 / 以及求余符号 % 。 注意: 整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345…

MP157-2-TF-A移植:

MP157-2-TF-A移植:1. TF-A移植:1.1 新建开发板的设备树1.2 修改设备树电源管理1.3修改TF卡和EMMC设备树1.4 修改USBOTG设备树2 编译测试2.1 Makefile.sdk 修改内容:2.2 编译命令:正点原子第九章内容:自己记的笔记&…

SpringBoot(One·上)

SpringBoot一、简介概述Spring Boot特性SpringBoot四大核心二、SpringBoot项目分析1、创建第一个案例结构目录和pom文件2、Springboot集成mvcSpringboot核心配置文件application.propertiesSpringboot核心配置文件application.yml或者application.yamlapplication.ymlapplicati…

Allegro削铜皮详细操作指导

Allegro削铜皮详细操作指导 Allegro可以编辑任意形状的铜皮,下面介绍几种削铜皮的方式 任意形状,shape-manual Void/cavity-Polygon 鼠标左键点击铜皮,铜皮会被亮起来 画出需要的形状 完成后如下图 方形shape-manual Void/cavity-Rectangular 同样的选择铜皮,画出需要…

通过 js 给元素添加动画样式animation属性 ,以及 perspective 属性探究

学习关键语句: js添加动画效果 js控制元素animation属性 写在前面 在制作组件的过程中呢 , 突然觉得这个动画啊应该由用户来决定到底是个啥样 , 但是怎么让用户操作这一步呢 ? 总不能让用户自己去写 css keyframe 吧 , 所以便有了这篇文章 , 同时 , 这篇文章的下半部分我们会…

Python+Selenium:Google patent数据爬取

准备工作,已搭建Python环境,安装Selenium pip install selenium -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com 步骤1: 根据Chrome版本下载ChromeDriver 下载链接地址: ChromeDriver - WebDriver for Chrome - Downloads 如在帮助——>关于Ch…

车道线检测-lanedet

源码:https://github.com/Turoad/lanedet 这是一个常见的检测网络整合版本,目前包括的检测网络有: 模型论文介绍 SCNN,RESA论文介绍,UFLD介绍,laneNet|其它相关模型,LaneATT介绍 数据集介绍…

机器学习之归一化

机器学习之归一化1.目的1.1损失函数求解问题1.2 归一化目的2. 归一化2.1 最大值最小值归一化2.2 标准化1.目的 1.1损失函数求解问题 线性回归Loss函数梯度公式 参数含义θ\thetaθ函数参数α\alphaα学习率xjix^i_{j}xji​x:数据集,i:样本,j:特征 【数…

OPengl学习(二)——opengl环境搭建

文章目录0、 概念/准备1、VSOpengl快速添加手动编译2、QT中使用opengl1.pro配置文件2.引入头文件 继承QGLWidget3.实现三个主要函数3、引用0、 概念/准备 opengl官网地址 1、OpenGL 函数库相关的 API 有核心库(gl),实用库(glu&a…

自动化状态监测和工业4.0解决方案-Softing uaGate SI

某公司为其注塑和反应/挤出系统采用了uaGate SI网关技术并实行了开放且独立于平台的OPC UA标准,以用于设备状态自动化监控,这有助于提高产量并避免机器停机。 自动化状态监测提高了产量并且可避免机器停机。为了将其设备控制系统与IT系统相连接起来&…

最小生成树(Prim算法与Kruskal算法)

一、什么是最小生成树 一个连通图的生成树是一个极小的连通子图,它含有图中全部的n个顶点,但只有足以构成一棵树的n-1条边。我们把构造连通网的最小代价生成树称为最小生成树。 例如下图中①、②、③都是左侧图的生成树,但③是构…

k8s的亲和调度

k8s的亲和调度 出于高效通信等需求,偶尔需要把一些Pod对象组织在相近的位置(同一节点、机架、区域或地区等),例如应用程序的Pod及其后端提供数据服务的Pod等,我们可以认为这是一类具有亲和关系的Pod对象。 理想的实现方式是允许调度器把第一个…

[附源码]计算机毕业设计springboot高校流浪动物领养网站

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

2022.11.28总结

今天写了条件查询 虽然思路上还说是比较顺,但是还是写了一晚上,因为老是在细节上出现bug,改了好久,踩了好几个坑。 首先大概是因为组件不是确定的,我把ref属性绑定在router-view上,导致我获取不到条件选择…

c++类型转换

目录 1.隐式类型转换和强制类型转换 2.隐式类型转换带来的危险 3.c提供的标准类型转换关键字 4.总结 1.隐式类型转换和强制类型转换 c语言的类型转换可以分为隐式类型转换和强制类型转换。 #include<iostream>using namespace std;int main() {double a 3.14;int …