1. 数据中心定义
IDC(Internet Data Center)互联网数据中心
通过服务器专门对数据进行集中管理(存储、计算、交换)
定义:数据中心是一套复杂的设施。它不仅仅包括计算机系统和其它与之配套的设备(例如通信和存储系统),还包含荣誉的数据通信连接、环境控制设备、监控设备以及各种安全装置。
数据中心设计规范:GB 50174-2017
《互联网数据中心工程技术规范》:GB 51195-2016
互联网数据中心(IDC)工程设计规范:YD 5193-2014
2. 级别
国内:GB 50174-2017
• A级:运行中断将造成重大损失;运行中断将造成公共场所秩序严重混乱
• B级:运行中断将造成较大的经济损失;运行中断将造成公共场所秩序混乱
• C级:不属于A级或B级的数据中心为C级
国际:TAL-942-B-2017
• Tier 1:基级,基本基础设施,数据中心的只具有一组线,包括电力和互联网,连接系统的所有缺乏冗余的设备(包括计算和存储)
• Tier 2:冗余设备级,冗余能力元件基础设施,具有冗余设备的数据中心的水平,但仍然是一组线连接到系统的所有设备
• Tier 3:平行维护级别,同时维护的基础设施与设备的冗余数据中心的级别,所有计算机都有双电源和数据中心建筑结构按照合理的安装。此外,Tier 3数据中心要求几套动力配电线路系统来同时连接电脑设备
• Tier 4:容错级,容错基础设施,数据中心水平多重、独立、相互冗余设备物理上分离,所有的电脑设备有双电源,并根据数据中心建筑结构的合理安排
C级 <—> Tier 1
B级 <—> Tier 2
A级 <—> Tier 3和Tier 4
分类要素:电源、制冷
选址:
地理条件因素
• 海拔高
• 气温低
• 非地震带
成本因素:
• 电费
政策导向:
• 国家规划
• 当地政府引资
3. 数据中心分类
(1)企业数据中心
(2)运营商数据中心
(3)互联网数据中心
4. 数据中心的基础设施
• 基础设施:机房、装修、供电(强电和UPS)、散热、综合布线、安防、空调等相关设施
• 物理设施:机柜、服务器、网络设备、网络安全设备、存储设备、容灾设备等
• 基础软件:操作系统、数据库软件、防病毒软件等
• 管理支撑软件:机房管理软件、集群管理软件、云平台软件、虚拟化软件等
5. 数据中心的发展
• 计算机时代:集中化
• 互联网时代:分散化
• 云计算时代:智能模块化
6. 传统数据中心现状
(1)资源物理隔离
• 传统数据中心是资源的物理隔离
• 业务发放依赖于人工控制
• 周期长,资源利用率低,费用高
• 业务扩展限制在单个物理DC(Datacom Center),跨DC业务部署复杂
(2)网络架构局限
• 三层架构:核心+汇聚+接入
• 适用于政府啊、金融、大企业等单个POD业务分区规模不大的场景。STP只能支持50个网络节点,并且收敛时间长,不适宜云数据中心大规模组网
• STP构建无环网路时,需要阻断一半的连接,带宽利用率低。堆叠的组网规模不仅受限于两台核心交换机的端口密度,而且限制了数据中心规模
(3)问题与痛点:IT复杂(资源分散、利用率低、平均业务恢复时间长、工程师手工分配资源、多重运维工具),商业迟缓(大数据处理能力差,不能有效提升商业嗅觉、资源需求无法弹性适配、不能有效支撑企业全生命周期发展、多DC分散管理协同性差,商业注意力难以集中)
1. 云计算产生背景
(1)信息时代的重大变革
(2)数据量爆炸性增长
GB->TB->PB->EB->ZB
(3)IT基础设施能耗
计算机集群系统犹豫采用商用化部件,其能耗问题更为突出
(4)服务器更新速度快企业升级费用昂贵
如果购置大量的存储和计算设备,那么投资和维护费用会大大提高,同时低水平的利用率也会造成资源的巨大浪费
(5)互联网上存在着大量处于闲置状态的计算设备和存储资源
Google的数据表明其绝大部分服务器的利用率在10%到50%之间
无法应对突发性的数据访问行为
需求 推动、技术 进步、商业模式 变革
2. 云计算发展史
(1)云计算演进
自建机房(规划、建设、部署、运维等)
|
传统IDC托管(自己购买硬件,业务系统自己维护)
|
云计算(无需担心硬件设备的性能限制、专注内部业务开放和创新)
(2)云计算发展事记
2006.3:Amazon发布了自己公司的云平台
2006.8:Google CEO埃里克在搜索引擎大会上首次提出“云计算”的概念
2008:IBM在我国无锡建立了全球第一个云计算中心。戴尔公司首次向美国专利局申请“云计算”商标。微软发布其公共云计算平台(Windows Azure Platform)
2009:首个电子上午云计算中心在我国江苏南京成立,这是阿里软件公司建立的第一个相对完善的云计算中心
2010:NASA和Rackspace,AMD、DELL等公司共同宣布“OpenStack”开放源代码计划,持续推动开源的云平台管理项目的发展
2013:微软公司再次推出云操作系统Cloud OS,IBM首次宣布将顶级计算基础结构服务引入中国大陆
2015:AWS 46亿美元的营收数据,不仅让外界知道了亚马逊的实力,也让大众清楚地认识到了云计算广阔的发展前景
3. 云计算的影响
社会各行各业信息化和智能化程度显著提高
人类社会将变成以信息为中心的社会:
• 每个人将拥有两个大脑,人体大脑和信息大脑
• 各个社会组织和企业的主要活动一般通过互联网进行
• 云计算将成为与电力、水、煤一样重要的基础设施
• 企业将信息化系统视为基本条件
4. 云计算概念
(1)云计算定义
是一种按使用量付费的一种服务模式,而不是单纯的指某项具体的技术应用或标准,这种模式提供可用的、便捷的、按需访问网络上的资源(包括网络、服务器、存储、应用软件、服务)。只需投入很少的管理工作,或与服务供应商进行很少的交互,就可以让这些资源能够被快速提供。
(2)云计算中角色
服务提供者:以租代售、由卖产品变为卖服务,提高资源利用率降低服务成本
服务使用者:以租代买,提高投资回报率
(3)云计算基本思想
• 所有计算能力、存储能力和各种功能的应用都通过网络从云端获得
• 用户不需要不停地更换昂贵的高性能电脑
• 用户不需要购买、安装和维护各种系统和应用软件
• 用户不需要担心数据的安全存储
(4)云计算特征
• 超大规模
• 虚拟化
• 按需服务
• 高可靠性
• 高可扩展性
• 通用性
• 极其经济廉价
• 自动化
• 完善的运维机制
5. 云计算优缺点
(1)优势分析
• 对于社会:降低能耗,减少排放;提高IT设备使用率,降低设备数量;信息技术产业进一步合理分工;有利于全社会共享信息,打破信息孤岛
• 对于云计算消费者:降低前期投入成本和日常使用成本;提高了系统的可靠性、安全性、用户体验;专注于自己的核心业务和市场;快速响应对计算资源的弹性需求
(2)劣势分析
• 严重依赖网络
• 数据可能泄露的环节增多(安全性)
• 风险集中
• 用户对技术和数据的掌控都下降
1. 云计算技术架构
信息时代的重大变革
物理资源层:包括计算机、存储器、网络设备、数据库等
资源池层:将大量相同类型的资源构成同构或接近同构的资源池,是物理资源的集成和管理工作
管理中间件:负责对云计算的资源进行管理,并对众多应用任务进行调度,使资源能高效、安全的提供服务
SOA构建层:将云计算能力封装成标准的服务,并进行管理和使用。
管理中间件和资源池层使云计算关键部分。
2. 云计算关键技术
云计算的目标是以低成本的方式提供高可靠、高可用、规模可伸缩的个性化服务,为了达到这个目标,需要数据中心管理、虚拟化、海量数据处理、资源管理与调度、QoS保证、安全与隐私保护等关键技术。
(1)虚拟化技术
虚拟化将物理资源转变为具有可管理性的逻辑资源
• 虚拟化的对象是各种各样的资源
• 经过虚拟化后的逻辑资源对用户隐藏了不必要的细节
• 用户可以在虚拟环境中实现其在真是环境中的部分或全部功能
服务器虚拟化:将一台服务器虚拟成若干虚拟服务器
桌面虚拟化:将计算机中断系统进行虚拟化,达到桌面使用的安全性和灵活性,通过网络访问属于我们个人的桌面系统
存储虚拟化:对存储硬件资源进行抽象化表现(网盘等)
网络虚拟化:在一个物理网络上模拟出多个逻辑网络
应用虚拟化:把应用对底层的系统和硬件的依赖抽象出来,可以解决版本不兼容的问题
vmware:Vsphere、VMware Horizon、vCloud Suite
Citrix:XenServer、XenDesktop、XenApp、CloudStack
Microsoft:Hyper-V、VDI、APP-V
Redhat:KVM、OpenStack
分类:
全虚拟化、半虚拟化、硬件辅助虚拟化、操作系统级虚拟化、软件虚拟化
(2)海量数据存储与处理
采用分布式存储,实现更好的扩展性、更大的容量以及更好的性能指标
技术优点:
• 系统可架设在容易失效的廉价硬件平台上
• 运行在多台节点上,自动整合
• 能存储大量GB级甚至TB级的大文件
• 整合集群内所有存储空间资源,虚拟化并对外提供文件访问服务
• 更好的扩展性,更大的容量,更适合大规模数据的性能需求
云计算不仅要实现海量数据的存储,而且要提供面向海量数据的分析处理功能,由于部署在大规模硬件资源上,因此海量数据的处理需要抽象处理过程,并要求其编程模型支持规模扩展,屏蔽底层细节的同时简单有效,如Google提出的并行编程模型MapReduce
(3)资源管理与调度技术
副本管理技术
任务调度算法
任务容错机制
(4)服务管理技术
Qos保证机制
安全与隐私保护技术
资源监控技术
服务计费模型
(5)云计算管理平台
从技术应用看:
• 计算型云平台
• 存储型云平台
• 综合云计算平台
是否收费来划分:
• 开源云计算平台(openstack、hadoop)
• 商业化云计算平台
(6)云计算技术发展趋势
从封闭走向开源
从单一解决方案走向融合
从统一管理到自动化实现
从紧耦合走向模块化设计
1. 云计算分类
(1)公有云
公有云是一种对公众开放的云服务,优点是其所应用的程序及相关数据都存放在公有云的平台上,用户无需前期的大量投资和漫长的建设过程。
数据安全和隐私等问题是使用公有云时较为担心的问题
优势:
• 规模大:能聚集来自于整个社会并且规模庞大的工作负载,从而产生巨大的规模效应
• 价格低廉:按需使用,无需任何前期投入
• 灵活:容量方面几乎是无限的
• 功能全面:可支持多种主流的操作系统和成千上万的应用
(2)私有云
私有云的建设、运营和使用都在某个组织或企业内部完成,其服务的对象被限制在组织内部,其他的人和机构都无权租赁并使用云端计算资源。
• 本地私有云:云端部署在企业内部,私有云的安全及网络安全边界定义都由企业自己实现并管理,一切由企业掌控,所以本地私有云适合运行企业中关键的应用
• 托管私有云:把云端托管在第三方机房或者其他云端,计算设备可以自己购买,也可以租用第三方云端的计算资源,消费者所在的企业一般通过专线与托管的云端建立连接,或者利用叠加网络技术在因特网上建立安全通过(VPN),以便降低专线费用
优势:
• 数据安全
• 服务质量(QoS)
• 充分利用现有硬件资源
• 支持定制和遗留应用
• 不影响现有IT管理的流程
劣势:
• 成本开支高:需要很高的初始成本
• 持续运营成本偏高:企业内部维护一支专业的云计算团队
(3)社区云
社区云服务是由几家企业联合管理和提供给自己使用的,所产生的成本由他们共同承担,因此,所能实现的成本节约效果也并不很大
• 只部署在一个单位组织内部
• 部署在部分单位组织内部
• 部署在全部单位组织内部
(4)混合云
由两个或两个以上不同类型的云(私有云、社区云、公有云),它其实不是一种特定类型的单个云,其对外呈现出来的计算资源来自两个或两个以上的云,只不过增加了一个混合云管理层
云服务消费者通过混合云管理层租赁和使用资源,感觉就像在使用一个云端的资源,其实内部被混合云管理层路由到真实的云端了
优势:
• 架构更加灵活:例如将内部重要数据保存在本地云端,而把非机密功能移动到公有云区域
• 技术方面更容易掌控:私有云部分可以自己掌控技术
• 充分利用现有硬件资源:具备私有云的保密性,同时具有公有云的抗灾性
• 更容易满足合规性要求:融合了专门的硬件设备,提高了网络安全性,更容易通过审计员的合规性检查
• 更低的费用:短时间内的季节性资源需求峰值
2. 云计算应用场景
IDC公有云:在原有IDC的基础上加入了系统虚拟化、自动化管理和能源监控等云的基因
企业私有云:能帮助企业提升内部数据中的运维水平,使用专业的企业云解决方案将整个IT服务的思维从过去的软硬件思维转变为以提供服务为主,使得IT人员能分出精力来创新业务;优势在于建设灵活性和数据安全性,但企业需要付出更高的维护成本、构建专业的技术队伍
云存储系统:通过整合网络中多种存储设备来对外提供云存储服务,并能管理数据的存储、备份、复制和存档
虚拟桌面云:使用了桌面虚拟化技术,将用户的桌面环境与其使用的终端解耦,在服务端以虚拟镜像的形式统一存放和运行每个用户的桌面环境,而用户则可通过小型的终端设备来访问其桌面环境
开发测试云:通过友好的Web界面,可以预约、部署、管理和回收整个开发测试的环境
大规模数据处理云:能对海量的数据进行大规模的处理,工作过程是大规模数据处理云通过将数据处理软件和服务运行在云计算平台上,利用云计算的计算能力和存储能力对海量的数据进行大规模的处理
电子政务云:使用云计算技术对政府管理和服务职能进行精简、优化、整合,通过信息化手段在政务上实现各种业务流程办理和职能服务,为政府各级部门提供可靠的基础IT服务平台,提高政府服务
游戏云:使用更多基于Web的游戏模式;为大容量和高画质的专业有戏设计(碍于现有的网络环境,短时间内不会有特别成熟的技术出现)
云杀毒:通过云中庞大的特征库和强大的处理能力来分析数据是否含有病毒
3. 云计算主流产品
开源的云产品
OpenStack是一个开源的云计算管理平台项目,是主要为公有云及私有云建设与管理提供软件的开源项目,它不是一个软件,二是一系列开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,目前是Apache顶级项目。
Kubernetes是一个可移植、可扩展的开源云平台,主要用于管理容器化的工作负载和服务,可促进声明式配置和自动化。Kubernetes拥有一个庞大且快速增长的生态,其服务、支持和工具的适用范围相当广泛。
商业化产品
阿里云产品
• 阿里云ECS:IaaS
• 对象存储OSS:海量、安全、低成本、高可靠,提供99.9999999999%(12个9)的数据持久性,99.99%的数据可用性
腾讯TStack
式腾讯在互联网业务迅猛发展中沉淀和打磨出的企业级私有化全栈云解决方案,在政府、大中型企业有大量的落地经验
华为云会议
为客户提供全场景端云协同视频会议解决方案,满足跨地区、跨企业、跨终端的智能沟通协作需求
百度ARM云桌面
基于自研的ARM集群服务器及容器技术,为企业提供的高性价、安全合规、开箱即用的新型办公云桌面
1. 云计算架构
云服务提供:面向云服务消费者,提供统一登录界面和访问,根据云服务资源状况和消费者需求,包装云服务资源对云服务的消费设立服务等级,按需计费管理云消费者状态和请求简化和标准化
云服务管理:运行维护云计算架构系统,保障云架构的稳定和可靠
云服务资源:SaaS、PaaS和IaaS
2. 云计算服务层次
基础设施即服务(IaaS)
位于云计算三层架构层次最底端。主要提供计算资源、存储资源、网络资源当成服务提供给用户,使得用户能够按需获取IT基础设施
IaaS主要由计算机硬件、网络、存储设备、平台虚拟化环境、计费方法、服务级别协议等组成
核心技术:
• 虚拟化技术
• 分布式存储技术
• 超大规模资源管理技术
• 云服务计费技术
优势:
• 低成本:不需要购置硬件,满足突发性需求
• 免维护:企业不需要进行维护,维护工作由云计算服务商承担
• 灵活迁移:运行在IaaS上的应用将可以灵活地在IaaS服务平台间进行迁移
• 伸缩性强:可以根据实际业务需求租用云计算服务
• 支持应用广泛:同一个云可以同时支持不同的应用运行
平台即服务(PaaS)
位于云计算三层服务架构中的中间层。主要为用户提供一个基于互联网的应用开发环境,以支持应用从创建到运行整个周期所需的各种软硬件资源和工具
PaaS实际上是指将软件研发的平台作为一种服务提供给用户,比如数据库、文件系统和应用运行环境等
功能:
• 开发测试环境
• 运行环境
• 运维环境
核心技术:
• REST技术
• 分布式缓存
• 应用服务器
• 多租户技术
优势:
• 友好的开发环境
• 丰富的服务
• 精细的管理和控制
• 伸缩性强
• 多租户机制
• 整合率高
IaaS和PaaS比较
• IaaS提供的只是“硬件”层面,保证同一基础设施的大量用户拥有自己的“硬件”资源,实现硬件的可扩展性和可隔离性
• PaaS在同一基础设施上同时为大量用户提供其专属的应用运行平台,实现多应用的可扩展性和隔离运行,使用户的应用不受影响,具有很好的性能和安全性
• PaaS消除了用户自行搭建软件开发平台和运行环境所需要的成本和开销,但应用软件的实现功能和性能会收到服务提供商提供的环境的约束
软件即服务(SaaS)
位于云计算三层服务架构中的顶端。主要将软件服务通过网络(主要是互联网)提供给用户,用户只需要通过浏览器或其他符合要求的设备接入使用即可
SaaS云服务提供商负责维护和管理云中的软件以及支撑软件运行的硬件设施,同时免费为用户提供服务或者以按需使用的方式向用户收费。所以,用户无需进行安装、升级和防病毒等,并且免去了初期的软硬件支出。
特性:
• 互联网特性:SaaS是通过互联网为用户提供服务
• 多租户特性:基于一套标准软件系统为成千上万的不同租户提供服务
• 服务特性:考虑服务合约的签订、服务使用的计量、在线服务质量的保证
• 可扩展特性:最大程度的提高系统并发性,有效的使用系统资源
• 可配置特性:通过不同的配置满足不同用户的需求,而不需要为每个用户进行特定定制
• 随需应变特性:帮助用户面对不断的需求变化
优势:
• 使用简单
• 支持公开协议
• 成本低
• 安全保障
3. 云计算架构与传统架构的区别
传统IT架构:
云计算基础架构:
4. 云计算架构的优势
(1)公有云场景下,企业无需关注底层基础设施的建设与维护,减少了企业IT投入成本
(2)基于云计算操作系统实现资源统一管理调度,有强大的计算能力,具备弹性伸缩能力,高可用及高可靠性
(3)传统IT基础设施难以满足资源快速增长的需求,云计算平台下,可实现业务快速部署上线,缩短业务上线周期
(4)全面安全防护能力,安全质量属性的需求实际上贯穿于云计算架构的自底向上的各个层面
1. 阿里云云计算服务
阿里云创立于2009年,致力于以子啊先公共服务的方式,提供安全、可靠的计算和数据处理能力,让计算和人工智能成为普惠科技
2. 飞天操作系统
飞天(Apsara)是由阿里云自主研发、服务全球的超大规模通用计算操作系统。它可以将遍布全球的百万级服务器连成一台超级计算机,以在线公共服务的方式为社会提供计算能力
阿里云把自己开发的通用计算操作系统命名为“飞天”,是希望通过计算让人类的想象力与创造力得到最大的释放
飞天操作系统架构
3. 神龙计算
阿里云自研的软硬件一体化计算架构,包含“X-Dragon虚拟化芯片”、“X-Dragon Hypervisor系统软件”、以及“X-Dragon服务器硬件架构”,深度融合了物理机和虚拟机特性,可兼顾虚拟机的弹性资源、分钟级交付、全自动运维和物理机的性能优势、完整特性和硬件级隔离,为用户提供了一种新型的计算资源交付方式。
现在第四代神龙架构已经实现完全设备虚拟化、网络存储转发和随路加解密的硬件全加速,百万级节点、99.975% SLA,“0”损耗,安全隔离,飞天+CIPU体系成型
核心组件:
• 神龙资源管控系统:分布式系统形态,以计算资源生命周期管理为中心的算力控制服务
• 神龙资源调度系统:分布式系统形态,负责计算资源的库存弹性以及算力最佳服务器placement的调度决策
• 神龙异常调度系统:分布式系统形态,用于计算资源链路异常的监控、预测、规避和批量处理
• 神龙Hypervisor:系统软件形态,解决计算资源和实例的虚拟化及其可运维、可调度性的相关问题,包括Baremetal & Nearmetal两种内核能力
• CIPU:芯片&硬件形态,前身是MOC卡或神龙软硬一体架构,经过4代硬件芯片体系迭代,在同时卸载加速了神龙计算、盘古存储、洛神网络和安全内核的端系统数据链路后,进化为整个飞天操作系统的云数据中心专用硬件底座
4. 洛神网络
洛神是中国古典神话中国中司掌洛河的水神,寓意是希望云网络的产品,像漕运一样,顺畅通达
• 单低于网络规模:百万VPC
• 网元实例分钟级交付:1Tbps
• 负载均衡可用性:99.995%
5. 盘古存储
采用了分布式系统先进的容错架构和柔性平台设计,支持块存储、对象存储、表格存储、文件存储、离线大数据处理等多重存储模式
架构:
• 客户端:为业务提供访问盘古的接口(API)
• 数据节点:对存储硬件进行管理,实现数据持久化存储,提供抽象的Chunk存储资源
• 元数据服务(Meta):对数据节点进行管理,提供业务访问的文件目录树
• 管控系统(Controller):对用户提供系统运维管控的能力
1. 虚拟化概述
虚拟化是一种资源管理技术,将计算机的各种实体资源(CPU、内存、存储、网络等)予以抽象和转化出来,并提供分割、重新组合,以达到最大化利用物理资源的目的
在传统架构当中,一个物理的主机智能支持一个操作系统及上层应用;有了虚拟化技术,一个物理主机可以被分割成多个虚拟的主机,向上支撑多个操作系统及其应用程序
2. 虚拟化执行层面分类
从实现的方式上划分:
• 硬件虚拟化:硬件虚拟化技术就是指计算机硬件本身提供能力让客户机指令单独执行,而不需要通过VMM截获重定向,如Inter VT
• 软件虚拟化:通过软件模拟来实现VMM层,通过纯软件的环境来模拟执行客户机里的指令,如QEMU
从虚拟化的程度上划分:
• 半虚拟化:需要对GuestOS的内核代码做一定的修改,才能够将GuestOS运行在半虚拟化的VMM中,如virtio
• 全虚拟化:不需要对GuestOS操作系统软件的源代码进行任何的修改,就可以运行在这样的VMM中,如KVM
3. 虚拟化技术层面分类
从云计算资源的角度,分三类
(1)计算虚拟化:
• CPU虚拟化:确保虚拟机上的指令能被正常执行,且效率接近计算机
• 内存虚拟化:虚拟机内存空间隔离,认为拥有独立的内存地址
• I/O虚拟化:虚拟机能够访问所需的I/O资源,并作隔离
(2)存储虚拟化:
• RAID:RAID解决单块硬盘在设备不可靠问题
• 分布式存储:主要在大数据时代而生的
• 分布式文件系统:可以屏蔽底层存储差异
(3)网络虚拟化:
• 网络虚拟化
• 软件定义网络
四层和七层网络虚拟化主要解耦了网络设备和租户之间的关系
二层和三层网络虚拟化主要解耦了服务器和交换机之间的关系
4. 虚拟化管理工具
虚拟机监控器:VMM
VMM,巡检监控器,也成为Hypervisor,为了达到虚拟化而引入的一个软件层。VMM向下能够掌握实际的各种物理资源,向上可以给虚拟机划分逻辑资源,实现了虚拟机独享物理资源的假象
5. 虚拟化技术优势
• 性价比高:虚拟化技术减少了数据中心里服务器和相关硬件的数量,降低IT成本
• 灵活性强:动态迁移技术有效减少迁移成本,服务不中断
• 稳定性强:强大的安全和故障隔离机制,实现同一主机上运行多个应用程序
• 利用率高:避免了服务器使用的浪费,充分利用现有的服务器资源
1. KVM虚拟化解决方案
全称是Kernel-based Virtual Machine,基于内核的虚拟机,KVM是采用硬件虚拟化技术的全虚拟化解决方案
它是一个Linux的一个内核模块,改内核模块使得Linux变成了一个Hypervisor:它由Quramnet开发,该公司于2008年被Redhat收购
2. KVM功能概述
KVM定位于基于硬件虚拟化支持的全虚拟化是实现
• 一个KVM客户机对应一个进程
• 每个vCPU对应进程下的线程
• 硬件设备由QEMU模拟
• QEMU解惑操作并转为实际的物理设备驱动操作完成
功能特性:
• 内存管理:Linux内存管理的机制,如大页、KSM、NUMA、通过mmap的进程间共享内存,可以应用到客户机内存管理上
• 存储和客户机镜像格式:KVM能够使用Linux支持的任何存储来存储虚拟机镜像,包括具有IDE、SCSI和SATA的本地磁盘,网络附加存储,或者支持iSCSI和光纤通道的SAN
• 实时迁移:KVM支持实时迁移,在宿主机之间转移正在运行的客户机而不中断服务
• 性能:KVM在CPU、内存、网络、磁盘等虚拟化性能上表现出色,大多都在原生系统的95%以上
3. KVM发展现状机未来趋势
KVM已经成为OpenStack用户主流的Hypervisor选择
发展方向:
• 大规模部署有挑战
• 实时性方面受到的挑战
• 安全性有进一步加强空间
• 性能调优
4. 其他虚拟化解决方案
XEN:Xen的出现要早于KVM,可以追溯到20世纪90年代
Xen在架构上是一个典型的Type 1 Hypervisor,与KVM不同。没有宿主机的该奶奶,而是由Xen Hypervisor(VMM)管理硬件
类型:半虚拟化、全虚拟化
HyperV:微软公司的服务器虚拟化商品
架构上和Xen类似,也是Type 1 Hypervisor
Container:容器严格来说与虚拟化软件并不是一个大类,是某类软件的统称,包括Dockers和LXC等。容器不是硬件平台级的虚拟化技术,而是软件运行环境的虚拟化,是一种操作系统级的虚拟化技术
Linux Container(简称LXC)是一种内核轻量级的操作系统层虚拟化技术,主要由Namespace和Cgroup两大机制来保证实现
• Namespace:命名空间,主要做访问隔离。其原理是针对一类资源进行抽象,并将其封装在一起提供给一个容器使用,对于这类资源,因为每个容器都有自己的抽象,而他们彼此之间是不可见的,可以做到访问隔离
• Ggroup:control group,控制组,主要做资源控制。原理是将一组进程放在一个控制组里,通过给这个控制组分配指定的可用资源,达到控制这一组进程可用资源的目的
技术特点:
• 极其轻量:只打包了必要的Bin/Lib
• 秒级部署:根据镜像的不同,容器的部署大概在毫秒与秒之间
• 易于移植:一次构建,随处部署
弹性伸缩:Kubernetes、Swam、Mesos这类开源、方便、好用的容器管理平台有着非常强大的弹性管理能力
1. 什么是阿里云ECS
ECS(Elastic Compute Service)是阿里云提供的性能卓越、稳定、可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。
2. 阿里云ECS原理及架构
• 实例:等同于一台虚拟服务器,内含vCPU、内存、磁盘、操作系统、网络配置、磁盘等计算机组件
• 镜像:镜像等同于“装机盘,为ECS实例提供操作系统和预装软件
• 块存储:分布式存储设备,用于数据的存储,可随机读写操作
• 安全组:一种虚拟防火墙,划分安全隔离区域,实现网络访问控制
• 快照:某一时间点云盘的实时副本,常用数据的备份/恢复,应用容灾、镜像制作等
• 网络:主要是专有网络VPC,在逻辑上可彻底隔离的云上私有网络
3. 如何购买ECS
ECS原理
创建ECS实例->连接ECS实例->使用ECS实例->释放ECS实例
4. 如何管理和配置ECS
管理ECS实例状态
• 启动实例
• 停止实例
• 休眠实例
• 重启实例
• 释放实例
管理ECS实例属性
• 查看实例信息
• 修改实例属性
• 自定义CPU选项
• 重置实例登录密码
• 在实例内部修改登录密码
• 开启和关闭实例释放保护
• 编辑实例标签
管理ECS实例内部配置
• 发送远程命令
• 使用实例元数据
• 使用实例自定义数据
• 使用Enclave构建机密计算环境
• 使用VFIO驱动替代UIO驱动
• 管理Linux实例软件
• 同步服务器本地时间
续费包年包月ECS实例
• 续费概述
• 手动续费实例
• 自动续费实例
• 续费降配
• 续费变配
• 统一包年包月实例的到期日
升降配ECS实例
• 续费概述
• 手动续费实例
• 自动续费实例
• 续费降配
• 续费变配
• 统一包年包月实例的到期日
1. 弹性伸缩基本概念
(1)弹性伸缩(Auto Scaling):是根据业务需求和策略自动调整计算能力(即实例数量)的服务。可以指定实例的类型,即ECS实例或ECI实例。在业务需求增长时,弹性伸缩自动增加指定类型的实例,来保证计算能力;在业务需求下降时,弹性伸缩自动减少指定类型的实例,来节约成本。弹性伸缩不仅适合业务量不断波动的应用程序,同时也适合业务量稳定的应用程序。
(2)伸缩组:是具有相同应用场景、相同实例类型的实例集合。伸缩组定义了组内可容纳实例数的最大最小值、关联负载均衡实例、关联RDS实例等属性。
(3)伸缩模式:对应不同的增加、减少实例的操作,包括定时模式、动态模式、固定数量模式、自定义模式、健康模式、多模式并行。
(4)组内实例配置信息来源:弹性伸缩从选择的组内配置信息来源获取实例配置信息,并使用这些信息创建实例。组内实例配置信息来源支持伸缩配置和实例启动模板。
(5)伸缩配置:是一种组内实例配置信息来源,包括了实例的配置信息。
(6)伸缩规则:
2. 弹性伸缩产品优势
(1)自动化
根据预设的配置信息,弹性伸缩能够自动化实现以下功能,无需人工干预,避免因手动操作而可能引入的低错。
弹性扩展时:
• 自动创建指定数量、指定类型的实例,确保伸缩内所有实例的计算能力能满足业务需求
• 如果伸缩组关联了负载均衡,自动未创建的实例关联负载均衡。负载均衡按需将访问请求分发给实例
• 如果伸缩组管理了RDS数据库,自动将创建的实例IP添加到RDS访问白名单。该实例可以将应用数据保存到RDS数据库
弹性收缩时:
• 自动移出指定数量、指定类型的实例,确保冗余的资源及时得到释放
• 如果伸缩组关联了负载均衡,自动为移出的实例取消关联负载均衡。负载均衡不再给实例分发访问请求
• 如果伸缩组关联了RDS数据库,自动从RDS访问白名单中移出实例的IP。该实例不再保存应用数据到RDS数据库
(2)降成本
弹性伸缩按需取用,自动是覅那个,提高资源的利用率,有效降低成本
• 无需提前准备冗余的实例,来防止业务高峰期受到影响;无需担心不能及时释放冗余资源,造成成本浪费。弹性伸缩能够适时调整计算能力,降低了资源的拥有成本
• 无需投入大量人力来调整结算资源,节约了人力成本和时间成本
(3)易审计
弹性伸缩自动记录每一个伸缩活动的详细信息,有助于快速定位问题根源,降低了排查难度。弹性伸缩还提供伸缩组监控功能,可以通过元监控查看伸缩组内的实例运行状态。无需多次查看多台实例的运行状态,有助于快速了解整体的业务提供能力。
(4)高可用
弹性伸缩支持监测ECS实例或ECI实例的健康状况(即运行状况)。如果发现一台ECS实例或ECI实例未处于运行中状态,则弹性伸缩判定为该ECS实例或ECI实例不健康,并及时自动增加ECS实例替换不健康的ECS实例,或者及时自动增加ECI实例替换不健康的ECI实例,来确保业务的高可用。弹性伸缩可以有效避免因不能及时发现ECS实例或ECI实例的不健康状态,而导致业务连续性受到影响的情况。
(5)灵活智能
弹性伸缩的功能丰富、灵活智能、高可用,可以有效降低手动配置的复杂度,提高操作效率。
① 伸缩模式:支持多模式兼容,可同时配置固定数量、健康、定时、动态、自定义模式。其中,动态模式支持对接云监控服务,可以通过API对接外部的监控系统
② 实例配置来源(实例使用的模板):
• 支持多种配置方式。例如,从已有实例创建伸缩配置,或者新建伸缩配置。如果是ECS实例使用的模板,还支持指定启动模板
• 支持匹配多个ECS实例或ECI实例规格,有效增加模板的灵活性,提高扩容的成功率。比如,ECS实例的模板支持配置多实例规格、多磁盘类型等;ECI实例模板支持指定vCPU和内存来匹配多个实例规格
③ 弹性伸缩策略:如果伸缩组是ECS类型,弹性伸缩支持丰富的扩缩容策略。如果伸缩组是ECI类型,伸缩策略是默认的。
• 优先级策略:弹性伸缩会在优先级高的可用区扩缩容。如果无法扩缩容,则自动在下一优先级的可用区进行扩缩容
• 均衡分布策略:弹性伸缩在多个可用区均衡分布ECS实例,提高可用性
• 成本优化策略:在组内实例来源中指定了多实例规格时,优先创建vCPU单价最低的ECS实例,优先移出伸缩组内vCPU单价最高的ECS实例
• 实例移出策略:可以选择移出最早伸缩配置对应的实例,或者最早、最新创建的ECS实例
• 实例回收模式:移出ECS实例时,可以直接释放ECS实例,也可以保留部分资源、节省付费
3. 弹性伸缩应用场景
场景一:无规律的业务量波动
某新闻网站播出了热点新闻,访问量突增,新闻的时效性降低后,访问量回落。由于该新闻网站的业务量波动无规律,访问量徒增和回落的具体时间难以预测,所以手动调整实例很难做到及时性,而且调整数量也不确定。
可以利用弹性伸缩的报警任务,由阿里云自动根据CPU使用率等衡量指标进行弹性伸缩。
1)可以设置两个报警任务,报警任务执行的伸缩规则配置为简单规则类型。一个报警任务用于在实例的CPU使用率超过70%时,自动增加3台实例;另一个报警任务用于在实例的CPU使用率低于30%时,自动减少3台实例
2)可以设置一个告警任务,报警任务执行的伸缩规则配置为目标追踪规则类型,使实例的CPU使用率一直维持在50%左右
场景二:有规律的业务量波动
某有戏公司每天18:00业务需求急速增长进入高峰期,到22:00业务需求降低,高峰期结束。该游戏公司的业务量波动有规律,但是每天手动调整计算能力浪费人力和时间成本。
可以利用弹性伸缩的定时任务,由阿里云定时自动进行弹性伸缩。
可以设置为两个定时任务,报警任务执行的伸缩规则使简单规则类型:
• 一个定时任务用于在每天17:55自动增加3台实例
• 一个定时任务用于在每天22:05自动减少3台实例
该方式可以很好的应对每天18:00-22:00高峰期的业务量,且在高峰期结束后及时释放实例,不浪费多余的实例资源和成本
场景三:无明显的业务量波动
某通信公司的业务支撑系统需要全天运作,业务量一段时间内无明显波动。如果现有计算资源突然出现故障,会导致业务受到影响,很难及时进行故障修复或者替换。
可以利用弹性伸缩的高可用优势,开启健康检查模式。
阿里云会自动检查实例的健康状态,当发现存在实例不健康时,自动增加实例替换不健康的实例,确保故障的计算资源及时得到修复。而且伸缩组必须设置最小实例数,确保无论在哪种情况下,伸缩组内的实力数量都至少等于下限,确保业务可以运作。
场景四:混合型的业务场景
如果某公司的业务场景比较复杂,日常业务量波动不明显,且在某个时间段内,业务量是在一定基础上波动的,已经订购了一部分包年包月的实例,指向针对波动的业务量合理调整实例数量。
可以手动将已订购的包年包月实例加入伸缩组,再结合弹性伸缩的报警任务。
由阿里云自动根据CPU使用率等衡量指标进行弹性伸缩,更经济、更稳定地管理业务的计算能力。除手动调整实例数量和报警任务,弹性伸缩还支持定时任务、健康检查等。可以根据任务场景灵活组合以上功能,从而在使用弹性伸缩的时候获得更丰富灵活的使用体验。
4. 弹性伸缩工作原理
工作流程:如果某Web应用使用ECS实例处理业务请求,最上层的负载均衡负责将客户端的请求转发给伸缩组内的ECS实例,中间层的伸缩组内的ECS实例负责处理客户端请求,最下层的RDS数据库负责存储来自ECS实例的业务数据
弹性缩容示意图
弹性自愈示意图
弹性伸缩分为两个维度
• 调度层弹性:主要是负责修改负载的调度容量变化。例如,HPA是典型的调度层弹性组件,通过HPA可以调整应用的副本数,调整的副本数回改变当前负载占用的调度容量,从而实现调度层的伸缩
• 资源层调度:主要是集群的容量规划不能满足集群调度容量时,会通过弹出ECS或ECI等资源的方式进行调度容量的补充
1. 容器诞生的背景
尽管硬件虚拟化带来了防护网络资源功能的便利,但使用虚拟机隔离应用程序通常会减少高效率。必须要在部署应用程序以前在每一个虚拟机中下载或拷贝操作系统实例。因而,为了方便面对应用的管理,更加需要较轻量的计划方案——操作系统虚拟化。操作系统虚拟化指的是在操作系统中创建虚拟的环境,便于应用程序感知不到其他应用程序。如同独立占有全部服务器资源一样,能够实现应用分离出来。这种方法不用虚拟机,且应用程序共享同一操作系统实例,因而比虚拟机更节约资源。操作系统虚拟化在很多场合中也被称为容器。
2. 容器发展历史
容器产生于20世纪70年代,Zones、VM、container完全资源隔离管控,实现就似乎方式各种各样,各种办法都有局限和优势。
3. 容器概念
容器是视图隔离、资源限制和单独系统文件进程的结合。
隔离视图表示拥有独立的主机名以及能看到部分进程
资源限制对CPU的使用个数以及内存的大小进行限制
• 虚拟机是操作系统的隔离;容器是进程的隔离
• 效率高于虚拟机,安全性低于虚拟机
4. 容器核心组成
核心技术主要包括:Namespace(访问隔离)、Cgroup(资源控制)、rootfs(文件系统隔离)、容器引擎(生命周期控制)
5. 容器解决了什么问题
容器带来的3大好处:
• 环境一致性:开发人员通过容器方式部署项目,开发测试环境和预发布以及生产环境一致
• 项目打包:开发人员通过镜像打包的方式迁移项目
• 微服务:容器的流行推动了微服务的发展,从SOA架构演变到微服务架构,甚至serverless架构
(微服务目的是将庞大的业务系统分解成多个微服务。微服务只负责执行特定的功能,例如电商网站微服务购物车、付款后台管理、客户后台管理、消息等基本功能。每一个微服务都一个拥有自己业务模型,一些微服务将API公开给晴天微服务以及客户端使用)
6. 容器典型产品
Docker容器镜像系统是一个轻量、可单独执行的程序包,包括执行应用所需要的全部内容,包含代码、运行时、系统软件、系统库和设置。
1. Dockers的起源
Docker是Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup、namespace以及OverlayFS类的Union FS等技术,对进程进行封装隔离
Docker属于操作系统层面的虚拟化技术
2. Dockers的发展
Docker最初是在Ubuntu 12.04上开发实现的
RedHat则从RHEL 6.5开始对Docker进行支持
Google也在其PaaS产品中广泛应用Docker
3. Docker的架构
• Docker客户端与Docker守护进程通信
• Docker守护进程负责构建、运行和分发Docker容器
4. Docker的优势
• 更快速的交付和部署:一次创建,到处使用
• 更高效的虚拟化:不需要额外的hypervisor,而Docker是内核级的虚拟化
• 更轻松的迁移和扩展:可迁移运行在物理机、虚拟机、公有云、私有云、个人电脑、服务器等
• 更简单的管理:修改都以增量的方式被分发和更新,从而实现自动化并且高效的管理
Docker在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等,极大的简化了容器的创建和维护。使得Docker技术比虚拟机技术更为轻便、快捷。
传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。
对比项 | VM | Docker |
---|---|---|
隔离性 | 较强 | 强 |
标准化 | 低,难以监视和控制虚拟机运行中的进程或文件变化 | 高,docker bulid定义容器结构与进程 |
计算资源开销 | 大 | 小 |
镜像大小 | 几百MB至几GB | 可小至几MB |
启动速度 | 数秒至数分钟 | 毫秒级 |
快速扩展能力 | 一般 | 强 |
跨平台迁移能力 | 一般 | 强 |
对微服务架构的支持 | 一般 | 强 |
对Devops的支持 | 一般 | 强 |
5. Docker的基本概念
• 镜像(Image)
• 容器(Container)
• 仓库(Respository)
(1)Docker镜像
就是一个Linux的文件系统(Root FileSystem),这个文件系统里面包含运行在Linux内核的程序以及相应的数据
虚悬镜像:构建和删除镜像时出现一些错误,导致仓库(REPOSITORY)和标签(TAG)都是NONE
产生原因:
1:构建时候因为编写错误导致
2:删除的时候
对于这样的虚悬镜像一定要删除。
删除方法:docker image prune
(2)Docker容器
镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器时镜像运行时的实体
容器可以被创建、启动、停止、删除、暂停等
(3)Docker仓库
仓库(Repository)是集中存储镜像的地方。公共仓库一般是指Docker Hub,可以从Docker Hub获取镜像,也可以将自己构建的镜像存放到Docker Hub
6. Docker的应用场景
(1)Docker与Devops
传统简单自动化->持续交付与静态Docker->增强与静态Docker->全面持续
(2)Docker与微服务
• 一种软件架构模式
• 复杂应用解耦
• 为小而众的服务
• 各服务精而专
• 服务间通信通过API完成
(3)Docker与负载均衡
• 标准交付物
• 更快速的启动时间
• 标准的方式
• 通过网关可快速进行业务的负载均价
1. 什么是容器编排
Docker的最佳实践建议:一个容器只运行一个进程
而实际的应用会由多个组件构成,要运行多个组件就需要运行多个容器,这就需要对这多个容器进行编排
容器编排:多个容器的自动配置、协作和管理服务的过程
2. 容器编排的作用
• 容器编排可以在使用容器的任何环境中使用
• 可以在不同环境中部署相同的应用,而无需重新设计
• 通过将微服务放入容器,就能更加轻松地编排各种服务
3. 容器编排的实例
使用docker compose安装WordPress
• WordPress需要两个容器:wordpress和数据库MySQL
• 编写docker-compose.yml以便这两个容器可以在隔离环境中一起运行
• 运行命令docker compose up启动并运行整个WordPress应用程序
安装docker-compose
curl -L [compose link] -o /usr/lcoal/bin/docker-compose
修改docker-compose权限
chmod +x /usr/local/bin/docker-compose
验证
docker-compose version
创建目录
mkdir wordporess
编写yaml文件
vim compose.yml
安装镜像并启动容器
docker-compose -f docker-compose.yml up -d
ACK(Alibaba Cloud COntainer Service for Kubernetes)
全球首批通过Kubernetes一致性的服务平台
1. 阿里云ACK概述
ACK提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。
• 网络:支持跨宿主主机容器间互联,支持高性能VPC网络驱动
• 调度:支持跨AZ高可用和异常节点的reschedule等策略
• 路由:支持4层和7层的请求转发和后端绑定
• 存储:支持数据卷管理,支持云盘和NAS
• 日志:支持日志自动采集和日志服务集成
• 监控:支持容器级别和VM级别的监控
• 集群管理:用户可以根据自己的需求,选择不同的地域创建和删除集群
• 权限:支持集群级别的子账号授权管理
• 授权:支持RBAC权限管理体系
• 高可用性:支持服务级别的亲和性策略和横向扩展。支持跨AZ高可用和灾难恢复
• 托管方式:支持授权容器服务创建云服务器加入到指定集群。支持将已购买的云服务器添加到指定集群
• 增值能力:整合专有网络VPC,提供安全、高性能、支持混合云的部署方案。整合负载均衡SLB,提供容器的访问能力
2. 阿里云ACK产品形态
1. 阿里云ACK与自建Kubernetes的区别
功能 | 容器服务Kubernetes版 | 自建Kubernetes |
---|---|---|
集群管理 | • 通过控制台一键创建集群,支持GPU实例和裸金属服务器,支持创建跨AZ高可用的集群 • 提供容器优化的OS镜像,提供稳定测试和安全加固的Kubernetes和Docker版本 • 支持多集群管理,支持跨AZ高可用集群,支持集群联邦管理 |
用户手动部署集群并自行开发,用户自行探索和开发 |
应用管理 | • 支持灰度发布,支持蓝绿发布。支持i给你用监控、应用弹性伸缩 • 内置应用商店,支持Helm应用一键部署 • 支持服务目录,简化云服务集成 |
用户自行探索和开发 |
网络管理 | • 提供针对阿里云优化的高性能VPC/ENI网络插件,性能优于普通网络方案20%,支持容器访问策略和容器带宽限制 | 需要挑选社区网络插件进行适配。用户自行探索和开发 |
存储管理 | • 支持阿里云云盘、本地盘、NAS、CPFS和OSS,提供标准的CSI、FlexVolume驱动 • 支持存储卷自动创建、迁移 |
用户自行探索和开发 |
运维管理 | • 支持Kubernetes新版本一键升级,支持集群组件生命周期管理,支持集群手动和自动弹性伸缩 • 提供高性能日志采集Agent,提供大量日志dashboard看板。支持托管的Prometheus监控体系,默认内置多数大盘 • Pro版集群提供多AZ高可用自动伸缩的托管的控制面,同时提供控制面观测能力 |
用户手动运维控制面 |
服务保障 | • 阿里云专业容器团队作为技术支持,为集群提供及时的稳定性和安全响应 • 历经阿里大规模实践,是目前国内最大规模的公共云容器服务 • CNCF白金会员,已通过一致性验证 • 2019年Forrester报告国内排名第一、2019~2020连续两年Gartner竞争格局国内唯一入选。Pro版集群提供赔付保障的SLA |
需要组件专门团队。无SLA保障 |
安全管理 | • 支持镜像扫描/镜像签名 • 支持容器运行时安全检测。支持Secret数据罗盘加密 • 支持操作系统等保加固和CIS加固 |
用户自行构建安全能力 |
2. 阿里云ACK核心功能 - 集群管理
• 三种集群形态:专有版Kubernetes集群、托管版Kubernetes集群、Server less Kubernetes集群
• 托管版Kubernetes集群的管控节点默认3个可用区的高可用部署
• 单集群支持千量级ECS节点
• 支持跨可用区集群以及注册外部集群
3. 阿里云ACK核心功能 - 弹性伸缩
• 根据容器资源使用情况,快速自动地调整容器数量
• 数分钟内扩展到上千个节点
• 如果使用了Serverless Kubernetes版(ASK)和弹性容器实例ECI,可在30秒内启动500个容器组
• 支持一键垂直扩缩容
• 支持应用横向扩展以及设置与资源的亲和性策略
• 提供社区标准的HPA、VPA、Autoscaler等能力
• 提供类似CronHPA的定时伸缩能力,vk-auto scaler的无服务器弹性能力等
• 针对在线业务提供elastic workload的精细化调度弹性能力
• 针对不同的弹性场景提供了alibaba-metrics-adapter,实现诸如Ingress网关、Sentinel微服务限流等应用层弹性场景优化
4. 阿里云ACK核心功能 - 存储
阿里云容器服务ACK的存储功能基于Kubernetes容器存储接口(CSI),深度融合阿里云存储服务云盘EBS,文件存储NAS和CPFS,以及对象存储OSS,本地盘等,并完全兼容Kubernetes原生的存储服务,例如EmptyDir、HostPath、Secret、ConfigMap等存储
5. 阿里云ACK核心功能 - 网络
Terway网络插件是ACK自研的网络插件,将原生的弹性网卡分配给Pod实现Pod网络,支持基于Kubernetes标准的网络策略(Network Policy)来定义容器间的访问策略,并兼容Calico的网络策略
Flannel是社区提供的一款简单稳定的CNI插件。阿里云ACK的Flannel网络插件,使用独立于VPC网段的Pod的网段分配给Pod,其采用的是阿里云VPC模式,报文经过阿里云VPC的路由表直接转发,不需要Vxlan等隧道封装技术封装报文,所以比Flannel默认的Vxlan模式具有跟高的通信性能
6. 阿里云ACK核心功能 - 可观测体系
阿里云ACK可观测体系自上而下分别是:业务监控、应用监控、容器监控、基础设施监控
7. 阿里云ACK核心功能 - 安全
运行时安全、可信软件供应链和基础架构安全三个维度
8. 阿里云ACK集群类型
9. ACK Pro版与标准版对比
这两个主要都是针对企业用户的
10. ACK Pro版增强 - 可靠性强化集群
更可靠的托管Master节点,API Server自动弹性,保障集群平滑扩容海量节点
11. ACk Pro版增强 - 安全增强KMS加密
开放安全管理,并提供针对运行中容器更强检测和自动修复能力的安全管理高级版
12. ACK Pro版增强 - 调度算法增强
集成更强调度性能的kube-scheduler,支持多种智能调度算法,优化在大规模数据计算、高性能数据处理等业务场景下的容器调度能力
13. 阿里云ACK应用场景 - DevOps
最优化的持续交付流程
配合Jenkins自动完成从代码提交到应用部署的DevOps完整流程,确保只有通过自动测试的代码才能交付和部署,高效替代内部部署复杂、迭代缓慢的传统方式
14. 阿里云ACK应用场景 - 机器学习
专注机器学习本身,快速实现从0到1
帮助数据工程师在异构计算资源集群上轻松开发、部署机器学习应用,跟踪试验和训练、发布模型,自动集成多种数据部署在分布式存储系统,加速训练数据读写,无需关心繁琐部署运维,专注核心业务,快速从0到1
15. 阿里云ACK应用场景 - 微服务架构
实现敏捷开发和部署落地,加速企业业务迭代
企业生产环境中,通过合理微服务拆分,将每个微服务应用存储在阿里云镜像仓库管理。只需迭代每个微服务应用,由阿里云容器服务Kubernetes版ACK提供调度、编排、部署和灰度发布能力。企业生产环境中,通过合理的微服务拆分,可以享受微服务带来的高内聚、低耦合、高容错性的优势。在微服务上生产的过程,依托于阿里云产品提供的微服务治理能力
16. 阿里云ACK应用场景 - 混合云
统一运维多个云端资源
在容器服务控制台上同时管理云上云下的资源,不需在多种云管理控制台中反复切换。基于容器基础设施无关的特性,使用同一套镜像和编排同时在云上云下部署应用。
四大核心能力:一致体验、弹性算力、能力下沉、简化容灾
架构方案:低成本、高弹性、跨区域、混合云
1. 极致弹性的云原生架构解决方案
通过容器服务ACK实现业务应用层面的弹性,数据库PolarDB随需弹性扩缩容。同时也可以搭配使用各类监控工具、压测工具(PTS)实现全链路压测应对大促预演。轻松满足如大促等瞬时高峰的弹性,做到自动部署、高可靠性保障、运维工作量低、成本低。
可以解决的问题:
• 瞬时流量波峰到来时,异常快速自动扩容
• 波峰结束后,自动缩容。策略化弹缩支撑业务
• 高可靠性保障、低运维工作量、低成本
方案优势:
• 成本低
• 高度自动
• 高可靠
2. ACK集群低成本高弹性架构
本架构方案主要解决在互联网电商等行业,用户在对业务应用进行容器化改造以后,如何利用云厂商提供的云原生容器服务进行容器组编排,以及如何提高集群管理的弹性伸缩能力,优化容器集群计算成本
场景描述:
• 业务应用容器化改造以后,关注应用的高弹性
• 有明显波峰波谷效应的在线业务
• 计算类的离线业务,例如机器学习、基因测序等对实时性要求不高,但是对成本敏感的业务应用
• 定时任务类型,对批量计算、成本节约与调度能力比较关注
• 一些比较特殊的计算场景,对资源利用和调度能力比较关注
解决问题:
• 应用容器化以后,应对应用负载的波动变化
• 突发应用负载峰值的弹性应对能力
• 资源成本和系统可用性的权衡博弈
3. 基于ECI的ACK集群高弹性架构
在ACK集群上运行常规业务,当业务突发波动(如秒杀活动)时,让突增的业务运行在ECI实例上,随着业务波动动态创建或释放ECI实例,达到成本的最优控制。同时,业务方无需管理节点和容量规划,全自动实现容器无限弹性扩容。
解决问题:
• 长线类业务,如业务生产系统
• 明显的业务弹性诉求,如爬虫、秒杀
• 离线任务
4. 容器跨可用区高可用
本架构适合使用容器服务ACK结合阿里云上的其他产品构建跨可用区高可用应用的场景。在一开始创建容器服务ACK的时候就把容器集群建成多个可用区的架构,某可用区挂掉后,不影响应用和集群的高可用。容器服务ACK通常配合高可用SLB、RDS、Redis等产品,实现跨可用区高可用。
5. 混合云部署ACK集群
本架构方案时线下IDC与阿里云以混合云的形式部署Kubernetes集群,实现云霞云上服务交叉调用。云上资源可以根据业务请求峰谷值做弹性伸缩。使用数据传输服务DTS实现IDC与云上数据库单向同步,将云上数据库作为混合云场景下的冗余和灾备,可以在云上部署可接受一定读延迟的业务应用,缓解IDC机房业务压力。
解决问题:
• 云上冗余部署和快速弹性伸缩,低成本解决IDC弹性伸缩问题
• 云上应用可作为接受一定读延迟请求分流后端,降低IDC主服务的压力
• 容器镜像服务ACR企业版支持多地域同步部署,加速镜像分发
• 数据传输服务DTS单向同步数据灾备,提升IDC机房数据库高可用
1. 背景知识 - ACK产品家族
提供高性能的容器应用管理服务
2. 背景知识 - ACK使用流程
• 通过控制台快速使用ACK
• 通过kubectl快速使用ACK
3. 背景知识 - ACK与原生Kubernetes名词对照
容器服务ACK | 原生Kubernetes |
---|---|
集群 | cluster |
节点 | Node |
容器 | Container |
镜像 | Image |
命名空间 | Namespace |
工作负载 | Workload |
容器组 | Pod |
无状态工作负载 | Deployment |
有状态工作负载 | StatefulSet |
任务 | Job |
定时任务 | CronJob |
自定义资源 | CustomResourceDefinition |
服务 | Service |
虚拟集群IP | Cluster IP |
节点端口 | NodePort |
路由 | Ingress |
标签 | Label |
配置项 | Configmap |
保密字典 | Secret |
存储卷 | PersistentVolume |
存储声明 | PersistentVolumeClaim |
水平弹性伸缩 | HPA |
负载均衡 | LoadBalance |
节点亲和性 | NodeAffinity |
应用亲和性 | PodAffinity |
应用非亲和性 | PodAntiAffinity |
选择器 | LabelSelector |
注解 | Annotation |
触发器 | Webhook |
端点 | Endpoint |
资源配额 | ResourceQuota |
资源限制 | LimitRange |
模板 | Template |
4. 背景知识 - Kubectl命令常用参数示例
根据yaml配置一次性创建service和rc
kubectl create -f my-service.yaml -f my-rc.yaml
根据目录下所有.yaml、.yml、.json文件的ing一进行创建操作
kubectl create -f <directory>
查看所有Pod列表
kubectl get pods
查看rc和service列表
kubectl get rc,service
显示Node的详细信息
kubectl describe nodes <node-name>
显示Pod的详细信息
kubectl describe pods/<pod-name>
显示RC管理的Pod信息
kubectl describe pod
删除基于pod.yaml文件定义的Pod
kubectl delete -f pod.yaml
删除所有包含某个label的Pod和Service
kubectl delete pods,services -l name=<label-name>
删除所有Pod
kubectl delete pods --all
在Pod的容器里执行date命令,默认使用Pod中的第1个容器执行
kubectl exec date
指定Pod中某个容器执行date命令
kubectl exec <pod-name> -c <container-name> date
以bash方式登录到Pod中的某个容器里
kubectl exec -it <pod-name> -c <container-name> /bin/bash
查看容器输出到stdout的日志
kubectl logs <pod-name>
跟踪查看容器的日志,相当于tail -f命令的结果
kubectl logs -f <pod-name> -c <container-name>
实验步骤
• 开通并授权容器服务ACK
• 创建ACK集群
• 连接集群
• 部署并公开应用
• 验证应用
• 监控应用
1. 云存储概述
云存储泛指通过集群应用、网络技术或分布式文件系统等功能,网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统,保证数据的安全性,并节约存储空间。
云存储对使用者来讲,不是指某一个具体的设备,而是指一个由许许多多个存储设备和服务器所构成的集合体。使用者使用云存储,并不是使用某一个存储设备,而是使用整个云存储系统带来的一种数据访问服务。所以严格来讲,云存储不是存储,而是一种服务。
云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变。
阿里云存储概述
• 阿里云提供针对各种存储(块、文件和对象)的低成本、高可靠、高可用的存储服务,涵盖数据备份、归档、容灾等场景。
• 盘古作为分布式存储系统来讲,为应对不同的应用场景而进行了设计,提供分布式存储和分布式文件系统两种形态,基于这一套系统为阿里云提供一系列存储服务。
优势:
• 大规模:能支持数十EB级的存储大小
• 高可用:保证能够不中断地访问数据
• 高性能:满足各种在线应用的低延时访问
• 高可靠性:数据和元数据持久保存
• 高吞吐量:随机器规模线性增长
• 高扩展性:容量随机器增加自动扩展
2. 阿里云块存储产品介绍
块存储是阿里云为云服务器ECS提供的块设备类型产品,具备高性能、低延时的特性,可以像使用物理硬盘一样格式化并创建文件系统来使用块存储,满足绝大部分通用业务场景下的数据存储需求。
块存储产品类型:
• 云盘
• 共享块存储
• 本地盘
磁盘类型:
• ESSD云盘
• SSD云盘
• 高效云盘
• SSD本地盘
• SSD共享块存储
优势:
• 可靠性:云盘基于多副本技术,提供99.9999999%的可靠性
• 高性能:单块云盘高达100万随机IOPS、4000Mbps顺序吞吐,灵活选择
• 弹性:单盘支持最大32TB,单台服务器支持16块数据盘,自由配置随时扩容
• 安全:快照实现简单高效的数据备份,支持云盘加密,满足合规要求
块存储产品对比
ESSD云盘和SSD云盘、高效云盘类似,都是基于分布式存储架构的块存储产品,具有高可靠性、弹性扩容等特性,支持快照、加密等功能。不同点是各类型的云盘主要在IOPS以及吞吐量上有所不同,对应的场景不同。
3. 阿里云文件存储简介
文件存储NAS
(1)阿里云文件存储NAS(Apsara File Storage NAS)是面向阿里云ECS实例、容器服务等计算节点的文件存储服务。它是一种可共享访问、弹性扩展、高可靠以及高性能的分布式文件系统。支持NFS及SMB协议,在不同操作系统之间实现数据共享访问能力。
(2)多计算实例共享访问文件系统里的同一数据源,通过我呢见锁保证数据的强一致性。
(3)容量弹性可扩展:文件系统容量可以弹性扩展,随着添加或删除文件系统数,文件容量自动扩展或缩减。
(4)加密:传输加密保障用户数据在传输到存储的过程中不被窃取和窥探。
4. 阿里云对象存储简介
对象存储OSS基本概念
(1)阿里云对象存储OSS(Object Storage Service)是一款海量、安全、低成本、高可靠的云存储服务,可提供99.9999999999%(12个9)的数据持久性,99.995%的数据可用性
(2)与块存储不同的是,在对象存储中,所有存储文件都是以Object(对象)形式存储在Bucket(存储空间)中,每个对象中会记录:
metadata:用户对该Object的描述
data:Object的数据
OID:Object的ID也就是对象的ID
对象存储数据组织结构
在对象存储中,存储空间(Bucket)是用来存储Object(对象)的容器,所有对象都必须属于某一个存储空间(Bucket)
对象存储OSS的优势
对比项 | 对象存储OSS | 自建服务器存储 |
---|---|---|
可靠性 | • 服务设计可用性不低于99.99% • 规模自动扩展,不影响对外服务 • 数据设计持久性不低于99.9999999999% • 数据自动多重冗余备份 |
• 受限于硬件可靠性,易出问题,一旦出现磁盘坏道,容易出现不可逆转的数据丢失 • 人工数据恢复困难、耗时、耗力 |
安全 | • 提供企业级多层次安全防护 • 多用户资源隔离机制,支持异地容灾机制 • 提供多种鉴权和授权机制及白名单、防盗链、主子账号功能 |
• 需要另外购买清洗和黑洞设备 • 需要单独实现安全机制 |
成本 | • 多线BGP骨干网络,无带宽限制,上行流量免费 • 无需运维人员与托管费用,0成本运维 |
• 存储受硬盘容量限制,需人工扩容 • 单线或双线接入速度慢,有带宽限制,峰值时期需人工扩容 • 需专人运维,成本高 |
数据处理能力 | 提供图片处理、音视频转码、内容加速分发、鉴黄服务、归档服务等多种数据增值服务,并不断丰富中 | 需要额外采购,单独部署 |
对象存储OSS适合存储非结构化数据,例如图片、音视频等
根据对存储数据访问频率的不同,可以选择不同的存储类型
• 标准类型
• 低频访问类型
• 归档类型
1. 云数据库概述
云数据库和普通数据库概念上是一样的,云数据库其实就是由云服务商基于云计算平台将数据库部署到虚拟计算环境下,并进行了优化的数据库,云数据库天生继承了云计算的相关优势。
2. 云数据库优势
功能 | RDS云数据 | 自建数据库 |
---|---|---|
服务可用性 | 服务可用性99.95% | 网络环境、主从复制、故障恢复、数据备份都需自行来保障 |
数据可靠性 | 数据存储于分布式云盘上,多副本冗余,可靠性99.9999% | 搭建主从复制,自建Raid等均需自行保障 |
系统安全性 | 基于云平台自身支持防DDos攻击,流量清洗;及时修复各种数据库安全漏洞 | 自行部署安全防护设备;自行修复数据库漏洞 |
数据库备份 | 自动备份 | 自行实现数据库备份,还需要定义备份存放空间 |
基础运维 | 无需基础运维(如系统安装,数据库软件部署等) | 需专业运维工程师负责进行维护,成本高 |
数据库优化 | 提供资源报警、性能监控、数据库优化建议、慢查询分析等数据库优化功能 | 需专业的DBA来维护,成本高 |
部署扩容 | 即时开通,快速部署,弹性扩容,按需开通 | 需要采购硬件、机房上架、服务器部署等工作,周期长 |
资源利用 | 按实际结算,资源利用率100% | 需考虑峰值,资源利用率低 |
3. 阿里云云数据库产品介绍
阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务。基于阿里云分布式文件系统和SSD盘高性能存储,RDS支持MySQL、SQL Server、PostgreSQL、PPAS兼容Oracle PLSQL和MariaDB TX引擎,并且提供了容灾、备份、恢复、监控、前期等方面的全套解决方案
RDS产品系列及架构
云数据库RDS实例包括四个系列:基础版、高可用版、集群版和三节点企业版
云数据库RDS可以提供三种存储类型:本地SSD盘、ESSD云盘和SSD云盘。不管哪种存储乐星,RDS的可靠性、持久性和读写性能都会满足应用需求。
RDS实例规格族
RDS实例是指部署了数据库的虚拟服务器,不同的规格,RDS数据库性能会有所不同。
RDS MySQL介绍
(1)RDS MySQL是指RDS上开通的数据库引擎为MySQL的实例,具备RDS数据库的优势
(2)RDS MySQL基于阿里巴巴的MySQL源码分支,经过双十一高并发、大数据量的考验,拥有优良的性能
(3)RDS MySQL支持实例管理、账号管理、数据库管理、备份恢复、白名单、透明数据加密以及数据迁移等基本功能
云原生关系关系型数据库PolarDB
PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。PolarDB 100%兼容MySQL 5.6/5.7/8.0,PostgreSQL 11,高度兼容Oracle
PolarDB= 下一代RDS
PolarDB(MySQL) | RDS(MySQL) | |
---|---|---|
高可用 | Active-Active,通过送一个只读节点做高可用,聚合读性能×2 | Active-Standby,通过隐藏的备节点坐高可用 |
读写分离 | 最大15个只读节点,Session内读一致,只读节点延迟低 | 最大3-5个节点,有性能瓶颈,只读节点延迟高 |
容量 | 最大64TB单库 | MySQL5.6最大3TB,通常使用在2TB以下 |
性能 | 并发性能,最高是同规格共独享型RDS MySQL的2-6倍 | |
升级降配 | 增加一个只读节点只需要5分钟,升级集群20分钟以内 | 对于大数据量,大规模升级,有可能出现升级全过程需要十几个小时,甚至几天的情况 |
安全 | 告诉网络的分布式存储三副本,高可用,共享存储,不会丢数据(RPO=0) | 本地盘,云盘存储 |
价格 | 同规格独享PolarDB,默认自带一个只读节点,比RDS独享型高可用版架构有优势,相当于送了一个同规格只读节点 支持只读节点预付费购买,以及灵活的升降级 |
只读节点不支持包年包月预付费购买,费用比较高 |
备份 | 支持Snapshot秒级备份 | |
查询加速 | 支持大表复杂查询加速,速度提高4-20倍 |
阿里云非关系型云数据库
(1)云数据库Redis版(ApsaraDB for Redis)
是兼容开源Redis协议标准,提供混合存储的数据库服务,基于双机热备架构及集群架构,可满足高吞吐、低延迟及弹性变配等业务需求
在社区版的基础卡推出企业级内存数据库产品,提供内存型、持久内存型、磁盘(ESSD)型
(2)云数据库MongoDB版(Apsara for MongoDB)
是阿里云基于飞天分布式系统和高可靠存储引擎研发的完全兼容MongoDB协议,并支持多节点高可用架构、弹性扩容、容灾、备份恢复、性能优化等功能的文档数据库服务
4. 其他云数据库产品介绍
(1)Amazon RDS(Amazon Relational Database Service)
是一个以Web方式提供的云数据库服务,旨在简化关系型数据库的设置、操作和扩展,以便在一个用程序中使用。目前AWS RDS支持的主流关系型数据库包括MySQL、MariaDB、Oracle、Microsoft SQL Server和Postgre SQL。用户可以从AWS管理控制台或使用AWS RDS API启动一个新的数据库实例,AWS RDS提供不同的功能来支持不同的实例。
(2)Microsoft Azure Database
Microsoft Azure Database作为Microsoft Azure服务的一部分为用户提供众多托管的数据库服务,包括Azure SQL Database、Azure Database for MySQL、Azure Cache for Redis等众多关系型和非关系型数据库。数据库服务的可伸缩性、备份和高可用由云平台本身提供和管理。例如,Azure SQL Database作为托管类型的SQL Server数据库服务,它与作为容器服务的AWS RDS不同,它内置的智能感知服务,可以更大限度的提高SQL查询语句的性能,为用户提供性能优化、安全、可靠性和数据保护等方面的更佳实践建议。
(3)Google BigTable
Google BigTable云数据库服务是基于Google文件系统(Google File System,GFS)的数据存储系统,用于存储大规模结构化数据。BigTable不是传统的关系型数据库,不支持JOIN这样的SQL语法。
1. 阿里云网络概述
阿里云网络面向企业全面上云和全球互联的网路需求,打造企业级云上网络、云原生应用网络、全球互联网络和应用加速网络四大核心解决方案
阿里云在全球24个地域部署了110多个接入点和1500多个边缘节点,可向企业提供优质的全球网络服务
阿里云构建了云上网络、跨地域网络、混合云网络一套完整的可满足不同使用场景的网络解决方案
2. 阿里云上网络基础
**定义:**阿里云专有网络(Virtual Private Cloud,简称VPC)是在云上创建的专有虚拟网络。专有网络类似在自己的数据中心运营的传统网络,但附带了阿里云基础设施的其他优势,例如可扩展性、隔离性和安全性等。
**原理:**基于目前主流的隧道技术,专有网络隔离了虚拟网络。每个VPC都有一个独立的隧道号,一个隧道号对应着一个虚拟网络。
一个VPC内的ECS实例之间的传输数据包都会加上隧道封装,带有唯一的隧道号标识,然后通过物理网络上进行传输。不同VPC内的ECS实例由于所在的隧道号不同,本身处于两个不同的路由平面,因此不同VPC内的ECS实例无法进行通信,天然地进行了隔离。基于隧道技术和软件定义网络SDN技术,阿里云在硬件网关和自研交换机设备的基础上推出了VPC产品。
**逻辑架构:**VPC包含交换机、网关和控制前。交换机和网关组成了数据通路的关键路径,控制器使用自研协议下发转发表到网关和交换机,完成了配置通路的关键路径。配置通路和数据通路互相分离。PVC中的交换机是分布式的节点,网关和控制器都是集群部署且多机房互备,所有链路上都具备冗余容灾,提升了VPC的整体可用性。
• VPC和交换机概述
VPC中使用云资源前,必须先创建一个专有网络和交换机。在一个VPC中可以创建多个交换机来划分子网。一个VPC内的子网默认私网互通。
交换机(vSwitch)是组成VPC的基础网络设备,用来连接不同的云资源实例。云资源不可以直接部署在VPC中,必须属于VPC的一个交换机(子网)内。
• 地域和可用区
地域指数据中心所在的地理区域,通常按照数据中心所在的城市划分。例如,华北1(青岛)地域表示数据中心所在的城市是青岛。
可用区是指在同一地域内,电力和网络互相独立的物理区域。例如,华北1(青岛)地域支持2个可用区,包括青岛可用区B和青岛可用区C。同一可用区内实例之间的网络延迟更小,其用户访问速度更快。
• 路由器(vRouter)
路由器是VPC的枢纽。路由器可以连接VPC的各个交换机,同时也是连接VPC与其他网络的网关设备。路由器根据路由条目来转发网络流量。
3. 阿里云网络连接分类
(1)公网访问
阿里云提供的VCP的公网访问服务。这些服务适用于不同的业务场景,可以通过弹性公网IP、NAT网关、负载均衡使VPC中的云资源访问公网(Internet)或被公网访问。
(2)跨地域互联
当需要将多个专有网络互连汇聚成一个更大的虚拟网络时,可以通过阿里云提供的云企业网实现全球网络互通,并通过全球加速服务优化跨地域网络访问,减少网络延时和丢包问题
云企业网CEN(Cloud Enterprise Network)可以在VPC间、VPC与本地数据中心间搭建高质量、高安全的私网通信通道。云企业网通过路由自动分发及学习,使网络快速收敛,实现全网资源互通,打造一张具有企业级规模和通信能力的全球互联网络。
(3)混合云网络
随着云计算的普及,企业逐渐将数据中心的业务应用迁移上云。过去以IDC为中心的星形网络结构,正在演进到以云为中心的混合云网络架构,云下和云上之间的网络连接成为关键。
• 智能接入网关SAG(Smart Access Gateway):是阿里云的SD-WAN终端,具有多种软硬件的产品形态,可以适应大中小型企业分支和移动办公场景的需要,快速就近地接入云连接网
• 高速通道EC(Express Connect):提供了一种快速安全连接阿里云与本地IDC的方法,通过租用运营商的一条物理专线将本地IDC连接到阿里云接入点,建立物理专线连接。此连接绕过公网,更加安全可靠、速度更快、延迟更低
• VPN网关:是一款基于Internet的网络连接服务,通过加密通道的方式实现企业数据中心、企业办公网络或Internet终端与阿里云VPC安全可靠的连接
1. VPC的组成
类似于传统网络中局域网的概念一样,用户可以自主定义VPC中IP地址范围、配置路由表和网关等。
每一个VPC都由一个路由器、至少一个交换机和至少一个私有网段组成。
• 路由器(vRouter)是专有网络的枢纽,作为专有网络中重要的功能组件,它可以连接VPC的各个交换机,同时也是连接VPC和其他网络的网关设备
• 交换机(vSwitch)是组成VPC的基础网络设备,用来连接不同的云资源
• 私有网段在创建VPC和交换机时,需要以CIDR地址块的形式指定VPC使用的私网网段
2. VPC的网络规划
在创建VPC和交换机前,需要结合具体的业务规划VPC与交换机的数量以及VPC与交换机的网段等
(1)交换机规划
使用一个VPC时,尽量使用至少两个交换机,并且将两个交换机分布在不同可用区,以实现跨可用区容灾
• 一个VPC:如果没有多地域部署系统的要求且各系统之间也不需要通过VPC进行隔离,推荐使用一个VPC
• 多个PVC:VPC时地域级别的资源,不支持跨地域部署。当由多地域部署系统的需求时,必须使用多个VPC;如果在一个地域的多个业务系统需要通过VPC进行严格隔离
(2)网段规划
可以使用10.0.0.0/8、172.16.0.0/12或192.168.0.0/16三个RFC标准私网网段及其子网作为VPC的私网地址范围,也可以使用自定义地址段作为VPC的私网地址范围
1. 负载均衡简介
Load Balance,将负载进行平衡、分摊到多个后端服务器运行
优点是减少后端单台服务器的压力,将单台服务器索要承受的访问量分给多台,提高项目的可用性。即使挂掉一台后端服务器,也不会影响项目的正常访问。
2. 负载均衡的分类
(1)硬件负载均衡
直接在服务器和外部网络安装负载均衡设备,由于专门的设备完成网络请求转发的任务,独立于操作系统,整体性能高,负载均衡策略多样化,流量管理智能化。
优点:
• 直接连接交换机,处理网络请求能力强
• 与系统无关,负载型强
• 可以应用于大量设施、适应大访问量、使用简单
缺点:
• 成本高,配置冗余,即使网络请求分发到服务器集群,负载均衡设施却是单点配置
• 无法有效掌握服务器及应用状态
(2)软件负载均衡
主流产品由Nginx、HAProxy、LVS
LVS可以作为四层负载均衡器。其负载均衡的性能优于Nginx
HAProxy可以作为HTTP和TCP负载均衡器
Nginx、HAProxy可以作为四层或七层负载均衡器
优点:
• 扩展性好:适应动态变化,可以通过添加软件负载均衡实例,动态扩展到超出初始容量的能力
• 成本低廉:软件负载均衡可以在任何标准物理设备上运行,降低了购买和运维的成本
缺点:
• 性能略差:相比于硬件负载均衡,软件负载均衡的性能要略低一些
负载均衡通信分类
• 七层负载均衡:根据访问用户的HTTP请求头、URL信息将请求转发到特定的主机
• 四层负载均衡:基于IP地址和端口进行请求的转发
3. 主流负载均衡软件的使用
(1)Nginx
Nginx(engine x)是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
以高稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达50,000各并发连接数的响应。
三个类型版本:
• Mainline version:Nginx目前主力在做的版本,可以说是开发版
• Stable version:最新稳定版,生产环境上建议使用的版本
• Legacy version:遗留的老版本的稳定版
Nginx通过反向代理来实现负载均衡
负载均衡能实现什么:
• 将多个服务器节点绑定在一起提供统一的服务入口
• 故障转移,在意外发生的时候,可以增加一层保险,减少损失
• 降低上线运维的复杂度,实现平滑上线
Nginx的负载均衡策略:
• round robin(轮询)
• random(随机)
• weight(权重)
• fair(按响应时长,三方插件)
• url_hash(url的hash值)
• ip_hash(ip的hash值)
• least_conn(最少连接数)
第一类 最佳实现
weight(权重)
random(随机)
最佳实践,其实就是最常见、最普通的默认配置,当然也是在一定程度上最好用的配置。不知道用什么方式的时候,就可以选择用这一类型
第二类 最佳性能
weight(权重)
fair(按响应时长,三方插件)
least_conn(最少连接数)
让业务节点中性能最强的机器得到更多请求,这也是一个比较好的分配策略。
从经验或硬件上氛围高权重、低权重的机器
按照节点请求的响应时长来决定是多分配请求,还是少分配请求
按照保持的连接数,一般来说保持的连接数越多说明处理的任务越多,也是最繁忙的,可以将请求分配给其他机器处理
第三类 保持稳定
ip_hash
url_hash
很多请求都是有状态的,上一次请求到哪个业务节点,这次还要请求到哪台机器。比如常见的session就是这样一种有状态的业务。
(2)HAProxy
一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计
• 开源,为基于TCP和HTTP的应用程序提供高可用性,负载均衡和代理
• HAProxy基于TCP和HTTP两种模式,支持丰富的负载均衡算法
• 支持SSL,可解析HTTPS协议,并能够将请求解密为HTTP后向后端传输
• 支持HTTP重写与重定向
• 提供基于Web的信息统计,方便查看健康状态和流量数据
• Websoft9已经安装好了HAProxy,无任何安装即开即用
由Websoft9提供的HAProxy镜像环境,预装了HAProxy 2.4,可在云服务器上一键部署。
(3)Lvs
Linux Vritual Server的简写,即Linux虚拟服务器,是一个虚拟的服务器集群系统。
负载均衡器接收客户的请求,然后先是根据LVS的调度算法(8种)来决定要将这个请求发送给哪个节点服务器,然后依据自己的工作模式(3种)来看应该如何把这些客户的请求如何发送给节点服务器,节点服务器又应该如何来把响应数据包发回给客户端。
三种工作模式:
• rr 沦胥
• wrr 加权轮询
• lc 最小连接
八种调度算法:
• 固定调度算法:rr,wrr,dh,sh
• 动态调度算法:wlc,lc,lblc,lblcr
rr:轮询算法,将请求一次分配给不同的rs节点,也就是RS节点种均摊分配。这种算法加单,但只适合于RS节点处理性能差不多的情况
wrr:加权轮询调度,将依据不同RS的权值分配任务。权值较高的RS将优先获得任务,并且分配到的连接数将比权值低的RS更多。相同权值的RS得到相同数目的连接数
wlc:加权最小连接数调度,假设各台RS的权值依次为Wi,当前tcp连接数依次为Ti,依次去Ti/Wi为秀爱西欧的RS作为下一个分配的RS
dh:目的地址哈希调度(destination hashing),以目的地址为关键字查找一个静态hash表来获得需要的RS
sh:源地址哈希调度(source hashing),以源地址为关键字查找一个静态hash表来获得需要的RS
lc:最小连接数调度(least-connection),IPVS表存储了所有活动的连接。LB会比较将连接请求发送到当前连接最少的RS
lblc:基于地址的最小连接数调度(locality-based least-connection),将来自同一个目的地址的请求分配给同一台RS,此时这台服务器是尚未满负荷的。否则将这个请求分配给连接数最小的RS,并以它作为下一次分配的首先考虑
1. 产品简介
• 应用型负载均衡器ALB(Application Load Balancer)
专门面向七层,提供超强的业务处理性能,例如HTTPS卸载能力。单实例每秒查询数QPS(Query Per Second)可达100万次。同时ALB提供基于内容的高级路由特性,例如基于HTTP报头、cookie和查询字符串进行转发、重定向和重写等,是阿里云官方云原生Ingress网关。
• 网络型负载均衡NLB(Network Load Balancer)
面向万物互联时代推出的新一代四层负载均衡,支持超高性能和自动弹性能力,单实例可以达到1亿并发连接,轻松应对高并发业务。NLB面向海量终端上连、高并发消息服务、音视频传输等业务场景,针对地推出了TCP SSL卸载、新建连接限速、多端口监听等高级特性,在物联网MQTTS加密卸载、抗洪峰上联等场景为用户提供多种辅助手段,是适合IoT业务的新一代负载均衡。
• 传统型负载均衡CLB(Classic Load Balancer)
支持TCP、UDP、HTTP和HTTPS协议,具备良好的四层处理能力,以及基础的七层处理能力
通过设置虚拟服务地址,将添加的同一地域的多台云服务器虚拟成一个高性能和高可用的后端服务池,并根据转发规则,将来自客户端的请求发给后端服务器池种的云服务器
CLB默认检查云服务器池种的云服务器健康状态,自动隔离异常状态的服务器,消除了单台服务器的单点故障,提高了应用的整体服务能力。此外,CLB还具备抗DDoS攻击的能力,增强了应用服务的防护能力
CDN内容分发网络(Content Delivery Network),解决跨地域运营商网络性能问题
1. 阿里云CDN基本概念
CDN是建立并覆盖在承载网之上,由遍布全球的边缘节点服务器群组成的分布式网络。阿里云CDN能分担原站压力,避免网络拥塞,确保在不同区域、不同场景下加速网站内容的分发,提高资源访问速度。
CDN将源站资源缓存到阿里云遍布全球的加速节点,当终端用户请求访问和获取源站资源时无需回源,可就近获取CDN节点上已经缓存的资源,提高资源访问速度,同时分担源站压力。目前CDN部分节点已支持通过IPv6访问。
• 源站:运行业务的网站服务器,是加速分发数据的来源。源站可用来处理和响应用户请求,当节点没有缓存用户请求的内容时,节点会返回源站获取资源数据并返回给用户。阿里云CDN的源站可以是对象存储OSS、函数计算、自有源站(IP、源站域名)。
• 节点:指与最终接入的用户之间具有较少中间环节的网络节点,对最终接入用户有相对于源站而言更好的响应能力和连接速度。
• 加速域名:接入CDN用于加速,终端用户实际访问的域名。
• HTTP状态码:HTTP Status Code,用来表示HTTP响应状态的数字代码,可用来判断和分析服务器的运行状态。当客户端(例如浏览器)向服务器发出请求时,服务器会返回一个包含HTTP状态码的信息头来响应客户端的请求,通过状态码高速客户端当前请求响应的状态。
HTTP常见状态码分类:(1)1xx:消息 (2)2xx:成功 (3)3xx:重定向 (4)4xx:客户端错误 (5)5xx:服务器错误
2. 阿里云CDN产品架构
由调度系统、链路质量系统、缓存系统和支撑系统四大系统组成。
• 调度系统:支持策略中心、DNS、HTTPDNS和302调度模式。当终端用户发起访问请求时,用户的访问请求会先进行域名DNS解析,然后通过阿里云CDN的调度系统处理用户的解析请求。
• 链路质量系统:链路质量探测系统会实时监测缓存系统种的所有节点和链路的实时负载以及健康情况,并将结果反馈给调度系统,调度系统根据用户请求中携带的IP地址解析用户的运营商和区域归属,然后综合链路质量信息为用户分配一个最佳接入节点。
• 缓存系统:用户通过收到的最佳接入节点访问对应的缓存节点,如果节点已经缓存了用户请求的资源,会直接将资源返回给用户;如果L1(边缘节点)和L2(汇聚节点)节点都没有缓存用户请求的资源,此时会返回源站去获取资源并缓存到缓存系统,供后续用户访问,避免重复会员。分级缓存的部署架构可提高内容分发效率、降低回源带宽以及提升用户体验。
• 支撑服务系统:包括天眼、数据智能和配置管理系统,分别具备了资源监测、数据分析和配置管理能力。
资源监测:天眼可以对缓存系统上用户业务的状态进行监测。例如对CDN加速域名的QPS、带宽、HTTP状态码等常见指标的监控
数据分析:用户可以分析CDN加速域名的TOP URL、PV、UV等数据
配置管理:通过配置管理系统,用户可以配置缓存文件类型、缓存时去参数缓存等缓存规则,以提升缓存系统的运作效率
3. 阿里云CDN应用场景
(1)图片小文件
适用于网站或应用中小文件的加速分发,例如各种门户网站、电子商务类网站、新闻资讯类网站、娱乐游戏类网站等。需要将源站内容进行动静态分离,静态内容使用阿里云CDN加速,例如图片、CSS、JS小文件等;动态内容使用阿里云全站加速产品。CDN加速图片小文件业务可以以下问题:
(2)大文件下载:适用于各类大文件的下载和分发加速,例如游戏安装包、应用更新、手机ROM升级、应用程序包下载等,平均单个文件大小在20MB以上。CDN加速大文件下载业务可以解决如下问题:
(3)视音频点播:适用于各类视音频网站,例如影视类视频网站、在线教育类视频网站、新闻类视频网站、短视频社交类网站以及音频类相关网站和应用,可以使用阿里云CDN产品实现对音视频内容的文件分发和访问加速。CDN加速音视频点播业务可以解决如下问题:
4. 阿里云CDN竞争优势
(1)丰富的资源节点
为用户提供就近接入的同运营商CDN节点,解决长距离接入和跨运营商访问带来的延迟高和速度慢问题
(2)资源可弹性扩展
基于全球2800+节点,资源可弹性扩展实现业务高可用
(3)精准的调度系统
实时获取CDN节点的健康状态,并根据用户所在位置和运营商来分配最佳接入节点,以便获取最佳接入效果
(4)智能的传输链路
通过协议优化、连接优化等措施来降低总体时延、提高传输速度,尤其是提高弱网环境下的传输速度
(5)高效的缓存策略
能够带来更高的缓存命中率,命中就近节点上的远程资源,提供高效地访问速度
(6)降低您的IT成本
可将您的业务算例、带宽、连接数转移到CDN边缘节点,降低您的IT成本
(7)强大的带宽输出能力
全网带宽输出能力达150Tbps
(8)提供行业通用标准API
提高易用性和适用性
1. CDN案例背景目标
上海一家游戏公司玩家在近几年急速增加,用户每次要更新版本包都要去服务器中下载,还包含音视频点播,随着业务的不断扩大,业务痛点开始显现:
• 终端用户访问慢:网站小文件内容多、打开速度慢
• 高并发压力大:运营推广期间,源站服务器压力大,服务器容易崩溃,造成服务不可用
• 业务在快速发展过程中,多次遇到玩家因更新过慢导致的用户流失
技术人员决定利用CDN将源站资源缓存到阿里云遍布全球的加速节点,当终端用户请求访问和获取源站资源时无需回源,可就近获取CDN节点上已经缓存的资源,提高资源访问速度,同时分担源站压力。目前CDN部分节点已支持IPv6访问。
数据迁移目标:
• 不影响现有服务器使用
• 不影响游戏玩家体验
• 高效的缓存策略
2. CDN案例架构改造设计
方案流程:
(1)基础信息及业务信息配置:CDN加速前后访问域名不变,加速域名中填写需要加速的业务域名,使用全站加速,选择需要使用的CDN加速节点覆盖范围,需要根据业务部门、项目等维度进行云资源的分组管理
(2)源站信息配置:填写OSS源站域名(列表搜索存储空间名/选择自定义域名)或函数计算域名,填写80(HTTP协议回源)或443(HTTPS协议回源)
(3)回源HOST:访问源站时,指定HTTP请求中携带的HOST头部,决定了访问源站服务器上的哪一个站点,回源HOST与加速域名保持一致,建议源和目标库的MySQL版本保持一致,以保障兼容性
(4)阿里回源:源站为阿里云OSS私有存储空间,默认每次回源请求需要携带鉴权参数,开启该云OSS私有Bucket配置,CDN回源OSS时会自动签算鉴权凭证
(5)域名解析:将域名解析到特定的CNAME记录上,使请求时通过CDN的调度系统访问到周边加速节点
1. 什么是云计算平台
早在100多年以前,企业需要自己用发电机单独发电才能维持生产制造。但电网项目建成后,企业逐步向大中型电力工程企业购置便宜可信赖的电力,不但大大降低了自己的生产成本,也节省了发电机的维护和使用的人力物力成本。这类简单模式转换被称作人们工程项目科学史上最重要的成就之一。云计算如同电力一样,云计算平台构建后,企业能够像购买电力一样向云服务提供商采购信息系统资源。
云计算平台狭义上来讲就是能够为用户随时可以浏览使用“云”里的网络资源,并根据用户的需求随时使用这些资源,另外这个资源对于用户来说是无限扩展。
广义上来说,云计算平台是一种与信息科技、手机软件、互联网有关的服务项目。云计算平台集中管理众多服务器、提供服务,这些共享的计算资源池被称作“云”。通过手机软件完成管理自动化,用户就像使用日常水、电、天然气一样,简单方便,价格低廉。
2. 云安全基础概述
传统安全:诸如拒绝服务攻击、中间人攻击、网络嗅探、端口扫描、SQL注入和跨站脚本攻击等。在传统信息系统中,通过在边界部署可实现安全的防护。传统的边界安全性针对已知漏洞通常有非常好的防御力实际效果,针对未知的威胁却了解很少。未知威胁和0day漏洞是传统网络安全的较大安全威胁,所谓0day漏洞基本都掌握在入侵者手上。当入侵者采用组合进攻或0day攻击时,传统的边界安全性通常束手无策。
云安全与传统安全的区别
传统安全代表着用户自身的机器设备、程序流程、应用软件和其他资产的安全性担负主要责任。因为云计算的特性,云安全必须用户和云服务供应商一同维护安全。维护云计算的安全就是他们共同的义务,应用安全共担也是云安全最大的特性之一。
传统安全 | 云安全 | |
---|---|---|
形态 | 以软硬件的产品形态提供给用户 | 云安全产品通过平台对不同用户提供服务 |
模型 | 信息安全的相关模型,在云安全领域是通用的 | 提供商具体的市场活动中,可能采用其他词语替代 |
场景 | 可以针对安全问题采用不同的安全设备进行防护,选择性更多 | 云安全目前更多的是解决用户中存在的共性的安全问题 |
产品 | 传统企业不太重视产品交互和体验 | 更重视产品交互和体验 |
部署 | 部署相对复杂,用户试用成本较高 | 云安全产品部署快速,试用过程成本较低 |
云平台安全的特点:
• 网络边界不可见:云计算通过引入虚拟技术,将物理资源池化,按需分配给用户,这里涉及到计算虚拟化、网络虚拟化、存储虚拟化。在云环境中,用户的资源通常是跨主机甚至是跨数据中心的部署,网络边界不可见
• 数据安全要求更高:云环境中的责任主体更加复杂,云服务商为租户提供云服务,不可避免会接触到用户数据,因此云服务商内部窃密是一个很重大的安全隐患。因此需要采用更严格的权限访问控制来限制不同级别内部用户的数据访问权限
• 责任主体更复杂:在云环境中,数据存储在共享云基础设施之上,当用户数据的存储与数据维护工作都是由云服务商来完成时,就很难分清到底是谁拥有试用这些数据的权利并对这些数据负责
4. 云计算平台安全风险分析
云平台自身的安全风险,主要针对云环境本身存在的安全隐患,如数据安全、应用系统安全、服务安全、用户信息安全等
• 云平台自身安全,也可以称之为”云端的安全“
• 云技术在安全领域的具体应用,也称之为安全云计算
5. 云计算平台安全问题及挑战
云计算常见的安全问题
• SQL注入问题:就是在用户输入的字符串中加入SQL语句,如果在设计不良的程序中忽略了检查,那么这些诸如进去的SQL语句就会被数据库服务器误认为是正常的SQL语句而运行,攻击者就可以执行计划外的命令或访问未被授权的数据
• 内部越权:特定人员完成了不在其权限范围之内的事务
• 数据泄露:敏感或保密的数据被未经授权的查看使用或偷盗。常见的数据泄露是指个人信息泄露,实质上是一些IT技术人员利用技术手段和工具进行的技术性窃取,有别于一般的偷盗
• 数据篡改:通过对数据进行篡改、增加或删除,造成数据破坏的行为
• 网页篡改:利用木马等病毒程序,篡改网页内容的黑客技术
• 漏洞攻击:黑客利用计算机操作系统的缺陷,编制一些软件,对计算机系统进行破坏
云计算安全挑战
• 配置错误:云计算资源受到一系列配置设置的保护,这些设置详细说明了哪些用户可以访问哪些应用程序和数据。配置错误和疏忽可能会数据泄露或数据篡改
• 访问控制不良:未经授权的用户利用不良的访问控制,可能会绕过薄弱或身份验证或授权方法,对数据进行访问
• 影子IT:任何人都可以创建公有云账户,然后可以使用其账户来提供服务以及迁移工作负载和数据。但是那些不精通安全标准的人常常会误解安全选项——留下可利用的云漏洞
• 不安全的API:不相干的软件产品使用API进行通信和互操作,但有时会在没有足够的身份验证和授权的情况下实现API。它们完全向公众开放,因此任何具有互联网连接的人都可以访问并可能危害数据
• 违规:云计算提供商负责云平台的安全性,而客户负责其数据的安全性。在这种共享责任模型中,云计算提供商维护基础设施的完整性和操作,并控制客户资源和数据的分离。客户负责配置应用程序和数据安全,例如访问控制
• 中断:云计算基础设施非常庞大,但确实会发生故障——通常会导致影响广泛的云中断。这种中断是由硬件问题和配置疏忽造成的,正是影响传统数据中心的问题
1. 云计算安全风险主要来源
IT风险及IT系统风控
也成为信息科技风险。任何由于使用计算机硬件、软件、网络等系统所出现的不利情况,包括程序错误、系统宕机、软件缺陷、操作失误、硬件故障、容量不足、网络漏洞等。
按照等保的划分维度包括:
• 物理和环境安全:包括机房供电、温湿度控制、防风防雨防雷措施等
• 网络和通信安全:包括网络架构、边界防护、访问控制、入侵防范、通信加密等
• 设备和计算安全:包括入侵防范、恶意代码防范、身份鉴别、访问控制、集中管控和安全审计等
• 应用和数据安全:包括安全审计、数据完整性和保密性
云计算安全风险来源:
• 系统故障风险:由于操作失误,硬件、软件和网络本身出现故障而导致系统数据丢失甚至系统瘫痪的风险
• 内部人员道德风险:企业内部人员对信息的非法访问、篡改、泄密和破坏等方面的风险
• 系统关联方道德风险:企业关联方非法侵入企业内部网,以盗窃数据、破坏数据、搅乱某项特定交易或事业等所产生的风险
• 社会道德风险:来自社会上的不法分子通过互联网对企业内部网的非法入侵和破坏
• 计算机病毒:一种认为蓄意编制的具有自我复制能力并可以制造计算机系统故障的计算机程序
2. 云计算面临的主要安全威胁
• 数据泄露
• 数据丢失
• 账号或服务流量挟持
• 不安全的编程接口
• 拒绝服务
• 恶意的内部员工
• 滥用云服务
• 没有足够的尽职调查
• 多租户隔离失效
3. 云计算存在的安全问题
(1)虚拟化安全
虚拟化是一种资源管理技术,能够对各类计算机资源(CPU、运行内存、存储、网络等)抽象化,并把它们分拆并集成化到一个或几个电脑配置环境。虚拟化技术能够拓展硬件配置容量,简单化应用软件重构全过程。
在虚拟化平台中,每一个虚拟机产生的不同VLAN平台流量,最后将由平台中的虚拟交换机开展无限中继,随后导到公共物理端口。在这个环节中,攻击的人可以逃出VLAN,威胁别的通信网络的安全。和传统互联网一样,虚拟化也受到了VLAN跳跃攻击,CAM/MAC泛洪攻击、ARP欺骗、生成树攻击、DDoS攻击、MAC地址欺骗等攻击的威胁。
(2)用户隐私的安全
云计算的操作模式,是将计算任务交给云服务商提供的服务器网络和数据库系统。用户数据的存储,以及用户数据的处理和保护等操作,都是在”云“中完成的。用户无法知悉自己数据被存储和处理的国恒,这就导致了一种信息不对称。没有完善的监管制度,就不可避免地使用户数据处于一种可能被破坏、被窃取、被窥探的不安全状态。
云计算的出现,打破了地域的概念。用户不知道自己的数据存贮在什么地方,以及可能由哪些服务器来处理。对数据私密性要求高的用户,能不能保证其数据和隐私的安全,就成为用户是否选择云计算的一个重要前提条件。
云计算的特点决定了云具有规模效应。它在带来更可靠的性能和更便宜的价格时,也锁定的更多用户。但是,一旦产生纠纷或技术出错,很容易导致客户隐私泄露,甚至商业机密被公开。
(3)数据存储的安全
最为常用的计算机删除方式其实并没有将数据真正的从计算机的硬盘上删除,只不过是删除了文件相应的索引,一旦发生黑客入侵,采用一定的数据恢复方式就能将磁盘上的数据恢复。
• 数据生成:会牵扯到数据的所有权问题。客户要采取一定的措施来避免云计算平台商来获取自身敏感数据。
• 数据迁移:需要采取更加复杂有效的加密算法,防止这些数据被其他客户获取,另外还要保证数据在传输过程中的完整性应该采取一定的校验手段来保障数据的完整性。
• 数据使用:云计算的租用者不是一个,云平台对于数据的处理往往是采用未加密的静态数据,这种数据在使用的过程中是一个潜在的安全隐患,可能会导致用户数据安全问题,以及隐私泄露。
• 数据共享:数据在共享过程中其使用的范围变大了,这对于数据的控制变得更加的复杂,几乎在数据的每个环节都有可能发生数据的安全问题。
• 数据存储:将数据保存在云平台商要考虑数据的完整性、安全性等。最为常用的办法就是对数据进行加密处理。随着熨平他i客户的增多以及数据量的增大,对于数据的管理和加密工作也将变得异常复杂。
• 数据销毁:对于企业较为敏感甚至是秘密级的数据,云计算提供商需要考虑采用磁盘擦写的方式来完成对于数据的删除,或采用一定的数据销毁的算法甚至是物理销毁。
4. 云平台的稳定性和抗攻击能力
(1)网络的稳定性
• 带宽:不管是有线网络还是移动无线网络,带宽是越来越大的,带宽的需求是无止境的
• 丢包率:网络是不可靠的,出现丢包是很正常的,网络工程师们也致力于解决这个问题,丢包越少越能保证报文传输的可靠性
• 延迟:由于互联网络的复杂性、网络流量的动态变化和网络路由的动态选择,网络延时随时都在不停的变化(称为抖动)。网络延时和网络延时的抖动越小,那么网络的质量就越好
(2)云平台的稳定性
云平台采用内核优化以及热补丁包等技术迅速修补服务器/云主机内核。对最底层硬件,特别是运行内存,内存是硬件宕机的排头兵,通过内核技术把故障隔离,避免内存故障引发宕机风险。除此之外,网络服务器采用双上联网络结构,即便网络交换机出现异常,云服务也可以正常运转。
并且对于云服务提供商而言,怎样快速反应一些找到的硬件风险服务,怎么修复用户的体验,是一个极大的考验。尽管有这种专业能力,但一些不可抗拒因素必定也会导致网络服务器瘫痪。宕机后立即恢复取决于云服务的可用性。新一代云主机存储分离,即便宕机也能够在几秒内复原,大幅度降低宕机对用户业务危害。
(3)云平台的抗攻击能力
• 防DDoS攻击:抵御各种服务攻击
• 端口安全检测:定期扫描服务器当前开放的端口,降低系统被入侵的风险
• 异地登录提醒:通过扫描访问日志定时发现异常登录行为
• 主机密码暴力破解防御:通过扫描访问日志实时发现非法入侵
• 网站后门检测:通过扫描访问URL实时发现网站后门
• WEB漏洞检测:提供对网站的SQL注入、xss跨站脚本等各项高危安全漏洞进行检测
1. 云安全架构体系概述
云计算安全技术自2011年受到重视至今,一直保持蓬勃发展,一部分技术早已完善,能够用于生产环境当中。伴随着容器技术等技术在云计算中运用,给云计算增添了心安全问题与挑战。容器安全技术正处在科技进步崛起的督促期,此项技术成熟还要2~5年。在此期间,有可能出现别的一个新的按群技术,丰富现阶段的云计算安全技术。
通用云安全架构
云用户域:包含客户端安全技术,包含云智能终端与云终端身份管理技术
云服务域:涉及到云服务的安全技术,首先从IaaS、NaaS、PaaS、SaaS四个业务流程方面考虑安全核心技术的引入
云监管域:引入了云管理有关的安全技术,并对云用户域和云服务域进行监控
2. 云服务域安全
(1)SaaS
包括3个方面,分别是物理部署安全、多用户隔离及业务的授权访问。
虚拟机防护机制:
• 虚拟机自身安全:为保证虚拟机自身的安全,一般采用的方法是在每台虚拟机商安装防火墙、入侵检测软件等,但这将造成资源的大量浪费。目前业界流行的做法是在一个虚拟化系统中启用一个或多个独立的具有防火墙、入侵检测等安全功能的虚拟机,为其他业务逻辑虚拟机进行安全保护
• 虚拟机隔离技术:为了实现新建之间的隔离,可以根据业务属性、业务安全等级、网络属性等方式对虚拟机进行分类,目前流行的安全策略有TCP五元组(源IP地址、目的IP地址、源端口、目的端口、协议)、安全组(资源池、文件夹、容器)等
• 虚拟机迁移技术:为了实现资源的复用和性能的隔离,虚拟机技术将各种应用封装在不同的虚拟机中,从而运行在共享的物理硬件服务器上。一方面,必须保证迁移过程的安全,另一方面,还需保证迁移前后的安全配置环境一致
• 虚拟机补丁管理:虚拟化服务器与物理服务器一样需要补丁管理和日常维护。对虚拟机进行补丁修复,可以有效降低系统的安全风险。因此,虚拟化系统需要支持虚拟机补丁的批量升级和自动化升级,并加强对休眠虚拟机安全系统状态的监控
(2)PaaS
提供给用户的能力是通过在云基础设施之上部署用户创建的应用而实现的,这些应用通过使用云服务商支持的编程语言或工具进行开发,云服务提供商保护PaaS层面的安全,首先需要考虑PaaS平台本身的安全。
虚拟机防护机制:
• PaaS平台安全:云服务提供商为保护PaaS层面的安全,首先需要考虑PaaS平台本身的安全,具体措施为对PaaS平台所使用的应用、组件或web服务进行风险评估,及时发现应用、组件或web服务存在的安全漏洞,并及时部署补丁修复方案,以保证平台运行引擎的安全。同时,尽可能要求增加信息透明度以利于风险评估和安全管理,防止被黑客的攻击
• PaaS接口安全:是指如何保证用户可以安全地访问各种业务应用,同时避免来自网络的攻击造成破坏。当用户或者第三方应用欲访问云平台中受保护资源时,需先与云平台认证服务器进行交互,利用自身携带的accesskey及相应的accesskeyID通过APIendpoint进行认证授权
• PaaS应用安全:是指保护用户部署在PaaS平台上应用的安全。在多租户PaaS的服务模式中,最核心的安全原则就是多租户应用隔离。例如,云服务提供商需要在多租户模式下提供“沙盒”架构,平台运行引擎的“沙盒“特性可以集中维护部署在PaaS平台上应用的保密性和完整性,并监控新的程序缺陷和漏洞,以避免这些缺陷和漏洞被用来攻击PaaS平台和打破”沙盒“架构
• 非关系型数据库安全:谈及NoSQL数据库部署具体安全措施,以HBase数据库为例(HBase时NoSQL数据库中安全特性最丰富的产品),可以进行安全策略部署,包括Kerberos认证机制、Coprocessor机制、ACL访问控制机制等
(3)IaaS
云业务提供商利用虚拟化相关技术构建虚拟化服务器,可以答复提高物理服务器的运算效率与利用率。而虚拟化作为IaaS层面的核心技术,其安全问题不容忽视。
虚拟机防护机制:
• 物理层隔离:为每个用户配置单独的物理资源,以实现在物理上的隔离。用户不用去担心服务器的地理位置和性能,不同的用户可以申请分配到属于自己的不同的服务器,那么用户之间数据就不会发生冲突,同时也达到了隔离的目的
• 平台层隔离:平台层处于物理层和应用层之间,主要时封装物理层提供的服务,使用户能够更加方便地使用底层服务。要在这一层上实现隔离,需要平台层能够响应不同用户的不同需求,把属于不同用户的数据按照映射的方式反馈给不同的用户,这样就能够达到隔离的目的
• 应用层隔离:主要包括应用隔离沙箱。采用沙箱隔离应用,每个沙箱形成一个应用池,池中应用与其他池中的应用相互隔离,每个池都有一系列后台进程来处理应用请求,这种方式能够通过设定池中进程数目达到控制系统最大资源利用率的目的
(4)NaaS
在云环境中,云业务提供商在考虑诸多新特性所带来的安全挑战的同时,也不能忽视传统网络的安全问题。因此,云业务提供商需向用户提供网络安全即服务,系统地考虑NaaS安全技术。
统一接入机制:
• 身份的有效管理:统一接入机制支持用户账号生命周期管理,用户身份管理要遵循账号的生命周期管理,该用户可以是外部用户、系统、管理人员。生命周期管理必须包括账号注册、角色权限分配、角色权限变更、账号删除全过程的管控。账号注册、变更等均需有相应的审批过程
• 密码及认证管理:该机制需建立统一的认证系统,提高访问认证的安全性,并对不同级别用户的密码进行系统管理,可根据云计算系统的安全策略来统一设定相应的密码策略,如密码长度、密码复杂度等。同时,云系统需支持密码同步服务和密码重置服务
• 访问授权:云系统支持访问策略制定,针对不同用户,对资源的访问权限进行策略制定;针对指定的资源定义相应的访问控制列表,并需要反映到虚拟化层,如虚拟机的IP地址和端口号、访问时间等,可借鉴的技术有RBAC、ACL等
• 审计:云服务提供商提供的云系统根据已定义的访问策略在企业或机构内对用户访问资源合规性进行及时的监控、审计
• 身份与访问管理API:身份管理的功能要支持API的方式来实现,部署API安全受控机制,由云系统安全管理员操作云系统安全监控设备监控系统API访问受控行为,预防、阻止黑客操控恶意应用进行非法API攻击
3. 云用户域安全
云终端是指云用户所使用的智能终端,包含网络服务器、电脑台式机、笔记本、平板、电子产品。云终端是云计算的连接实体,是联接云用户和云计算平台上的桥梁。终端安全是云计算安全重要环节,都是网络空间下网络信息安全的关键所在。
• 云终端设备安全:云终端设备在硬件方面需要采用安全芯片、安全硬件/固件、安全终端软件和终端安全证书等技术来提高云终端的安全性,并确保云终端设备不被非法修改和添加恶意功能,同时保证云终端设备的可溯源性。
• 云终端身份管理:基于用户的生物特征身份认证比传统输入用户名和密码的方式更加安全。用户可以利用手机上配备的生物特征采集设备(如摄像头、MIC、指纹扫描器等)输入自身具有唯一性的生物特征(如人脸图像、掌纹图像、指纹或声音等)进行用户登录。
4. 云监管域安全
• 事件管理:为提高云计算应用风险预防、业务连续运行能力,云计算服务提供商针对可能影响业务的突发事件进行管理。云安全管理平台具备的事件管理机制包括事件监控、预警和响应。
• 补丁管理:为减少安全漏洞,云安全管理平台可以规范、监管安全补丁的管理工作。安全补丁管理过程应至少包括:补丁分析、补丁测试、部署安装、补丁检查4个环节。安全补丁管理流程可以由安全事件触发,也可以按周期触发。
• 灾难恢复:云安全管理平台需要具备灾难恢复能力,当遇到灾难时,如系统瘫痪、数据丢失,应尽快恢复到安全状态保证系统正常运转。这个机制可以保证云服务的持续性,保证云服务不会中断。
• 云安全评估:安全风险评估方法为云计算安全的风险评估提供技术手段和方法支撑。安全风险评估关键技术的研究,包括工具漏洞扫描技术、远程渗透测试技术、网络架构分析技术、IDS采样分析技术等。
• 云安全审计:云安全管理平台可以建立完善的日志记录及审核机制,通过对操作、维护等各类日志进行统一、完整的审计分析,提高对违规事件的事后审查能力。
• 安全协调:云安全管理平台需要部署更加完善的虚拟化安全协调机制来协调整个云计算系统中多个层面虚拟化安全管理、协调功能。典型的虚拟化安全协调机制,如云安全管理平台借助虚拟机监控器保护云计算应用的隐私性,从而在操作系统与其他应用不可信的情况下保证虚拟机中应用的隐私数据不会被恶意泄露。
5. 云计算安全技术发展展望
• 传统的安全机制将进一步增强,以满足云安全要求:云计算的特性对传统安全机制提出了更高的要求,在此驱动下,产业界、学术界将进一步加大研发力度,对传统的安全技术进行拓展,从而增强在融合了移动互联网、大数据、物联网、云计算环境下的安全保障能力和水平。
• 云安全产业将进一步成熟:服务可用性、系统安全可靠性应该是云服务服务商提供首要考虑的问题,同时拥有成熟、完整云安全解决方案的厂商或云服务提供商将在云计算市场中获益,并进一步促进云安全产业的发展。
• 云安全市场将进一步规范化:用户在使用各式各样的”云安全“产品时拥有”非常不同“的体验,无法得到用户的认知,这种情况无助于云计算的推广与应用,在此种需求下,云安全市场将会逐渐细分并加速规范化进程。
1. 云计算安全防护建设原则
整体性原则:应遵循”木桶原理“,对云计算信息系统进行均衡、全面的保护,提高整个系统的安全最低点的安全性能
纵深防护原则:指将云计算信息系统至于多层保护之中,即使一种手段失效,也能够从另一个层面进行防护。同时不能只依赖单一安全机制,应该建立多种机制,多种机制互相支撑以保障云计算信息系统的安全
技术与管理并重原则:安全技术与安全管理同样重要,不能偏重技术忽略管理,更不能只注重管理而忽略核心技术的部署
最小特权原则:在进行云计算信息系统建设及运营时,应赋予每个参与主体必不可少的特权,一方面可以减少建设运营过程中各个执行环节之间的相互影响,另一方面也可以降低未授权访问敏感信息的可能性
2. 云计算安全架构
为了更好地具体指导云计算的安全建设,坚持云计算安全防护建设的原则,充分考虑云计算安全建设的关键问题,融合云计算技术体系、管理体系、运维体系等。
云计算安全标准及政策法规:要符合《信息安全技术网络安全等级保护基本要求》等技术标准,严格遵守《网络安全法》等相关法律法规。
云计算安全技术:
• 云计算安全接入:再进行云计算信息系统安全建设时,首先要考虑云计算安全接入问题,可通过云边界防护、传统通道安全、可信接入和API安全使用等技术来保障云边界接入的安全
• 物理安全:包括环境安全和设备安全。云服务提供商需要将云计算数据中心构建在一个相对适宜的环境中,通过电磁防护、防静电、温湿度控制等保障环境安全,并使用防盗系统、监控系统、云监控等保障设备安全
• IT架构安全:基础设施的安全性直接关系到虚拟化安全,云服务提供商需要进行Hypervisor安全、虚拟机安全、虚拟网络安全和虚拟管理系统安全等方面的部署,提高云计算信息系统抵御攻击的能力
• 运行安全:在SaaS中,云服务提供商需要从应用(迁移)安全、web安全和内容安全三个方面拉i保障应用安全,增强用户对SaaS的信任
• 数据安全:数据安全从数据加密与检索、用户隐私与保护、完整性保护验证、数据备份与容灾、用户数据隔离、残留数据处理几个方面进行安全保护
• 用户管控:用户管控主要从访问控制、身份鉴别和行为审计三个方面进行部署,通过用户管控增强云计算资源的可控性
云计算安全管理:
• 物理安全管理:云服务提供商需要从资产分类管理、安全区域管理、设备安全和日常管理四个方面进行部署,为云计算信息系统提供一个安全、可靠、稳定的物理环境
• IT架构安全管理:云服务提供商需要从网络安全管理、配置信息管理、资源计量与计费、云服务事件管理、安全测试、补丁挂你了、事故管理、合规管理方面来部署安全管理措施,保障云计算信息系统的IT架构安全
• 应用安全管理:需要从身份管理、权限管理、策略管理、内容管理四个方面进行部署,提高云应用的安全性
3. 云计算安全部署
云计算的安全架构对云计算信息系统的安全建设具有重要指导意义,它明确指出在建设云计算安全防护方面在技术、管理、运维管理等多个方面需要注意的事项。搭建云计算信息系统,需要从角色管理部署、安全防护部署等多个方面对云计算信息系统进行全方位保护。
角色管理部署:
• 用户:目前可以通过可信计算、数据加密等技术来保障终端的安全。此外,对于云服务提供商来说,应通过用户认证技术来保障用户身份的合法性,分级认证也是云计算信息系统认证的核心方法,可实现用户对数据的访问控制
• 云服务提供商:云服务提供商的威胁主要来自内部工作人员,可以采用加密、认证、访问控制等技术手段(如OAuth认证)来防护内部工作人员的恶意行为
安全防护部署:
• 主机安全:云计算中的主机不仅是进行计算和存储的载体,也充当着虚拟机的宿主机角色,对上层虚拟机的啊安全性保护至关重要。所以,要保证主机商运行的程序和数据资源一定是“干净”的,要求其所承载的资源无比来自正确的安全区域
• 网络基础设施安全:可以通过部署防火墙、IPS、VPN、防毒墙等一系列安全设备进行多层防护,应对各种混合型攻击
• 虚拟化安全:根据需要,可将不同的VM划分到不同的安全区域进行隔离和访问控制。可通过EVB协议(如VEPA协议)将不同VM之间的网络流量交由与服务器相连的物理交换机进行处理
4. 云计算安全防护关键点总结
(1)IaaS模式的安全
在IaaS模式下,供应商主要提供硬件基础设施,因此,硬件设施平台的可用性、安全性是关注重点
• 应确认供应商是否根据企业的风险度制定可行的灾难恢复计划以及备份流程,以确保高可用性
• 应确认供应商是否有完备的物理安全控制措施
• 应确认供应商是否有数据弃置机制,即弃置的物理硬盘中的数据得到彻底的消除
• 确认服务器补丁得到适当安装
(2)PaaS模式的安全
在PaaS模式下,供应商主要提供能够用来部署应用的云平台
• 用户要确保在云平台商开发的应用得到充分测试避免不安全的应用运行在云平台商从而造成企业信息的丢失或者泄露,云供应商则应有相应的监控手段来监控不完善的应用程序
• 用户的应用部署必须能够实现同其他用户的应用隔离,避免数据泄露
• 用户要对应用进行合理配置,以确保应用的安全
• 要考虑供应商提供的基于SOA的凭他i是否足够安全和强壮
(3)SaaS模式的安全
在SaaS模式下,供应商提供应用软件供企业运行其业务和保存数据
• 企业要确立数据所有者理念,在合同中明确供应商不能把企业自己的数据提供给其他单位或者人员
• 对供应商提供的软件进行性能测试、压力测试、安全测试以避免不稳定、不安全的软件运行企业的业务
• 要建立有效的身份识别及访问控制体系,确保数据仅被有限的人员访问
• 要考虑未来企业应用转回自己运营,已有的数据和软件所有权及使用权问题
1. 阿里云安全责任
阿里云保障云平台自身安全
基于阿里云的客户应用,其安全责任由双方共同承担,阿里云要保障云平台自身安全并提供安全产品和能力给云上客户 ,客户负责基于阿里云服务构建的应用系统的安全。
阿里云负责基础设施(包括跨地域、多可用区部署的数据中心,以及阿里巴巴骨干传输网络)和物理设备(包括计算、存储和网络设备)的物理和硬件安全,并负责运行在飞天分布式云操作系统之上的虚拟化层和云产品层的安全。同时,阿里云负责平台侧的身份和访问控制和管理、监控和运营,从而为客户提供高可用和高安全的云服务平台。
• 保障云数据中心物理安全
• 保障云平台硬件、软件和网络安全,包括操作系统及数据的补丁管理、网络访问控制、DDoS防护、灾难恢复等
• 及时发现云平台的安全漏洞并修复,修复漏洞过程不影响客户业务可用性
• 通过与外部第三方独立安全监管与审计机构合作,对阿里云进行安全合规与审计评估
为客户提供保护云端信息系统的技术手段
阿里云负责基础设施、物理设备、分布式云操作系统及云服务产品安全,并为客户提供保护云端应用及数据的技术手段
安全责任共担模式之下,阿里云保障云平台层面的安全并提供一方集成的云产品安全能力和云盾安全服务给客户使用,让客户降低对安全性的顾虑,更专注于核心业务发展
• 为客户提供多地域、多可用区分布的云数据中心以及多线BGP接入网络,使得客户可利用阿里云基础设施构建跨机房高可用的云端应用
• 为客户提供安全的硬件基础设施和设备
• 为客户提供云上账户安全管理能力,包括但不限于云账号支持主子账号、多因素认证、分组授权、细粒度授权、临时授权等账户安全管控手段
• 为客户提供安全监控和运营能力,包括安全审计手段
• 为客户提供数据加密手段
• 为客户提供各类安全服务
• 引入第三方安全厂商,为客户提供个性化的行业安全解决方案
客户安全责任
客户负责以安全的方式配置和使用各种云上产品,并基于这些云产品的安全能力以安全可控的方式构建自己的云上应用和业务,保障云上数据的安全。阿里云基于阿里巴巴集团多年攻防技术积累,为客户提供云盾安全服务,保护客户的云上业务和应用系统。阿里云建议客户选择使用云盾安全服务或者阿里云安全生态里的第三方安全厂商的安全产品为其云上应用和业务系统提供全面的安全防护。
• 客户应基于阿里云提供的服务构建自己的云端应用系统,综合运用阿里云产品的安全功能、云盾安全服务以及安全生态提供的第三方安全产品保护自己的业务系统
• 客户应对云上产品进行安全配置管理,保障云上业务的基础安全和数据安全
• 客户在阿里云上如果使用的是基础类业务(例如,阿里云提供的云服务器ECS),那么相关服务实例完全由客户控制,客户应管理实例并进行安全配置,并应加固租用的云服务器操作系统、升级补丁、配置安全组防火墙进行网络访问控制
• 客户在阿里云上使用的非基础类服务(例如,平台类或云原生类),那么客户的安全责任会相应上移,不再需要关心如何维护实例,也不需要关心操作系统的补丁升级、配置加固,只需要管理这些服务的账户及授权,使用这些服务提供的安全功能。例如,MaxCompute服务为客户提供了不同维度的权限控制能力,客户只需要根据业务需求妥善配置类似产品中的安全功能即可
2. 阿里云安全合规
至目前为止,阿里云先后通过了海内外数十家权威机构的认证和审计。
3. 阿里云安全架构
提供了五横两纵的7个维度的安全架构保障
(1)云平台安全
物理安全、硬件安全、虚拟化安全、云产品安全、云平台内部是否访问控制、云平台安全监控和运营
(2)用户基础安全
阿里云为用户基础安全提供了网络安全、容器安全、主机安全三部分基础安全服务
(3)用户数据安全
阿里云为用户数据安全提供了数据保护、全链路加密、密钥管理三部分数据安全服务
(4)用户应用安全
阿里云为用户应用安全提供了应用保护、应用配置安全、应用环境安全三部分应用安全服务
(5)用户业务安全
阿里云为用户业务安全提供了业务风控 、内容检测、身份验证三部分业务安全服务
(6)用户账户安全
阿里云为用户账户安全提供了身份认证、访问授权、账号管理、操作审计、应用管理五部分账户安全服务
(7)用户安全监控和运营
阿里云为用户安全监控和运营提供了威胁检测盒响应、配置检查、日志审计、安全测试、安全咨询五部分服务内容
1. 什么是云安全中心
第一重防护:主机入侵检测和防护
第二重防护:诱饵检测,阻断并告警
第三重防护:文件备份与恢复
云安全中心(CSPM)是基于云原生架构优势,提供云上资产管理、配置核查、主动防御、安全加固、云产品配置评估和安全可视化等能力,可有效发现和阻止病毒传播、黑客攻击、勒索加密、漏洞利用、AK泄露等风险事件,实现一体化、自动化的安全运营闭环,保护多云环境下的主机、容器、虚拟机等工作负载安全性,同时满足监管合规要求。
2. 功能特性与优势
(1)功能特性
安全预防:
• 漏洞扫描与修复:主流系统、软件漏洞扫描,并支持漏洞一键修复
• 云平台配置检查:基于云平台安全实践,联动云产品能力形成安全闭环
• 基线检查:基于阿里云最佳配置核查清单,降低配置不当引起的风险
主动防御:
• 防勒索、防病毒:实时拦截已知勒索病毒、挖矿、蠕虫、DDoS等七类病毒
• 防篡改:防止网站被植入涉恐涉政、暗链、后门等,保障网页正常
• 应用白名单:防止未经授权的应用异常启动,影响业务正常运行
威胁检测:
• 250+威胁检测模型:提供全链路的威胁检测能力,让黑客无处遁形
• 告警自动化分析关联:自动关联告警、识别低危异常形成的入侵,提升运营效率
• 安全态势:安全大屏知己、知彼、知威胁多维度展现网络安全态势
调查&响应:
• 自动化攻击溯源:自动溯源攻击源和原因,帮用户了解入侵威胁,快速响应
• 日志分析&审计:提供日志审计、分析能力,提供攻击溯源、合规的平台
容器安全:
• 镜像漏洞扫描:支持容器镜像的深度漏洞扫描,提供漏洞修复方案
• 容器威胁检测:容器运行时刻及容器K8s威胁检测
• 容器防火墙:为容器环境提供访问控制策略的智能学习、告警、拦截的一体化网络防火墙服务
(2)产品优势
• 稳定性:百万级服务器主机装机量,资源占用低,CPU使用率低于10%,不影响客户正常业务
• 统一安全管理:支持对全网服务器主机、容器、云产品的威胁管控,可以部署在线下IDC及其他云平台,统一管控
• 安全闭环能力:主动拦截主流病毒木马,全面漏洞扫描,可一键修复漏洞/基线不满足项等,降低用户运维成本
• 全面攻击检测:收集3大类型14类服务器主机日志,250+威胁检测模型提供全链路的威胁检测能力
3. 应用场景
(1)等保合规场景
对于等保2.0二级和三级中针对服务器主机安全的入侵防范、身份鉴别、安全审计等方面的要求,云安全中心(态势感知)可应答其中15+要求项。
(2)混合云主机安全场景
支持阿里云、线下IDC、其他云厂商等多种环境下的服务器主机,通过云安全中心控制台实现对云上、云下服务器的统一防护及运维,包括病毒查杀、漏洞扫描、防勒索等安全防护,降低安全管理成本。
(3)容器安全场景
基于爱凌云容器安全ATT&CK攻防矩阵,云安全中心(态势感知)重点关注容器构建、容器部署和容器运行三大生命周期阶段,通过云原生方式,多维立体构建容器安全能力,为企业云上容器化进程提供全方位安全保障。
1. DDoS防护
攻击原理
攻击者使用一个非法账号将DDoS主控程序安装在一台计算机上,并在网络上的多台计算机上安装代理程序。在所设定的时间内,主控程序与大量代理程序进行通讯,代理程序收到指令时对目标发动攻击,主控程序甚至能在几秒钟内激活成百上千次代理程序的运行。
部署商用DDoS防御方案
• 购买DDoS原生防护,获取权力防护的防御能力,且无需修改业务IP
• 购买DDoS高防服务,获取最高可到Tbps级别的防御能力,需将流量切换至DDoS高防。DDoS高防服务明确承诺防护量和防御效果
2. Web应用防火墙
Web应用防火墙(Web Application Firewall,简称WAF)为网站或App业务提供一站式安全防护。WAF可以有效识别web业务流量的恶意特征,在对流量清洗和过滤后,将正常、安全的流量返回给服务器,避免网站服务器被恶意入侵导致性能异常等问题,从而保障网站的业务安全和数据安全。
Web业务接入WAF防护后,可以通过总览页面,查询最近30天内的应急漏洞通知、业务安全数据和约为流量数据,了解近期web业务的安全状态。
3. 云防火墙
阿里云云防火墙是一款云平台SaaS化的防火墙,可针对云上网络资产的互联网边界、VPC边界及主机边界实现三位一体的统一安全隔离管控,是业务上云的第一道网络防线。
• 互联网边界防火墙主要用于检测互联网和云上资产间的通信流量,它是一种集中式管理的防火墙。部署在互联网和用户主机之间。
• VPC边界防火墙主要用于检测两个VPC间的通信流量,是一种分布式防火墙。部署在两个VPC网络之间。
4. 云安全中心(态势感知)
是一款集持续监测、深度防御、全面分析、快速响应能力于一体的云上安全管理平台。基于云原生架构优势,提供云上资产管理、配置核查、主动防御、安全加固、云产品配置评估和安全可视化等能力,可有效发现和阻止病毒传播、黑客攻击、勒索加密、漏洞利用、AK泄露等风险事件,帮助实现一体化、自动化的安全运营闭环,保护多云环境下的主机、容器、虚拟机等工作负载安全性,同时满足监管合规要求。
5. 运维安全中心(堡垒机)
云上统一、高效、安全运维通道,用于集中管理资产权限,全程监控操作行为,实时还原场景,保障云端运维身份可鉴别、权限可管控、风险可阻断、操作可审计,助力等保合规。
金融行业
金融行业因业务重要、数据敏感,需要对直接运维服务器资产的行为加强安全监控,防止因运维时越权访问引起数据泄露,以及高危命令操作导致业务系统瘫痪。
• 越权防护:权限细粒度划分有效防止越权行为导致的敏感数据泄露事件发生
• 高风险阻断:高危风险命令实时阻断,保障运维过程中的业务系统安全
• 高效事件还原:直观录播的方式全量审计操作行为,有助于安全事件高效追溯
6. 办公安全平台(SASE)
办公安全平台(Secure Access Service Edge)是阿里云首个一站式办公安全管控平台,企业无需再投资复杂且昂贵的安全硬件设备,即可快速构建零信任内网访问、办公数据防泄漏、上网行为管理与审计、办公访问加速等在内的办公安全体系。
产品应用场景及功能
• 办公安全一体化防护
• 办公行为一体化审计
特性:
• 零信任访问架构:身份驱动为核心,纯SaaS化零信任网关遵循从不信任原则、内网应用零暴露原则、最小授权原则,有效解决企业数字化办公带来的无边界安全问题
• 办公安全统一管控:基于SASE安全模型,一个平台即可实现为企业移动办公及分支机构上网进行管理,实现防护统一收口、策略统一设置、日志统一分析、安全统一运维
• 访问加速:依托覆盖全球的POP节点、边缘安全节点及云安全访问服务客户端的智能选路能力,无论员工在任何时间、任何地点都可以享受更快速、更稳定、更安全的办公体验
• 极简部署:纯SaaS化服务,IaaS层与阿里云基础平台深度打通,只需安装一个安全客户端,即可开启使用,从此告别繁杂的软/硬件安全网关运维工作
1. 监控系统概述
无监控、不运维
监控系统主要针对数据中心内的硬件和软件进行告警和监控,企业的IT架构逐步从传统的物理服务器,迁移到以虚拟机为主导的IaaS云,抑或当前流行的容器云PaaS平台,无论基础架构如何调整都离不开监控系统的支撑。需要监控不同的对象例如:云主机、数据库、容器、分布式存储、SDN网络、分布式网络、各种应用程序等。
2. 监控的核心目标
(1)监控的核心
• 发现问题:当系统发生故障报警,我们会收到故障报警信息
• 定位问题:根据报警信息,能快速判断故障原因,定位故障所在
• 解决问题:定位故障原因后,能解决问题
• 总结问题:善于事后总结,避免重复犯错
(2)监控的目标
• 对系统不间断实时监控:实际上是对系统不间断的实时监控
• 实时反馈系统当前状态:监控某个硬件或者某个系统,都是能实时看到当前系统的状态
• 保证服务可靠性安全性:监控的目的就是要保证系统、服务、业务正常运行
• 保证业务持续稳定运行:如果监控做得很完善,即使出现故障,能第一时间接收到故障报警,在第一时间处理解决,从而保证业务持续性的稳定运行
3. 监控的方法
(1)了解监控对象:了解监控对象的信息,如CPU、内存、数据库等
(2)性能基准指标:要监控对象的属性,如CPU的使用率、负载
(3)报警阈值定义:怎么样才算是故障?如CPU的负载高到多少才需要报警
(4)故障处理流程:收到了故障报警,那么我们怎么处理
1. 开源监控工具介绍
(1)Cacti
Cacti是一套基于PHP、MySQL、SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmp来获取数据,使用RRDTool绘画图形。对网络设备支持较好。
劣势是基于SNMP采集数据,对于SNMP的依赖只适合特性场景。
(2)Nagios
Nagios是一款开源的企业级监控系统,能够实现对系统CPU、磁盘、网络等方面参数的基本系统监控,以及SMTP、POP3、HTTP、NNTP等各种基本的服务类型。另外通过安装插件和编写监控脚本,用户可以实现应用监控,并针对大量的监控主机和多个对象部署层次化监控架构。
Nagios最大的特点是其强大的管理中心,尽管其功能是监控服务和主机的,但Nagios自身并不包括这部分功能代码,所有的监控、告警功能都是由相关插件完成的。
(3)Zabbix
Zabbix是基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。Zabbix能监视各种网络参数,保证服务器系统的安全运营。
Zabbix有强大的通知机制以让系统运维人员快速定位、解决问题。
Zabbix由Zabbix Server与可选组件Zabbix Agent组成。Server可基于SNMP协议、Zabbix Agent、ping、端口监视等多种方式来对远程服务器、性能状态进行数据采集。
Zabbix不足之处是消耗的资源比较多,如果监控的主机非常多时,可能会出现监控超时、告警超时等现象。
(4)Open-Falcon
Open-Falcon是一款企业级、高可用、可扩展的开源监控解决方案。项目最初由小米公司发起,小米运维团队从互联网公司的需求出发,根据多年的运维经验,结合SRE、SA、DEVS的使用经验和反馈,开发的一套面向互联网的企业级开源监控产品。
特点:
• 强大灵活的数据采集:自动发现,支持falcon-agent、snmp、用户主动push、用户自定义插件支持
• 水平扩展能力:支持每个周期上亿次的数据采集、告警判定、历史数据存储和查询
• 高效率的告警策略管理:高效的portal、支持策略模板、模板继承和覆盖
• 人性化的告警设置:最大告警次数、告警级别、告警恢复通知、告警暂停、不同时段不同域值、支持维护周期
缺点:
发布时间短,很多基础的服务监控插件(如Tomcat、apache等)还不支持,很多功能还在不断完善中,另外由于缺少专门的支持,虽然有开放社区,但是解决问题的效率相对较低
(5)Prometheus
Prometheus是一套开源的监控、报警、时间序列数据库的组合,Go语言开发。
原生支持K8s的服务发现,能监控容器的动态变化,结合Grafana绘出漂亮图形。
Prometheus作为新生代的开源监控系统,慢慢成为了云原生体系的事实标准。
Prometheus不足之处是不适用于日志(Logs)、事件(Event)等监控。不支持集群部署,被监控集群过大后,本身性能有一定瓶颈。
2. 商用监控系统介绍
(1)监控宝
监控宝是为用户提供IT性能监控(IT Performance Monitoring)的SaaS产品,包含网站监控、服务器监控、中间件监控、数据库监控、应用监控、API监控和页面性能监控等功能。包含免费版、畅享版和企业版。
作为国内最早提供基于SaaS服务的网络监控平台,监控宝不但为初级用户提供免费的标准服务,企业用户还可以按需购买所需的监控、告警资源,最大限度的节省企业运维成本。
监控宝通过遍布全球的300多个分布式监测节点,对网络进行稳定性和可用性的主动监控和实时分析,支持http(https)、ftp、ping、udp、tcp、smtp、traceroute等多种协议,测试CDN效果及DNS状态,全网全地域性能趋势分析。
(2)阿里云监控
阿里云云监控服务可用于收集阿里云资源的监控指标或用户自定义的监控指标,探测服务可用性以及针对指标设置警报。使您全面了解阿里云上的资源使用情况、业务的运行状况和健康度,并及时收到异常报警做出反应,保证应用程序顺畅运行。
1. 阿里云云监控生态概述
从可观测性的角度,阿里云云监控系统架构可以粗略分为4个层次。自上而下分别是:基础设施层、容器性能层、应用性能层、用户业务层。
2. 产品功能
基础设施:云上云下统一的主机监控解决方案及百余款云产品监控
• 主机监控:通过在主机上安装插件,为主机提供监控功能。无论主机是ECS,还是其他厂商的虚拟机或物理机,都可以使用云监控的主机监控功能
• 云产品监控:提供涵盖弹性计算、网络、数据库、存储、大数据、安全及中间件等百余款云产品的数千指标及数百事件的监控报警
基础监控:基于私网和公网的网络可用性监控
• 站点监控:通过遍布全国的互联网络终端节点,发送模拟真实用户访问的探测请求,监控全国各省市运营商网络终端用户到服务站点的访问情况
• 可用性监控:针对VPC网络,利用在目标网络环境中,已经安装了插件的主机作为探测点,探测自身或相关服务的可用性
基础监控:通过日志监控、自定义监控把业务数据归集到云上进行统一监控和管理
• 日志监控:提供对日志数据实时分析、监控图标可视化展示和报警服务。只需要开通日志服务,将本地日志通过日志服务进行收集,即可解决企业的监控运维与运营诉求
• 自定义监控:通过上报监控数据,将业务指标发送至云监控,并在云监控上添加监控图标和设置报警规则,对于故障指标发送报警通知,便于及时处理故障,保障业务的正常运行
• 自定义事件:通过上报自定义事件,将业务产生的异常事件采集发送到云监控,通过对上报的事件配置报警规则来接收报警通知
云监控为云上用户提供开箱即用的企业级开放型一站式监控解决方案。云监控涵盖IT设施基础监控和外网完了过质量拨测监控,是基于事件、自定义指标和日志的业务监控,全方位提供更高效、全面、省钱的监控服务。使用云监控,不但可以提升系统服务可用时长,还可以降低企业IT运维监控成本
3. 应用实时监控服务ARMS
应用实时监控服务(Application Real-Time Monitoring Service)作为一款云原生可观测产品平台,包含前端监控、应用监控、云拨测、Prometheus监控、Grafana服务等子产品。覆盖浏览器、小程序、APP、分布式应用、容器等不同可观测环境与场景。帮助企业实现全栈性能监控与端到端追踪诊断。提高监控效率,压降运维工作量
产品架构如下
4. 日志监控服务SLS
在企业级的业务运维和运营场景中,日志正扮演着越来越重要的角色。业务日志的简单本地化存储,很难挖掘日志背后真正的数据价值。将日志存储到集中的服务端后,将其处理成指导运维和指导运营的指标,成为企业日益迫切的需求。
日志监控提供对日志数据实时分析、监控图标可视化展示和报警服务。只需要开通日志服务,将本地日志通过日志服务进行收集,即可解决企业的监控运维与运营诉求。此外,还可以完美结合云监控的其他功能,形成完整的监控闭环。
解决方案
通过将云监控与日志服务结合,推出了非常轻量级,但全面、已用的解决方案。
• 简单和应用是与传统ELK方案相比较,零编码即可享有完整监控解决方案。
• 提供日志数据实时分析、监控图标展示、报警服务的全套解决方案
• 基于阿里云Apsara Monitor服务,提供稳定可靠的日志监控体验
• 全SaaS服务,几乎无时间成本、人力成本和运维成本,快速拥有企业级业务日志实时监控能力