Amazon云计算AWS之[2]弹性计算云EC2

文章目录

  • 说明
  • EC2基本架构
    • Amazon机器映象(AMI)
    • 实例(Instance)
    • 弹性块存储(EBS)
  • EC2关键技术
    • 地理区域和可用区域
    • EC2通信机制
    • 弹性负载均衡
    • 监控服务
    • 自动缩放
    • 服务管理控制台
  • EC2安全及容错机制
    • EC2弹性IP地址

说明

  • 学习自《云计算 第三版 刘鹏版》

EC2基本架构

  • 弹性计算云服务(Elastic Compute Cloud,EC2)是AWS的重要组成部分,用于提供大小可调节的计算容量
  • Amazon EC2的基本架构,主要包括了Amazon机器映象、实例、存储模块等组成部分,并能与S3等其他Amazon云计算服务结合使用
    在这里插入图片描述

Amazon机器映象(AMI)

  • Amazon机器映像(Amazon Machine Image,AMI)是包含操作系统、服务器程序、应用程序等软件配置的模板,可以用于启动不同实例,进而像传统的主机一样提供服务。
  • 当用户使用EC2服务去创建自己的应用程序时,首先需要构建或获取相应的AMI
    在这里插入图片描述
  • 构建好的AMI分为Amaznon EBS(弹性块存储)支持和实例存储支持
  • 启动的实例的根设备分别为Amazon EBS卷和实例存储卷,后者依据Amazon S3中存储的模板而创建。

实例(Instance)

  • EC2中实例由AMI(机器映像)启动,可以像传统的主机一样提供服务。同一个AMI可以用于创建具有不同计算和存储能力的实例。
  • Amazon提供多种不同类型的实例,分别在计算、GPU、内存、存储、网络、费用等方面进行了优化
  • Amazon还允许用户在应用程序的需求发生变更时,对实例的类型进行调整,从而实现按需付费

  • 每个实例自身携带一个存储模块,用于临时存储用户数据。但存储模块的数据仅在实例的生命周期内存在,如果实例出现故障或终止,数据将丢失。

弹性块存储(EBS)

  • EBS存储卷的设计与物理硬盘相似,其大小由用户设定,目前提供的容量从1GB到1TB不等。同一个实例可以连接多个EBS,每个EBS同一时刻只能连接一个实例。
    在这里插入图片描述
  • EBS存储卷适用于数据需要细粒度地频繁访问并持久保存的情形,适合作为文件系统或数据库的主存储
  • 通过快照在S3中存储Amazon EBS卷的时间点副本。

EC2关键技术

地理区域和可用区域

  • AWS中采用了两种区域(Zone):地理区域(Region Zone)和可用区域(Availability Zone)。其中,地理区域是按照实际的地理位置划分的。而可用区域的划分则是根据是否有独立的供电系统和冷却系统等,这样某个可用区域的供电或冷却系统错误就不会影响到其他可用区域,通常将每个数据中心看做一个可用区域。

  • EC2系统中包含多个地理区域,而每个地理区域中又包含多个可用区域。为了确保系统的稳定性,用户最好将自己的多个实例分布在不同的可用区域和地理区域中。
    在这里插入图片描述

EC2通信机制

在这里插入图片描述

  • EC2的实例一旦被创建就会动态地分配公共IP地址和私有IP地址

  • 私有IP地址由动态主机配置协议(DHCP)分配产生

  • 各个模块之间以及系统和外界之间的信息交互都通过IP地址进行

弹性负载均衡

  • 弹性负载平衡功能允许EC2实例自动分发应用流量,从而保证工作负载不会超过现有能力,并且在一定程度上支持容错。

  • 弹性负载平衡功能可以识别出应用实例的状态,当一个应用运行不佳时,它会自动将流量路由到状态较好的实例资源上,直到前者恢复正常才会重新分配流量到其实例上。

监控服务

  • Amazon CloudWatch提供了AWS资源的可视化检测功能
    在这里插入图片描述
  • 用户只需要选择EC2实例,设定监视时间,CloudWatch就可以自动收集和存储检测数据

自动缩放

  • 自动缩放可以按照用户自定义的条件,自动调整EC2的计算能力
    • 需求高峰期:确保EC2实例的处理能力无缝增大
    • 需求下降时:自动缩小EC2实例规模以降低成本
  • 自动缩放功能特别适合周期性变化的应用程序,它由CloudWatch自动启动

服务管理控制台

  • 基于web的控制环境,用于启动、管理EC2实例和提供各种管理工具和API接口。
  • 各项技术通过互相配合来实现EC2的可扩展性和可靠性
    在这里插入图片描述

EC2安全及容错机制

  • 安全组是一组规则,用户利用这些规则来决定实例接受哪些网络流量。

  • 当用户的实例被创建时,如果没有指定安全组,则系统自动将该实例分配给一个默认组

  • 默认组只接受组内成员的消息,拒绝其他消息。

  • 当一个组的规则改变后,改变的规则自动适用于组中所有的成员。


  • 用户在访问EC2时需要使用SSH(Secure Shell)密钥对(Key Pair)来登录服务。
  • SSH是目前对网络上传输的数据进行加密的一种很可靠的协议
    在这里插入图片描述
  • 当用户创建一个密钥对时,密钥对的名称(Key Pair Name)和公钥(Public Key)会被存储在EC2中
  • 在用户创建新的实例时,EC2会将它保存的信息复制一份放在实例的元数据(Metadata)中,然后用户使用自己保存的私钥(Private Key)就可以安全地登录EC2并使用相关服务。

EC2弹性IP地址

  1. 弹性IP地址和用户账号绑定而不是和某个特定的实例绑定
  2. 当系统正在使用的实例出现故障时,用户只需要将弹性IP地址通过网络地址转换NAT转换为新实例所对应的私有IP地址
  3. 通过弹性IP地址改变映射关系总可以保证有实例可用

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

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

相关文章

Pyside6:多行按钮点击判断序号

在Pyside开发过程中会遇到这么个问题:当多个按钮在很多行中,需要在点击槽函数中确认按钮的行。 普通的按钮点击信号如下: clicked() 该信号并未有任何参数,无法得到有效的信息,那么如何完成点击哪个确定是哪个按钮呢…

计算机系列之校验码

6、校验码 1、码距 码距:就单个编码 A: 00 而言,其码距为 1,因为其只需要改变一位就变成另一个编码。**在两个编码中,从 A 码到 B 码转换所需要改变的位数成为码距,**如 A: 00 要转换为 B: 11,码距为2。一…

WIFI信号状态信息 CSI 特征提取篇之活动片段提取上(五)

在之前的数据处理环节中,用CSI Tool收集到的原始数据信号,经历了数据解析、降噪、插值的处理步骤,变成了干净、完整的信号片段,这是后续做更进一步分析的基础。 在开始阅读本篇博客前,需要说明两个重要的点&#xff1…

使用ClickHouse、Grafana和WarpStream规模化的解决可预测成本的日志留存

本文字数:13234;估计阅读时间:34 分钟 作者:Dale McDiarmid & Ryadh Dahimene 审校:庄晓东(魏庄) 本文在公众号【ClickHouseInc】首发 简介 在生产环境中操作任何复杂的技术堆栈而没有适当…

2024年低碳技术与污染控制技术国际学术会议(ICLCTPCT 2024)

2024年低碳技术与污染控制技术国际学术会议(ICLCTPCT 2024) 2024 International Conference on Low carbon technology and pollution control technology 一、【会议简介】 2024年低碳技术与污染控制技术国际学术会议,是交流科研成果的绝佳平台。 这次会议将汇集世…

如何利用美国站群服务器实现有效的SEO优化策略?

如何利用美国站群服务器实现有效的SEO优化策略? 在当今数字化时代,SEO优化对于网站的可见性和吸引力至关重要。站群服务器作为一种有效的SEO策略,可以通过多个相关联的网站在不同服务器上的部署,增强网站的权威性和链接多样性。尤其是在利用…

vector的使用(部分接口)

1.vector的使用 1.1vector的定义 (constructor)构造函数声明接口说明vector()无参构造vector (const vector& x)拷贝构造 1.2vector iterator 的使用 iterator的使用接口说明begin end获取第一个数据位置的iterator/const_iterator, 获取最后一个数据的下一个位…

【做算法学数据结构】二叉树的层序遍历【二叉树】

文章目录 题目二叉树二叉树描述二叉树的java描述和前序遍历、后序遍历、中序遍历 题解总结以及二叉树应用场景 题目 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历…

力扣HOT100 - 98. 验证二叉搜索树

解题思路&#xff1a; class Solution {public boolean isValidBST(TreeNode root) {return recur(root,Long.MIN_VALUE,Long.MAX_VALUE);}public boolean recur(TreeNode root,long lower,long upper){if(rootnull) return true;if(root.val<lower||root.val>upper) re…

python爬虫之爬取携程景点评价(5)

一、景点部分评价爬取 【携程攻略】携程旅游攻略,自助游,自驾游,出游,自由行攻略指南 (ctrip.com) import requests from bs4 import BeautifulSoupif __name__ __main__:url https://m.ctrip.com/webapp/you/commentWeb/commentList?seo0&businessId22176&busines…

爬虫零基础学习,第一天,安装环境,requests库常用命令的讲解

Python爬虫 爬虫学习思路 URL内容获取&#xff0c;requests的基本常用语法 import requests # 先向目标网站发送请求 url "http://www.baidu.com" r requests.get(url) # 可以用看一下访问码返回值是不是200&#xff0c;若是200则表示访问成功 print(r.status_…

Web3与物联网:探索区块链如何驱动智能设备的未来

引言 在数字化快速发展的时代&#xff0c;Web3技术和物联网&#xff08;IoT&#xff09;都成为了前沿技术的代表。两者的结合正逐渐展现出无限的可能性&#xff0c;尤其是在智能设备和数据安全方面。本文将深入探讨Web3如何与物联网相结合&#xff0c;以及这种结合对未来智能设…

现货白银价格走势分析别走弯路!

参与现货白银投资离不开对其价格走势的分析&#xff0c;虽然相关的分析方法有很多种&#xff0c;但说到直观高效的方法&#xff0c;技术分析就是很多专业投资者所钟爱的选择。投资者可以通过平台交易软件所自带的技术指标和画线工具&#xff0c;来辅助自己的分析&#xff0c;实…

UltraScale+的10G/25G Ethernet Subsystem IP核使用

文章目录 前言一、设计框图1.1、xxv_ethernet_01.2、xxv_ethernet_0_sharedlogic_wrapper1.3、xxv_ethernet_0_clocking_wrapper1.4、xxv_ethernet_0_common_wrapper 二、IP核配置三、仿真四、上板测速五、总结 前言 前面我们学习了很多基于XILINX 7系列的高速接口使用&#x…

【SpringBoot整合系列】SpringBoot配置多数据源

目录 背景技术选型配置多数据源思路(以两个为例)代码实现1.导入依赖2.各自的配置 3.各自的dataSourcenews数据库的smbms数据库的注意&#xff1a;Primary注解 4.各自的SqlSessionFactory等news数据库的smbms数据库的 5.去掉启动类头上的MapperScan6.各自的mapper接口7.各自的ma…

力扣HOT100 - 230. 二叉搜索树中第K小的元素

解题思路&#xff1a; class Solution {List<Integer> list new ArrayList<>();public int kthSmallest(TreeNode root, int k) {dfs(root);return list.get(k - 1);}public void dfs(TreeNode root) {if (root null) return;dfs(root.left);list.add(root.val)…

【Netty框架问题总结】

文章目录 Netty初步认识Netty简单介绍为什么jdk已经实现了NIO还要用netty框架&#xff1a; Reactor 线程模型Reactor 单线程模型Netty线程模型 Netty 简单实现EchoClient端实现&#xff1a;ClientHandler实现EchoServer实现ServerHandler实现&#xff1a; Netty初步认识 Netty…

【VSCode调试技巧】Pytorch分布式训练调试

最近遇到个头疼的问题&#xff0c;对于单机多卡的训练脚本&#xff0c;不知道如何使用VSCode进行Debug。 解决方案&#xff1a; 1、找到控制分布式训练的启动脚本&#xff0c;在自己的虚拟环境的/lib/python3.9/site-packages/torch/distributed/launch.py中 2、配置launch.…

检查*.bib参考文献是否重复

安装bibtexparser pip install bibtexparser 代码 import bibtexparser from difflib import SequenceMatcherdef parse_bib_file(filename):with open(filename, r, encodingutf-8) as bibfile:bib_database bibtexparser.load(bibfile)return bib_database.entriesdef fi…

Python构建学生信息管理系统:构建RESTful API - 学生信息管理系统的后端逻辑

在之前的博客里&#xff0c;我们已经完成了项目初始化&#xff0c;在本篇博客中&#xff0c;我们将深入探讨如何使用Flask框架实现学生信息管理系统的后端逻辑&#xff0c;特别是通过RESTful API来实现学生信息的增删改查&#xff08;CRUD&#xff09;操作。 Flask RESTful AP…