图解云计算概念,数字时代基石

2024-06-23 14:09:00 星期日

什么是云计算?

云计算是一种基于互联网的计算方式,它提供共享的计算资源和数据,根据需求向计算机和其他设备提供服务。它是一种模式,可以实现对可配置计算资源(如计算机网络、服务器、存储、应用程序和服务)的无处不在、按需访问,这些资源可以快速进行配置和释放,管理工作量最小化。云计算和存储解决方案为用户和企业提供了在第三方数据中心存储和处理数据的各种能力,这些数据中心可能位于用户远距离的地方,从城市内到世界各地都有。云计算依赖于资源共享以实现一致性和规模经济,类似于电网覆盖电力网络的效果。 —维基百科。

传统计算到云计算的转变

从传统计算到云计算的转变是信息技术行业的一个重大变革,主要体现在以下几个方面:

  • 计算资源的交付模式发生转变
    传统计算模式下,组织需要购买服务器、存储设备等硬件设施,自行建设数据中心。而云计算允许用户按需获取所需的计算资源,并按使用量付费,无需购置昂贵的硬件设备。
  • 资源利用效率提高
    传统模式下,组织往往需要购买超出实际需求的硬件资源,以应对将来业务增长。而云计算可实现资源池化,通过虚拟化技术共享底层硬件资源,提高资源利用率。
  • 运维模式改变
    传统模式下,IT人员需要花费大量精力维护硬件设施、操作系统和应用程序。而云计算将大部分维护工作交给云服务提供商,用户可专注于自身业务创新。
  • 业务敏捷性增强
    传统架构下,组织扩展IT资源需要经历复杂的采购、部署流程。而云计算能够实现快速伸缩计算资源,显著提高业务响应速度。
  • 成本结构改变
    传统模式下,大部分IT支出为资本支出。而云计算则转变为按需付费的运营支出模式,降低前期投资压力。

云计算服务模型

云计算服务通常分为三种主要的服务模型:

  • 基础设施即服务(Infrastructure as a Service, IaaS)
    IaaS提供基础的IT资源,如虚拟化的计算、存储和网络资源。用户可自行部署操作系统、中间件和应用程序。典型的IaaS服务包括亚马逊AWS的EC2、Microsoft Azure的虚拟机等。
  • 平台即服务(Platform as a Service, PaaS)
    PaaS为开发者提供完整的应用程序开发生命周期管理,包括编程环境、数据库、Web服务器等。开发者只需关注应用程序本身的开发,而无需管理底层的基础架构。典型的PaaS有AWS Elastic Beanstalk、Microsoft Azure App Service等。
  • 软件即服务(Software as a Service, SaaS)
    SaaS是云计算中最高级别的服务,提供通过互联网访问的完整应用程序,无需在本地安装和运行。软件由服务提供商完全管理,用户只需通过Web浏览器或客户端访问。常见的SaaS应用包括Office 365、Salesforce、Google G Suite等。

云计算的基本分层架构

云计算的基本分层架构通常包括以下几个层次:

  • 硬件资源层(Hardware Resource Layer)
    这是云计算架构的基础设施层,由大量的物理服务器、存储设备和网络设备组成。这些硬件资源通过虚拟化技术可以被划分为多个资源池共享使用。
  • 虚拟化层(Virtualization Layer)
    通过虚拟化技术如虚拟机(VM)或容器将底层硬件资源虚拟化,形成可供灵活调度的资源池。虚拟化层对资源进行抽象,屏蔽掉底层硬件的物理特征。
  • 资源管理层(Resource Management Layer)
    负责对资源池中的虚拟化资源进行统一调度和管理,实现资源的动态分配和弹性伸缩。通常采用自动化的资源编排工具实现。
  • 平台层(Platform Layer)
    在虚拟资源之上,为开发者提供应用运行的平台环境,如操作系统、中间件、开发框架等。开发者可在此基础上部署和运行应用程序。
  • 应用层(Application Layer)
    最顶层是为用户提供的各种云应用和服务,可以是SaaS形式直接交付,也可以是PaaS或IaaS模式下的自建应用。

    – 管理层(Management Layer)

    贯穿整个分层架构的管理层,负责实现云资源的调配、访问控制、监控、计费等管理职能。

云计算的关键技术

云计算的实现依赖于几项关键技术,主要包括:

  • 虚拟化技术
    虚拟化是云计算的基础,它能将计算、存储、网络等物理资源对象化、池化,以软件定义的方式灵活分配和管理。虚拟机、容器是两种主要的虚拟化技术。
  • 资源调度与自动化
    要高效整合海量的虚拟化资源,需要自动化的资源调度与编排技术,实现资源按需分配、弹性伸缩、负载均衡等管理。常用的工具如Kubernetes、Mesos等。
  • 分布式存储技术
    为应对大规模数据存储需求,需要分布式存储系统将数据分散存储在多个节点上,提供高可靠、高扩展、高性能的存储服务,如HDFS、Ceph等。
  • 分布式计算技术
    针对大数据、高并发等计算需求,利用分布式计算框架如Hadoop、Spark在数据中心规模内并行处理任务,提高计算效率。
  • 网络虚拟化技术
    通过软件定义网络(SDN)、网络功能虚拟化(NFV)等技术,在同构硬件之上构建弹性灵活、可编程的虚拟网络架构。
  • 安全技术
    涉及身份认证、访问控制、数据加密、隔离安全等技术,确保多租户场景下的资源、数据、隐私安全。
  • DevOps
    融合开发(Dev)和运维(Ops)理念的一种文化和实践,通过自动化、持续集成等手段,加快应用交付和部署效率。

云计算技术栈

云计算技术栈

介绍

本文将会通过思维导图列出云计算相关的技术栈,以便于大家了解云计算的相关技术。但是不会深入的介绍,后续的文章会详细涉猎。

云计算(Cloud Computing)的核心概念可以概括为:

  • 按需使用 云计算允许用户根据实际需求按需获取计算资源,包括CPU、内存、存储、带宽等,无需预先采购硬件设备。用户可根据业务发展实时扩缩资源使用量。
  • 资源虚拟化 通过虚拟化技术,将物理资源进行抽象和整合,形成资源池,实现资源可计量、可编目、可调度和快速重新分配。
  • 资源池共享 云计算将大量计算资源集中在资源池中,用户可以按需共享资源池中的资源,降低空闲资源浪费。
  • 通过网络交付服 资源和服务都通过互联网以服务的方式提供给用户,用户可以通过网络随时随地访问所需的资源和服务。
  • 按使用量付费 用户只需为实际使用的资源和服务付费,付费模式灵活,无需预先采购硬件设备或软件。

云计算的核心思想是将计算资源进行池化和虚拟化,通过网络以服务的形式进行按需交付和按量付费,提高资源利用率,降低IT成本。

云计算关键技术:

  • 虚拟化:将物理资源(如服务器、存储、网络)抽象化为逻辑资源,并以服务的方式提供给用户。
  • 分布式计算:将计算任务分配到多个计算节点上执行,以提高计算能力和可靠性。
  • 云存储:将数据存储在分布式的存储系统中,并以服务的方式提供给用户。
  • 云网络:将传统的网络资源虚拟化为逻辑网络,并以服务的方式提供给用户。

云计算服务模式:

  • 基础设施即服务(IaaS):为用户提供虚拟化的计算、存储和网络资源。
  • 平台即服务(PaaS):为用户提供开发、部署和运行应用程序的平台。
  • 软件即服务(SaaS):为用户提供应用程序服务,用户无需安装和维护软件。

部署模式:

  • 公有云:云资源由云服务提供商提供,并向所有用户开放。
  • 私有云:云资源部署在用户的专用网络中,仅供用户内部使用。
  • 混合云:将公有云和私有云结合起来使用,以满足用户的不同需求。

优势:

  • 弹性性:用户可以根据需求,随时扩展或缩减IT资源。
  • 按需付费:用户仅需为实际使用的资源付费。
  • 可靠性:云服务提供商通常拥有强大的基础设施,可以确保服务的可靠性。
  • 易用性:用户可以轻松地使用云服务,无需具备专业的IT知识。

应用场景:

  • Web应用程序:云计算是开发和部署Web应用程序的理想平台。
  • 大数据分析:云计算可以提供强大的计算能力和存储空间,以满足大数据分析的需求。
  • 移动应用:云计算可以为移动应用提供后端服务和数据存储。
  • 物联网:云计算可以连接和管理大量的物联网设备。

云计算技术图谱(开发人员)

  • 云计算
    • IaaS
    • 基础设施
      • 虚拟化
      • 半虚拟化
        • kvm
        • xen
      • 全虚拟化
        • QEMU
      • 计算虚拟化
        • CPU虚拟化
        • 内存虚拟化
      • 存储虚拟化
        • 文件虚拟化
        • 块虚拟化
        • 对象虚拟化
        • 存储网关
        • 存储卷
        • 存储池
        • 存储快照
        • 存储克隆
        • 存储迁移
      • 网络虚拟化
        • Linux bridge
        • Open vSwitch
        • DPDK
        • SR-IOV
        • VXLAN
        • GRE
        • IPsec
        • OpenFlow
        • NFV
        • SDN
        • iptables
        • Tools
        • ip
        • ifconfig
        • brctl
        • ovs-vsctl
        • ovs-ofctl
        • ethtool
        • tcpdump
        • wireshark
        • nmap
        • iptables
        • iperf
        • netstat
        • sar
      • 容器化
      • docker
        • container
        • image
        • registry
        • compose
        • network
        • storage
        • security
      • LXC
      • rkt
      • OCI
      • CRI
      • CNI
      • containerd
      • runc
      • k8s
    • PaaS
    • OpenStack
    • CloudStack
    • Kubernetes
      • 框架
      • etcd
      • api-server
      • controller-manager
      • scheduler
      • kubelet
      • kube-proxy
      • cni
      • cri
      • containerd
      • runc
      • Resources
        • pod
        • service
        • ingress
        • volume
        • configmap
        • secret
        • networkpolicy
        • statefulset
        • daemonset
        • job
        • cronjob
        • autoscale
        • security
        • logging
    • Docker Swarm
    • SaaS
    • 软件即服务

Mind Map

云计算知识图

该博客会持续更新,请关注!

本文系本站原创文章,著作版权属于作者,未经允许不得转载,如需转载或引用请注明出处或者联系作者。