详解如何使用AWS完善架构框架改造云上架构

2023-11-05

对于大部分项目来说,上云后的重构才刚开始。因为很多企业在上云之初,只是简单的把从前在物理服务器上的业务放到云上,并没有针对云环境做优化,没有充分到利用云服务的优势。上云之后,你需要重构业务架构,以提升企业的IT能力,比如通过架构优化让你的业务能够承载更大的并发量等等。

针对如何优化云上业务架构,AWS有一套完善的架构方案。在3月4日光环云社群直播《使用AWS优良架构改造业务》中,光环云的陈昕老师为我们分享了这套架构方案。

 

以下是本次直播的精华摘要:

云运营规划和云原生

上云之后,有四个层面的内容需要你重点考虑:分别是安全、运维、人员、业务。

安全

•理解责任共担模型

•应用云安全产品辅助实施安全策略

•梳理系统安全措施 ,确保没有遗漏

运维

•监控云上资源

•合理设置备份策略

•建立灾难恢复机制

人员

•建立云团队

•根据业务转型制定相应的KPI

•培训团队的云技能

业务

•应用云优势重构业务系统架构

•不要让基础设施限制业务发展

•实施敏捷开发和DevOps

从单体架构,到多层架构、SOA,到微服务、云原生,是很多企业上云之后的软件架构演进过程。为何云原生技术越来越流行?因为软件开发应用云原生技术有以下价值:

•使用标准化流程自动配置,从而使新的开发者花费最少的学习成本加入这个项目。

•适合部署在现代的云计算平台,从而在服务器和系统管理方面节省资源。

•将开发环境和生产环境的差异降至最低,并使用持续交付实施敏捷开发。

•可以在工具、架构和开发流程不发生明显变化的前提下实现扩展。

AWS完善架构框架

AWS完善架构框架是一套指导你用最佳实践去改进业务架构的工具。其作用是:增强使架构符合最佳实践的意识,针对容易被忽略的基本设置,持续评估现有架构,并影响未来架构的改进。

AWS完善架构框架包含五大支柱,每一部分都包括支柱、设计原则、问卷三个方面。

AWS完善架构框架的一般性设计原则如下:

• 不再猜测您的容量需求

• 以生产规模进行系统测试

• 自动简化架构实验

允许实现架构演进

• 数据驱动型架构

• 通过演练活动实现改进

AWS完善架构框架的五大核心支柱包括:安全性、可靠性、性能效率、成本优化、卓越操作。

安全性:在交付商业价值的同时,通过风险评估与缓解策略保护信息、系统以及资产的能力。

可靠性:系统从基础设施或者服务故障当中实现恢复、以动态方式获取计算资源以满足需求,以及缓解配置错误或者暂时性网络问题等干扰因素的能力。

性能效率:高效利用计算资源以满足系统要求,同时在需求变更及技术演进时维持这种效率水平的能力。

成本优化:避免或者消除不必要成本或者次优资源的能力。

卓越操作:运行并监控系统以交付商业价值,同时持续改进支持流程与规程的能力。

以下详细介绍一下五大支柱的内容。

安全支柱

安全性支柱包含通过风险评估和缓解策略,在提供业务价值的同时保护信息、系统和资产的能力。

设计原则

•在所有层面应用安全性

•启用可追溯性

•自动响应安全事件

•专注于保护您的系统

•自动实施安全最佳实践

云中的安全性我们重点关注四个方面:

1.数据保护:包括静态数据和动态数据。

2.特权管理:遵循最小特权原则。

3.基础设施保护:服务器、数据库的安全。

4.探测性控制:要感知到外部的安全风险。

(模型图来自AWS官网)

上图是AWS与用户责任共担的安全模型。关于AWS在云安全方面的策略,在光环云2月19日的直播《云时代从AWS看云安全》中已经详细介绍过。

上图是AWS安全支柱方面的最佳实践。在AWS的白皮书里讲的比较详细了,这里提炼了一些需要重点关注的要点。

在这一部分中,会用到AWS的一些关键服务,可见下图。

可靠性支柱

可靠性支柱指的是系统从基础设施或服务故障中恢复的能力,动态获取计算资源以满足需求,并减少错误配置或瞬时网络问题等干扰。

设计原则:

•测试恢复过程

•自动故障恢复

•横向扩展提升总体可用性

•不再依靠猜测确定容量需求

•自动管理变更

设计架构时,要尽量用一些云原生的理念,比如容器化、模块间松耦合、横向扩展、充分利用托管服务优势等,这会大大提高你的业务应用可用性。

下表列出了可靠性支柱的最佳实践:

这部分用到的AWS关键服务如下图:

性能效率支柱

性能效率支柱主要目的是提升业务系统的性能,减少浪费,让你用更少的资源承载更多的业务。

设计原则

•普及先进技术:原本难以实现的技术方案,如今通过将相关知识与复杂性因素转由云服务供应商承担而更容易实现

•数分钟内实现全球化:只需要数次点击,即可轻松将您的系统部署至全球范围内的多个区域

•使用无服务器架构:在云环境当中,无服务器架构能够帮助您在实施传统计算活动的同时,摆脱运行并维护服务器的日常负担

•提升实验频率: 凭借着虚拟与可自动化资源,您将能够快速利用多种不同实例、存储或者配置类型完成各类综合性测试

•数据支撑:切实使用能够与您欲达成之目标相匹配的技术方案

性能效率支柱的最佳实践和关键服务见下图:

卓越运维支柱

卓越运维,指的是在系统运维的时候监控系统,侧重于运行和监测系统以提供业务价值,并不断改进流程和程序。

设计原则:

•使操作流程与业务目标保持一致

•用代码执行操作

•定期执行小的增量变更操作

•测试对意外事件的响应

•从操作事件和失败中学习

•保持操作流程最新

卓越运维支柱的最佳实践和关键服务见下图:

成本优化支柱

成本优化,侧重于避免或消除不必要的成本或者次优资源。

设计原则

•采用消费资源模型(OpEx)

•从规模经济中受益

•停止在数据中心运营方面投入资金

•以透明方式确定支出归属并分析

•使用托管服务降低总拥有成本

成本优化支柱的最佳实践和关键服务见下图:

关于成本优化如果你想了解更多详情,可以期待我们下期的直播《如何做好AWS成本优化》,时间是3月12日下午16:00 。

应用AWS完善架构框架的案例

以上介绍了AWS完善架构框架的主要内容,下面我们用一个案例来总结一下。

仔细查看下图右侧的架构图,思考应该如何改造这个业务架构,使其更适合云上的环境?

好了,你的思考有答案了吗?我们来看看优化后的架构是怎样的。

了解为什么这么改,请查看本次直播的视频资料。视频可找光环云社群管理员sinnet-cloud索取。

下期直播,我们邀请了社群里的李成文(重生的胖胖)老师来分享《如何做好AWS成本优化》,敬请期待。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

详解如何使用AWS完善架构框架改造云上架构 的相关文章

  • Jmeter进阶使用指南-使用参数化

    Apache JMeter是一个广泛使用的开源负载和性能测试工具 在进行性能测试时 我们经常需要模拟不同的用户行为和数据 这时候 参数化就显得尤为重要 此文主要介绍如何在JMeter中使用参数化 什么是参数化 参数化是一种将静态值替换为动态
  • 深入理解HashMap和LinkedHashMap的区别

    简介 我们知道HashMap的变量顺序是不可预测的 这意味着便利的输出顺序并不一定和HashMap的插入顺序是一致的 这个特性通常会对我们的工作造成一定的困扰 为了实现这个功能 我们可以使用LinkedHashMap LinkedHashM
  • 【配电变电站的最佳位置和容量】基于遗传算法的最优配电变电站放置(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 基于遗传算法的最优配电变电站放置 为了实现
  • iseacms1.0漏洞复现

    iseacms1 0漏洞复现 作者 admin 时间 2021 06 29 分类 漏洞复现 Index php源码 文件包含 参数转义了 0 利用方式有限在网站目录有phpinfo php文件的前提下 payload为 index r te
  • 【十三】Nacos 服务注册和配置中心

    目录 Nacos 初识 Nacos 服务部署 注册中心服务部署 服务提供者注册到Nacos 服务消费者从Nacos获取服务 负载均衡 Nacos 服务详解 实列服务详情详解 Nacos 初识 Nacos Dynamic Naming and
  • Android 输入框的输入提示效果(AutoCompleteTextView)

    在一些体验较好的APP中 输入框输入时会有相应的提示 让人能够很快的通过点击提示进入下一步 这里 我就通过自己构思 实现了一个通过 SharedPreferences 保存的输入提示 demo 实现 1 实现一个 SharedPrefere
  • opencv项目实战(二)——文档扫描OCR识别

    一 项目描述 二 代码详解 2 1 预定义参数 2 2 辅助函数 2 3 文档矫正 2 4 文档识别 三 项目完整代码 一 项目描述 目的 将图片中的文档矫正 并识别文档内容 输入与输出 方法流程 核心思想 采用tesseract ocr进
  • 前端在vue2框架中导出PDF

    1 需求 导出具有页眉页脚 页码的Pdf 并且解决Pdf分割的问题 2 实现思路 该需求主要的难点在于分页的时候容易出现分割问题 并且要将页眉页脚加进去 实现的大概思路 1 先使用jsPDF html2canvas将页面可以导出 2 第一页
  • PHP 8突破性变化

    新的PHP首要版别PHP8估计将于2020年底发布 它现在正处于十分活泼的开发中 所以在接下来的几个月里 开发速度和开发进程或许会有很大的改动 在这篇文章中 我会罗列出PHP8中会发作的一些改动 新功能 性能改善和突破性改动 由于PHP8是
  • redis 二. string 应用场景及底层分析

    String 字符串类型 一 简单命令示例 二 java 操作示例 基础 setnx 与 getset 三 使用场景举例 统计点击次数 四 底层分析 SDS 嵌入式动态字符串 再次总结 一 简单命令示例 String字符串类型 一个key对
  • Netty入门详解

    Netty是什么 Netty是 一个异步事件驱动的网络应用程序框架 用于快速开发可维护的高性能协议服务器和客户端 本质 网络应用程序框架 实现 异步 事件驱动 特性 高性能 可维护 快速开发 重要的类 方法解析 EventLoop Even
  • B站最全:给小白的Python入门教程

    如今绝大多数互联网公司 谷歌 腾讯 阿里 百度 知乎等 的很多职位要求应聘者必须具有 Python技能 学会了 Python 等于手握他们的敲门砖 0 编码基础的你 学会 Python 以后 你一个人可以做五个人的工作 最主要的是下班早 月
  • JAVA内部类

    内部类是一种类的结果扩充 一个类的内部除了属性和方法外 还可以存在其他类的结构 并且内部类也可以定义在方法或代码块中 基本概念 所谓的内部类指的就是在一个类的内部继续定义其他内部结构类 观察内部类的基本形式 package oop 观察内部
  • 服务器更换系统教程视频,更换服务器教程视频

    更换服务器教程视频 内容精选 换一换 本节操作介绍如何在移动设备上连接Linux实例 以iTerminal SSH Telnet为例介绍如何在iOS设备上连接 Linux 实例 详细操作请参考IOS设备上登录Linux云服务器 以Juice
  • vue调用视频播放插件

    安装依赖 npm install vue video player S 引入配置 import VideoPlayer from vue video player require video js dist video js css req
  • 如何直接关闭使用3306端口的进程

    要直接关闭使用3306端口的进程 你可以按照以下步骤进行操作 以关闭占领3306端口MySQL服务为例 获取占用3306端口的进程ID PID 在终端中执行以下命令 sudo lsof i 3306 查找输出中的进程ID PID 列 以及它
  • shell IF条件判断,判断条件

    http hi baidu com ryouaki item 0689dcb8a467b5a7eaba9319 前言 无论什么编程语言都离不开条件判断 SHELL也不例外 if list then do something here eli
  • k8s笔记17--ubuntu & k8s 开启 swap功能

    k8s笔记17 k8s 中途开启 swap功能 1 介绍 2 方法 2 1 ubuntu 开启swap 2 2 k8s 开启swap 3 说明 1 介绍 swap 功能是 linux是一个非常强大的功能 类似于windows的虚拟内存 当内
  • 【vue3+elementPlus】在el-table中使用popconfirm、popover、tooltip、select时,出现placement错位或者框被table的列遮挡的解决方案

    首先 第一种情况 项目设置了zoom 会导致el popconfirm el popover el tooltip el select位置不对 解决方案 temported false 给以上标签加该属性 意思是不插入body el pop

随机推荐

  • 一文读懂Uniswap V2的改进与创新

    Uniswap V2是链上交易所的下一个迭代产品 Uniswap是Ethereum区块链上的一个链上流动性协议 它可以实现无信任的代币交换 这意味着所有的交易都是由智能合约执行的 而不需要中介或受信任方 这种去中心化的交换代币的方法已经被证
  • Springboot2(27)集成netty实现反向代理(内网穿透)

    源码地址 springboot2教程系列 其它netty文件有博客 Springboot2 24 集成netty实现http服务 类似SpingMvc的contoller层实现 Springboot2 25 集成netty实现文件传输 Sp
  • 关于libc.so.6误删除紧急恢复的方案

    编者在一次实际生产下不小心将 libc so 6 变成了libc so 6 bak 当时没有发觉有什么不妥 但是在后面的时候 发现很多命令都无法使用 为了以后方便解决 所以将解决的方法记录 root用户下产生的libc so 6问题解决方法
  • ES6中Fetch的封装及使用,炒鸡简单~

    1 封装 http js class Ajax get url return new Promise resolve reject gt fetch url then res gt res json then data gt resolve
  • StyleCop 代码审查(VS插件)

    代码审查 StyleCop 介绍 下载 使用 自定义规则 源码 StyleCop简介 StyleCop是代码规范检查工具 Code Review 工具 它不仅仅检查代码格式 而是编码规范 包括命名和注释等 StyleCop可以帮助你更容易地
  • 【Matlab学习笔记】【数学形态学】数字图像处理(MATLAB版)冈萨雷斯第九章学习笔记

    1 形态学源于生物学 最初用于处理动植物的形状和结构 用于提取区域的形状 边界 骨骼或凸壳 形态学图像处理主要用于图像预处理和后处理 包括形态学滤波 细化和裁剪等 2 图像的形态学处理 由二值图像开始 逐步扩展到灰度图像 彩色图像 由简单到
  • 深入浅出SQL(3)-在Mac OS X上安装MySQL

    如何在Mac OS X上安装MySQL 下载安装包 打开官方下载地址 https dev mysql com downloads 选择合适版本的安装包 新建Oracle MySQL账户 email H10 登陆后下载安装包 安装 安装过程中
  • openGL GLSL GLSL.Refract & Reflect & Diffraction 反射、折射、衍射Fresnel Effect

    一 Refract Reflect Snell定律描述了光线从一个介质传播到另外一个介质时 入射角 折射角以及介质折射率的关系 通过snell定律 可以根据入射光的方向向量求取折射光的方向向量 Fresnel定律完善了光的衍射理论 当光线到
  • C++中GB2312字符串和UTF-8之间的转换

    在编程过程中需要对字符串进行不同的转换 特别是Gb2312和Utf 8直接的转换 在几个开源的魔兽私服中 很多都是老外开发的 而暴雪为了能 够兼容世界上的各个字符集也使用了UTF 8 在中国使用VS VS2005以上版本 开发基本都是使用G
  • MyBatis 配置多数据源

  • 解决FTP client 上传文件失败

    遇到的问题 在测试环境可以正常上传pdf 到了预发布环境虽然登陆成功了 但是上传的文件都是0KB 后来发现原来是运维添加了安全策略 需要在代码里添加以下方法 FTPClient enterLocalPassiveMode 调用FTPClie
  • 更换数据集

    以yolov5 deepsort的行人检测项目说一下怎么更换数据集 最终目标是要生成四个文件夹 一开始只有两个文件夹 1 标注文件 在终端输入lableme即可打开 尝试一下多分类 又是人 又是女人 如果win的lable导出的文件是xml
  • 安装SAPTrex

    1 下载安装包2 安装过程3 启动Admin工具C usr sap T02 TRX02TREXAdmin bat4 保存后 SM59会有一个新的T连接生成5 进去tcode SRMO 转载于 https blog 51cto com jen
  • android adb install apk的安装流程

    目录 一 PackageManagerService启动流程 二 apk adb安装流程 一 简介 1 Android上应用安装可以分为以下几种方式 通过adb命令安装 adb 命令包括adb push install 用户下载的Apk 通
  • 后端代码审计——PHP函数及PHP危险函数

    文章目录 PHP函数 1 自定义函数 1 1 函数语言结构 1 2 函数传参 1 3 函数调用 1 3 1 函数调用过程 1 4 变量范围 1 4 1 局部变量 1 4 2 全局变量 1 5 参数传递 1 5 1 按值传参 1 5 2 默认
  • 【程序员的财富自由之路】停更说明...

    停更原因 一个月前我发表了 程序员的财富自由之路 开篇序这篇文章 承蒙CSDN博客编辑的厚爱 将该专栏推荐到了专栏首页显示 因此带来了很多网友的关注 写那篇文章的时候 我信心满满 但惭愧的是 一个多月过去了 我仍然没有更新过专栏文章 让很多
  • 央行数字货币开始崛起:DC/EP正在领跑全球

    2020年8月24日 国际清算银行 以下简称BIS 发表题为 央行数字货币崛起 驱动因素 方法和技术 的工作报告 报告认为 央行数字货币 以下简称CBDC 将极大改变人类未来的支付以及生活方式 在全球诸多经济体中 中国人民银行的数字货币DC
  • golang exec 标准错误输出有 error 但是 err 是 nil

    golang 的 exec 模块 有可能标准错误输出会有类似 ERROR Incorrect date and time argument 2021 11 16 13 52 10 0000 UTC 但是 err 确是 nil package
  • \r \n 和strcat 笔记

    r 回车 ASCII码13 r gt return n 换行 ASCII码10 n gt newline 在Windows中 r 回车 回到当前行的行首 而不会换到下一行 n 换行 换到当前位置的下一行 而不会回到行首 描述 C 库函数 c
  • 详解如何使用AWS完善架构框架改造云上架构

    对于大部分项目来说 上云后的重构才刚开始 因为很多企业在上云之初 只是简单的把从前在物理服务器上的业务放到云上 并没有针对云环境做优化 没有充分到利用云服务的优势 上云之后 你需要重构业务架构 以提升企业的IT能力 比如通过架构优化让你的业