Openstack关于Regions和Availability Zones

2023-05-16

声明:

本博客欢迎转发,但请保留原作者信息!内容系本人学习、研究和总结,如有雷同,实属荣幸!

原文地址:http://blog.csdn.net/gtt116/



在AWS中有Region和Availability Zones的概念,并且在openstack中也实现了两者,只是不太容易看出来。

此文主要介绍他们的概念和关系,以及在openstack中的实现。

如果没有特别强调,下文中Availability Zones简称az。


概述

===

    一般情况下region表示地理上隔离的两个区域,例如一个region放在美国,另外一个放在中国。换句话说一个region之间是相对独立的,一个region的死活和另外一个region没有任何关系。az是在region范围内的再次切分,只是工程上的独立,例如可以把一个机架上的机器划分在一个az中。划分az是为了提高容灾性和提供廉价的隔离服务。
    选择不同的region主要考虑哪个region靠近你的用户群体,如果用户主要在美国,那么自然选择离美国近的region。选择不同的az,是为了防止在所有instance一起挂掉。
    下图是两者之间的关系图


Region 和Availability Zones

======

 Region是最高等级的隔离,因为region是地理位置的隔离。例如一个美国,一个中国,那么当你的虚拟机分别跑在这两个region上,那么当美国不存在的时候,你在中国的虚拟机还在快乐的运行着。

而且如果目标用户多数在中国,那么将虚拟机跑在中国也是很好的选择。

az是低一级的隔离。例如我们可以在中国的datacenter划分为几个az,然后用户可以选择将这些虚拟机跑在同一个az中,或者不同az中。前者可以提供更快的网络,后者提供更好的容灾性。


Openstack实现

============

在openstack中这两个概念都是存在的。一下将会介绍openstack是如何实现这两个概念的。



region

---------

因为Region是地理位置的隔离,那么不同的region意味着不同的endpoint,也就是说(nova-api,glance……)这些服务的ip地址是不同的。这些东西就体现在keystone的catalog中。

以下是keystone的catalog配置文件:

catalog.RegionOne.identity.publicURL = http://keystone.cn:$(public_port)s/v2.0
catalog.RegionOne.compute.publicURL = http://nova.cn:$(compute_port)s/v1.1/$(tenant_id)s
catalog.RegionOne.volume.publicURL = http://cinder.cn:8776/v1/$(tenant_id)s
catalog.RegionOne.ec2.publicURL = http://nova.cn:8773/services/Cloud
catalog.RegionOne.image.publicURL = http://glance.cn:9292/v1

注意到catalog其实是分级的  <catalog>.<region>.<service>.<endpoint>,第二级的region就是上文提到的region。在这里我们可以设置不同的region和不同的service的endpoint。

例如我们在美国加了一个datacenter,那么我们修改配置文件为:

catalog.RegionOne.identity.publicURL = http://keystone.cn:$(public_port)s/v2.0
catalog.RegionOne.compute.publicURL = http://nova.cn:$(compute_port)s/v1.1/$(tenant_id)s
catalog.RegionOne.volume.publicURL = http://cinder.cn:8776/v1/$(tenant_id)s
catalog.RegionOne.ec2.publicURL = http://nova.cn:8773/services/Cloud
catalog.RegionOne.image.publicURL = http://glance.cn:9292/v1

catalog.RegionUS.identity.publicURL = http://keystone.us:$(public_port)s/v2.0
catalog.RegionUS.compute.publicURL = http://nova.us:$(compute_port)s/v1.1/$(tenant_id)s
catalog.RegionUS.volume.publicURL = http://cinder.us:8776/v1/$(tenant_id)s
catalog.RegionUS.ec2.publicURL = http://nova.us:8773/services/Cloud
catalog.RegionUS.image.publicURL = http://glance.us:9292/v1

这样以后我们就可以通过选择不同的region来访问不同的endpoint了。

ps:现在horizon默认只提取keystone中catalog的regionOne中的endpoint,所以即使在keystone配置了多个region,在horizon也是体现不出来的。


Availability Zones

-----------------------

az在openstack中其实是nova-scheduler来实现的,当新建虚拟机,调度器将会根据nova-compute设置的az来调度,例如在新建虚拟机的时候,用户设置了希望将虚拟机放在az-1中,那么调度器将会选择属于这个az的nova-compute来调度。如下图所示

    



思考

=====

其实Region和Az的概念主要是隔离的等级问题,我们完全可以将一个datacenter根据机房划分region,然后根据机架划分az。

这个就是仁者见仁的问题,完全可以根据各自的需要采取不同的部署方法。



reference

========

http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html

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

Openstack关于Regions和Availability Zones 的相关文章

  • 6G推进组发布《6G总体愿景与潜在关键技术》白皮书!(附PPT及白皮书下载)

    就在昨日 6月6日 我国工信部IMT 2030 6G 推进组正式发布了 6G总体愿景与潜在关键技术 白皮书 白皮书梳理出6G的总体愿景和八大业务应用场景及相应的指标需求 提出了十大潜在关键技术 并阐述了对6G发展中面临的若干关键问题的观点
  • Pecemaker+Corosync+Haproxy高可用Openstack集群实战

    一 DRBD简介 DRBD的全称为 Distributed Replicated Block Device DRBD 分布式块设备复制 DRBD是由内核模块和相关脚本而构成 用以构建高可用性的集群 其实现方式是通过网络来镜像整个设备 它允许
  • 云平台学习笔记(三)-MobaXterm使用

    内网 外网的IP都可以 这个界面方面可视化管理
  • ceph安装记录总结

    1 环境准备 准备三台虚机 每个虚机配合三块数据盘 2块网卡 一个网卡设置外网 一个网卡设置成内网 配置文件设置 根据实际情况配置每一个节点 编辑 letc sysconfig network scripts ifcfg ethO 文件 外
  • openvswitch--OpenFlow 流表设置

    流规则组成 每条流规则由一系列字段组成 分为基本字段 条件字段和动作字段三部分 基本字段包括生效时间duration sec 所属表项table id 优先级priority 处理的数据包数n packets 空闲超时时间idle time
  • openstack排错

    创建云主机失败 neutron agent list 计算节点服务没起来 实际是起来的 观察时间有问题 同步时间 root compute ntpdate controller 再看控制节点 起来了 也能创建云主机了
  • libvirt介绍和使用

    libvirt介绍和使用 导读 why what libvirt具体介绍 API 剖析 driver 剖析 如何使用libvirt why what 实现一朵可运行 可运维的云 需要完整的实现三层 VIM层 VNFM层 NFVO层 其中实现
  • Python运维开发:基于openstack RestfulAPI上传镜像和创建云主机

    基础环境 python 脚本文件头建议加入 encoding utf 8 避免编码错误 测试脚本代码用python3命令执行与测试 在linux系统中安装Python3 并安装request等依赖包 配置 有一台搭建好的open stack
  • openstack开发实践(一):devstack搭建all-in-one的openstack开发环境

    Devstack简介 devstack是面向开发者的一个openstack部署工具 用户可以指定不同的版本分支进行安装 devstack借助于Shell脚本实现openstack自动化部署 devstack源码中的stack sh即为安装脚
  • 基于openstack的免费云计算平台使用方法总结(IBM power架构 、支持docker)

    声明 此文档只做学习交流使用 请勿用作其他商业用途 author 朝阳 tony E mail linzhaolover 163 com Create Date 2015 3 6 13 55 38 Friday Last Change 20
  • IPVS direct routing on top of openstack (by quqi99)

    作者 张华 发表于 2023 07 12 版权声明 可以任意转载 转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 IPVS是Linux内核态的一个L4 LB KTCPVS Kernel TCP Virtual Server则
  • openstack用户管理笔记

    1 创建项目 1 1 创建项目 需要确认集群环境是否初始化完毕 实验初始化需要几分钟时间 访问控制节点IP dashboard 如果正常弹出登录页面即初始化完毕 假设控制节点IP为172 20 6 22 则访问地址为 172 20 6 22
  • cehp 维护(二)常见告警维护

    零 修订记录 序号 修订时间 修订内容 1 2021 11 18 新增 一 摘要 笨猪主要介绍ceph常见告警及维护方法或过程中遇到的问题 二 环境信息 2 1 ceph版本 cephadmin proceph01 ceph v ceph
  • OpenStack--创建虚拟机

    启动虚拟机之前需要先做一些前期准备 比如网络和 IP 地址分配 虚拟机 类型创建等等 具体如下 1 网络规划及 IP 划分 官网安装文档 https docs openstack org ocata zh CN install guide
  • 如何在 devstack 中管理用户/密码?

    我已经安装了devstack到一个干净的 Ubuntu 机器 我可以访问 OpenStack 仪表板 http localhost auth login 但是 我不知道如何管理用户或我的初始凭据是什么 此信息保存在哪里 该信息保存在 Key
  • 如何设置docker容器的ip?

    有人可以告诉我如何将容器的 ip 设置为特定的 ip 吗 我不想将网桥设置为 IP 集 我在网络中得到的所有结果都是将 ips 范围设置为 docker 桥 您可以使用主机的现有 IP 如下所示 docker run p 127 0 0 1
  • Openstack.Net SDK无法访问带区域的服务

    使用我们自己的硬件 我们安装了带有所有组件的普通 openstack 但是由于区域问题 我在访问除身份之外的服务时遇到问题 使用的代码如下 使用我们创建的管理员帐户和管理员租户进行调用 public static void TestAcce
  • OpenShift :: POD 不会从部署配置继承“名称标签”

    我从 git repo 基于 Docker 的应用程序 创建了一个构建配置 oc new build
  • 云平台- sudo:无法解析主机[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在 Amazon EC2 和 openstack 上使用 Linux 作为基于云的服务器 当尝试运行时 sudo chhown ubun
  • 服务无法启动虚拟机“DockerDesktopVM”,因为 Hyper-V 组件之一未运行

    我有 Window Server 2016 2019 虚拟机 Openstack 至此Hyper V安装成功 但无法启动 MobyLinuxVM ExposeVirtualizationExtensions 已通过 PowerShell 在

随机推荐

  • Swift 四种实现单例的方式

    单例模式 单例模式是设计模式中最简单的一种 xff0c 甚至有些模式大师都不称其为模式 xff0c 称其为一种实现技巧 xff0c 因为设计模式讲究对象之间的关系的抽象 xff0c 而单例模式只有自己一个对象 当你只需要一个实例的时候需要使
  • python之字符串切片为列表

    函数名说明A replace old new count 将字符串A里的old替换为new xff0c 替换次数为counta join A 将字符串序列A之间插入字符aA split sep xff0c count 将字符串A切片输出为列
  • 用python实现最简单简单的计算器

    直接上代码 xff1a 密码是123 过程 体验 收获及自我评价 xff0c 本人在活动的具体工作可以输入1000字 import os 让解释器停住 xff0c 引用os模块 print 34 欢迎使用计算程序 34 print 34 请
  • Android 一键分享功能

    之前在做项目时遇到这么个需求 xff0c 就是用户点击Menu或者一个按钮可以把文字分享到各大微博例如新浪微博 腾讯 人人 开心 校内等 现在我给大家演示一下 xff08 一 xff09 先建一个工程文件ShareDemo xff08 二
  • android listview单击事件

    今天我们来学习下listview 单击事件 xff0c 这在开发中是经常用的组件之一 1 新建一个项目 xff0c 名为ListViewDemo 2 布置布局文件main xml lt xml version 61 34 1 0 34 en
  • android 焦点事件

    今天介绍下android中的焦点事件 xff0c 之前在项目有用到过 这块不是很难 xff0c 大家跟着过一遍吧 xff0c 用到的时候直接把我下面这段代码拷贝过去就ok了 1 建一个工程 xff0c 名为TestFocus 2 在布局文件
  • android 绘图、自定义组件

    我们在开发当中很多时候都需要自定义组件 xff0c 通过自定义组件 xff0c 可以随心所欲定制酷炫的效果 下面将演示自定义绘图组件 我们要绘制一个红色的线条 1 建立工程文件 xff0c 名为TouchDemo 2 布局文件 lt xml
  • SVN常用命令详解

    命令的使用 1 检出 svn co http 路径 目录或文件的全路径 本地目录全路径 username 用户名 password 密码svn co svn 路径 目录或文件的全路径 本地目录全路径 username用户名 password
  • androidstudio 拆包时设置dex方法个数

    前言 Android应用程序 xff0c 最终发布成一个apk xff0c 安装到手机上 apk文件随便用一个解压缩文件打开 xff0c 可以看到里面有一个classes dex文件 xff0c 这就是之前工程中所有的代码 xff0c 以及
  • hash算法原理详解

    散列表 它是基于快速存取的角度设计的 xff0c 也是一种典型的 空间换时间 的做法 顾名思义 xff0c 该数据结构可以理解为一个线性表 xff0c 但是其中的元素不是紧密排列的 xff0c 而是可能存在空隙 散列表 xff08 Hash
  • Android Studio 打包时 Signature Version 选择 V1 V2 说明

    问题描述 v1和v2 Android 7 0中引入了APK Signature Scheme v2 xff0c v1是jar Signature来自JDK V1 xff1a 应该是通过ZIP条目进行验证 xff0c 这样APK 签署后可进行
  • Android 多Dex分包机制

    问题引入 随着项目工程越来越庞大 xff0c 代码的方法数不断增长到一定程度 xff0c 就出现Android 低版本系统应用无法安装的情况 那么这是哪里出错了 xff1f Android系统对安装包有哪些限制 xff1f 前一阵子 xff
  • 安装openstack时碰到的错误

    文章目录 目录安装keystone identity时遇到的错误信息glance验证操作错误信息计算节点安装openstack nova compute找不到包openstack nova compute安装后服务起不来openstack
  • Linux什么时候能代替Windows?现在有什么困难?2022新一年Linux目标

    我举出一个身边例子 xff1a 昨天 xff0c 我的一个亲戚的电脑坏了 xff0c 是一个七八年前配置笔记本电脑 xff0c 找我修 xff0c 我本来想安装Windows10 xff0c 但是想到现在我电脑的主系统都是Linux了 xf
  • apt-get update error解决方法

    apt get update error Unable to lock the administration directory var lib dpkg is another proc root 64 ony an opt devstac
  • PVE安装win10并开启远程桌面

    接上一篇 一 win10安装镜像最新版下载 下载地址 xff1a https next itellyou cn 现在的win10最新版时22h2 文件名为zh cn windows 10 business editions version
  • Win10相机打开后显示灰色的原因(仅适用于联想笔记本)

    症状描述 xff1a 打开相机 xff0c 显示灰色 xff0c 中间有一个相机带斜杠的图标 我先说解决方法 xff0c 再吐槽 xff1a 如果网上的方法都不行 xff0c 就检查自己的笔记本是否安装了联想电脑管家 xff0c 如果有 x
  • Visual Studio 2015 tools for Unity 安装使用

    P1 xff1a 安装 微软好像把这个工具整合在Visual studio 2015一起了 xff0c 没找到单独的链接 CSDN链接 xff1a http download csdn net detail devilsomezeng 95
  • VMware部署Debian系统

    前面在手机和平板上安装了UserLAnd软件 xff0c 初步实现了随身携带Linux系统的小目标 但是前面也提到了目前存在一个小问题 xff0c 那就是没有办法远程登录 xff0c 简单调整了一下还没解决 xff0c 看来还是要简单学习一
  • Openstack关于Regions和Availability Zones

    声明 xff1a 本博客欢迎转发 xff0c 但请保留原作者信息 内容系本人学习 研究和总结 xff0c 如有雷同 xff0c 实属荣幸 xff01 原文地址 xff1a http blog csdn net gtt116 在AWS中有Re