什么是云服务器?
产生背景

(1)某公司上架一个游戏P
流量爆发:后端服务器无法满足爆发需求
流量低谷:后端服务器限制浪费
流量变化导致对后端需求不一致,之前购置的大量硬件产生资源浪费
后端资源精准预估难度很大

(2)某传统制造业公司转型互联网+企业
投入大量资源,希望尽可能高效利用后端服务器资源,节约基础设施维护成本,快速利用新技术开展新业务模式,但维护基础设施需要专业的团队和运营成本。避免重复成本,将注意力放在主营业务上是需要考虑的问题。

传统后端基础设施有很多痛点,云服务器具有弹性、自动化、高效、专业等特点,可以在一定程度上解决这些痛点。

云服务器的概念
  • 云服务器(Cloud Virtual Machine)在云中的虚拟机
  • 放置在云中的计算资源
  • 可以按需分配给用户
  • 可动态调整
  • 即时可用
  • IaaS最基础的服务
    计算资源被集中的放在一个池子里,称为资源池,有强大调度来调配资源,有用户需要资源时,资源调度系统从池子里调度出资源,分配成一台虚拟机,可动态调整。
  • 实例:(Instance)
  • 指具体的云服务器
  • 部分语境下与云服务器互换使用
  • 配置属性包含CPU、内存、网络、存储等
  • 由元数据(Meta-Data)标识属性
  • 镜像(Image)
  • 创建服务器模板
  • 相似概念
  • 实例
  • 云虚拟机
  • IaaS提供商采用不同的名称
  • 名称与计算服务有关
  • 与弹性计算有关
云服务器的特性
  • 弹性
  • 按需申请
  • 动态调整
  • 高效
  • 快速复用
  • 平滑扩(缩)容
  • 付费灵活
  • 混合部署
  • 专业 (容灾切换保证高可用)
  • 冷热迁移
  • 高可用
  • 多种容灾方案
  • 网络连接保障
  • 安全保障
  • 自动化
  • 提供RESTful API
  • 提供定义资源
  • 集成自动化运维框架
  • 实现DevOPs
  • 场景回顾
  • 场景一 适用弹性伸缩
  • 场景二 适用混合云部署
虚拟化

云服务器的关键技术

  • 虚拟化
  • 概念
    产生于上世纪60年代,指计算元件在虚拟的基础上而不是真实的基础上运行,将物理抽象为逻辑
  • 分类
  • 按虚拟对象
  • 操作系统虚拟化:将操作系统及系统调用抽象为资源
  • 平台虚拟化:将硬件组件抽象为逻辑资源
  • 按方案
  • 软件虚拟化:截获或模拟物理平台访问
  • 硬件虚拟化:硬件本身提供截获和重定向支持
  • 按方式
    全虚拟化、准虚拟化
  • 虚拟机监控器
  • 即Hypervisor或VMM(Virtual Machine Monitor)
  • 作用
  • 管理虚拟机生命周期
  • 为虚拟机抽象出硬件环境
  • 两种类型

    VMM、EMS都属于一型
  • 虚拟机
  • 也成为客户机(Guest System)
  • 物理机同时存在多个虚拟机
  • 在KVM虚拟化中:
  • 运行在模拟的物理机上
  • 表现为进程
  • 保存为文件
  • 配置文件
  • 虚拟磁盘文件
  • 云服务器是放置在云中的虚拟机
KVM和Xen

KVM(Kernel-based Virtual machine)

- 从v2.6.0开始,打包在Linux内核中发行

- 需运行在硬件虚拟化特性的物理机上(Intel-VT/AMD-V)

- 二型虚拟机监控器(形式上)

- 利用QEMU进行设备模拟

云上的虚拟服务器都会有容器吗_虚拟化技术

  • 仅支持全虚拟化
  • 支持准虚拟化驱动提升I/O性能
  • 充分利用Linux内核
  • 虚拟机为标准Linux进程
  • 利用Linux调度功能
  • 内存管理模块
  • 电源管理等
  • CPU虚拟
  • 利用Intel-VT?AMD-V辅助
  • 内存虚拟
  • 影子页表
  • Intel-EPT/AMD NPT辅助
  • IO虚拟
  • 模拟设备保证兼容性
  • 半虚拟化设备保证性能
  • 分配专用设备同时保证兼容性和性能
  • 可以支持超大规模主机及客户机
  • 主机:1024 CPU,8TB内存
  • 虚拟机:160 CPU,2TB内存
  • 支持快照
  • 支持迁移包括热迁移
  • 逐步将内存内容复制到新地址
  • 在最后一部分内容复制完毕前关闭源虚拟机
  • 复制完毕后开启目标虚拟机

Xen

  • 采用定制微内核
  • 特殊虚拟机Domain 0作为管理平台
  • 一型虚拟机监控器
  • 支持多种虚拟化方式:全虚拟化、准虚拟化等
  • 运行准虚拟化虚拟机时
  • 需要更改客户机系统
  • 替换掉复杂的硬件指令
  • 客户机配合虚拟化工作
  • 不模拟客户机环境
    KVM和Xen比较
  • 相同点
  • 开源且有广泛的应用
  • 不同点
  • KVM得到了Linux社区的全力支持
  • KVM更容易使用和维护
  • Xen的产品化历史更悠久
  • Xen对准虚拟化的支持
弹性计算
  • 概念
  • 弹性
  • 自动化的调整计算资源供应量
  • 尽量贴近当前计算能力需求
  • 意义
  • 最大化提高计算资源效率
  • 为云计算实现奠定重要基础
  • 实现基础
  • 虚拟化技术
  • 为软件定义基础架构提供基础
  • 为资源供给自动化提供可能
  • 自动化资源管理与监控
  • 从当前资源情况判断供给量
  • 精确掌握弹性扩缩容时机
  • 高可用与容灾
  • 稳定供给资源
  • 避免资源不可用
  • 弹性资源
  • 计算资源
  • 弹性伸缩组云服务器
  • 网络资源
  • 弹性IP
  • 存储资源
  • 弹性云硬盘
  • 应用弹性伸缩
  • 利用公有云的IaaS服务创建弹性伸缩组
  • 在云服务器负载都大于50%时扩容
  • 在云服务器负载都小于20%时缩容