OpenStack 企业私有云的若干需求(3):多租户和租户间隔离

本文介绍了OpenStack在企业私有云中实现多租户和租户隔离的需求,包括基本概念如用户、租户和多租户的层级,以及云环境的单租户和多租户区别。资源的共享带来安全性问题,如旁侧攻击和性能降低,需要通过IaaS层面上的租户隔离技术来解决,如OpenStack的计算、网络和存储层面的隔离策略。此外,文章还探讨了如何通过OpenStack的技术实现多租户共享和隔离,并提到了物理和逻辑隔离的不同方法。
摘要由CSDN通过智能技术生成

本系列会介绍OpenStack 企业私有云的几个需求:

  • 自动扩展(Auto-scaling)支持
  • 多租户和租户隔离 (multi-tenancy and tenancy isolation)
  • 混合云(Hybrid cloud)支持
  • 主流硬件支持、云快速交付 和 SLA 保证
  • 大规模扩展性支持
  • 私有云外围环境支持(包括支持CDN 、商业SDN控制器、防火墙和VPN/专线等)
  • 良好的可使用性(用户和运维 Dashboard 等)
  • 向上扩展性(PaaS 和 SaaS 等支撑)
  • 企业数据中心IT环境支持(包括裸金属/Bare metal、F5 、GPU、跨云网络连通、租户计费、备份等支持)
  • 行业解决方案
  • 独立的服务,包括培训、运维等

1. 基本概念

1.1 用户、租户与多租户

用户、租户与多租户是一个适用于多个行业的普遍性概念。

一个环境/系统的一个使用者即该环境/系统的一个用户。系统允许其用户通过一个登录流程(enrollment process)进入该系统,并获取访问系统及其资源的权限。用户在管理粒度上被分到若干组内,每组成为一个租户(tenant)。一个简单的层级中,一个用户只属于一个租户;但是,复杂情况下,一个租户还可以有自租户。因此,用户可以分为几类,包括管理员用户,租户管理员用户和普通租户用户等。

多租户(multi-tenancy)是指一个建立在共同的底层资源上的环境被被多个租户共同使用。就像一个大楼一样,许多租户共享大楼的基础设施,比如电梯,但是使用墙和门来在租户之间做隔离;在一个公司内部,敏感部门还需要进一步隔离。多租户的含义包括两个方面:(1)共享带来经济性 (2)隔离保证安全性。还是以一个办公楼举例子:
图片描述

1.2 云环境的单租户和多租户>

1.2.1 概念

(1)单租户

单租户(single tenancy)是指一个云环境只被一个租户的用户使用。

(2)多租户

多租户是云所使用的一种基础性技术,它通过共享硬件或软件来实现云的规模性成本和安全性。云使用多租户技术来在多个租户和应用直接安全地共享IT资源。实际上,多租户是在云系统在安全和成本之间的一种妥协(trade-off):底层资源共享的程度越高,云系统的运行成本就越低、资源利用率就越高;然后,这常常会导致隔离性(isolation)的进一步降低以及更高的安全风险(security risk)。

(3)各种类型云的租户性质

根据所服务的用户,云环境可以分为四大类:

# 名称 说明 主要的租户模式
1 私有云 云基础设施只被一个企业的用户使用。它可能由该企业来管理(非托管式),或者由厂家或者第三方来管理(托管式); 它有可能部署在客户数据中心内(私有云)或者第三方数据中心内(专有云)。该企业即该云系统的租户。 单租户
2 公有云 由云提供商拥有,服务大众(public)。 多租户(共享式)
3 混合云 云基础设施包括两个或者多个云(私有、社区或者公有云),各个云保持独立实体,但是它们被使用标准或者私有的技术捆绑在一起, 来实现数据和应用的可移植性。 N/A
4 社区云 云基础设施被几个组织共享,支持一个有共同需求的社团(community),该社团内的企业有共同或者相似的愿景、安全性需求、 策略和规范性需求等。 多租户(共享 + 隔离)

1.2.2 多租户

(1)Gartner 定义的多租户级别:第1到第7级

云服务提供商希望利用多租户带来的资源高度共享模式(架构),提高资源利用率,降低单位资源成本。但是,因为租户间隔离性下降,多租户技术会给租户带来一系列问题。
图片描述

其中,三种应用较广发的典型模式为:

  • 1 - sharing nothing
  • 2 - sharing hardware
  • 6 - sharing everything

(2)公有云厂商的选择:因为有技术保证,因此往往选择较高级别,保证公有云的经济性。
图片描述

(3)企业用户的选择

企业在选择公共云服务或者自建私有云时,到底需要云平台提供什么样的多租户级别,这里没有唯一的答案,适合自己的才是最好的。要认真研究企业的应用系统的特征,包括应用系统的功能和它的重要程度、业务量的变化范围、安全要求等。

  • 数据安全方面,某些类型的租户(比如银行、政府单位等)对数据安全非常关注,这一类用户是很难容忍将自己的数据与其他租户放在一起的,往往选择多租户等级较低的云环境,比如私有云或者专有云,或者要求一个公有云中的物理隔离的硬件等。
  • 对于一般用户,选择共享程度高的云环境,往往会带来更好的经济性,比如公有云。

2. 资源共享带来的问题和租户隔离

2.1 安全性:旁侧攻击

以公有云为例来说明多租户共享带来的安全问题。公有 IaaS 云,比如 AWS EC2 和 Google GCE 等,允许其客户在共享的物理基础设上创建和运行虚机。这种资源共享能够带来规模化成本效益,但是也带来了在一个服务器上一个虚机和故意或者无意的恶意虚机共存的可能。研究表明,当两个虚机共同存在于一个物理服务器上时,存在突破虚拟化逻辑隔离而获取其它虚机/用户的机密信息或者降低其性能的可能性。最著名的也许是旁侧攻击(side-channel attacks),这种攻击可以通过聪明地监控共享资源的使用来突破虚拟化边界而窃取用户数据。

2.2 安全性:性能降低

以 SaaS 应用来说明。通过在多个客户组织(称为租户,tenant)之间共享硬件和软件资源,多租户已经取得了令人信服的降低运营成本的效果。在云计算领域中,通过划分/共用资源、减少管理和运维成本来降低运行成本。最大的成本降低效果是通过应用层面多租户(application-level multi-tenancy)来实现的,然而,这种方式会带来不同租户之间性能如何隔离(一个租户的行为不能太影响别的租户)的问题,以及如何实现不同租户不同SLA。

在 SaaS 层面,多租户是一种应用的架构形式,它使得 SaaS 提供商可以通过搭建在共享的硬件和软件架构上的一个应用来同时地服务不同租户中的用户。这么做,可以通过更好地利用基础架构资源,以及简化维护和管理来显著降低运行费用,比如,对应用做一次升级就可以使得所有用户获得最新版本。

SaaS 多租户可以在不同的层面实现:
(1)利用虚拟化技术在基础架构层实现,比如给不

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值