• OpenStack两种部署节点对比


    1、控制节点

    网络设置

    /etc/network/interfaces

    添加源

    安装mysql,rabbitmq

    apt-get install mysql-server python-mysqldb

    mysql-server:MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

    python-mysqldb:Python(KK 英语发音:/ˈpaɪθən/), 是一种面向对象、直译式计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。常见的一种应用情形是,使用python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,速度要求非常高,就可以用C++重写。

    apt-get install rabbitmq-server

    RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在。

    apt-get install ntp

    Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。

    apt-get install keystone

    keystone这是提供身份认证和授权的组件。任何系统,身份认证和授权,其实都比较复杂。尤其Openstack 那么庞大的项目,每个组件都需要使用统一认证和授权。

    apt-get install glance

    glance:这是镜像管理。功能其实相对比较简单。不过Glance后端的存储的支持,其实一直到Folsom的版本,Glance对swift的支持,才算是比较完善。

    目前Glance的镜像存储,支持本地存储,NFS,swift,sheepdog和Ceph,基本是够用了。

    目前Glance的最大需求就是多个数据中心的镜像管理,如何复制,不过这个功能已经基本实现。还有就是租户私有的image管理,这些目前功能都已经实现。

    apt-get install cinder-api cinder-common cinder-scheduler cinder-volume python-cinderclient iscsitarget open-iscsi iscsitarget-dkms
    • cinder-api: 用于将api服务部署在该节点上。

    •  cinder-common: 

    • cinder-scheduler:故名思议,scheduler负责调度cinder请求调度,其核心部分就是scheduler_driver, 作为scheduler manager的driver,负责具体的调度处理,grizzly版本的cinder-scheduler部分提供了三个scheduler driver分别是:

      ChanceScheduler: 随机选取cinder-service 创建cinder volume
      SimpleScheduler: 根据availability_zone 和 cinder-volume service的capacity进行选择
      FilterScheduler: 可以选择具体的filter规则,满足filter规则的cinder-volume service将会通过筛选,创建cinder volume

    • cinder-volume:挂载

    • python-cinderclient:

    • initiator:target端即磁盘阵列或其他装有磁盘的主机。通过iscsitarget工具将磁盘空间映射到网络上,initiator端就可以寻找发现并使用该磁盘。 

    • open-iscsi: iSCSI(Internet SCSI)是IETF制订的一项标准,用于将SCSI数据块映射成以太网数据包。简洁的说法可以认为是:iSCSI协议将SCSI数据块打包成TCP/IP包,在现有网络内传输。

           iscsitarget-dkms:

    apt-get install quantum-server quantum-plugin-openvswitch

    quantum:

    quantum-plugin-openvswitch: 

    apt-get install nova-api nova-cert novnc nova-conductor nova-consoleauth nova-scheduler nova-novncproxy

    nova-cert:证书管理服务,用于兼容AWS

    novnc:连接远程的工具

    nova-conductor:所有的 nova 服务使用一个 AMQP 来相互沟通。nova-compute 需要经常访问DB。所以出来了 nova-conductor – Cloud controller fabric

    nova-conductor 是一个在 nova-compute 上的一个层次,避免数据库被暴露,最hao把 nova-conductor 和 nova-compute 不要安装到一个节点上。

    nova-conductor 可以像 nova-api、nova-scheduler 一样能横向扩展,可以运行在多个机器上运行多个 nova-conductor 来达到扩展的目的.

    以后会从 nova-compute 上移植越来越多的功能到 nova-conductor 上,比如 迁移、resize.

    nova-consoleauth:console验证

    nova-scheduler:调度:启动实例由它来

    nova-novncproxy:

    apt-get install openstack-dashboard memcached

    Horizon:严格意义来说,Horizon不会为Openstack 增加一个功能,他更多的是一个演示,demo。不过对于很多用户来说,了解Openstack基本都是从Horizon,dashboard开始。从这个角度来看,他在Openstack各个项目里,显得非常重要。

    2、网络节点

    网络设置

    # cat /etc/network/interfaces

    添加源

    设置 ntp

    apt-get install ntp

    Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。

    安装 openVSwitch

    apt-get install openvswitch-switch openvswitch-brcompat

    openvswitch-switch :
    openvswitch-brcompat:

    安装 Quantum 

    apt-get install quantum-plugin-openvswitch-agent quantum-dhcp-agent quantum-l3-agent

    quantum-plugin-openvswitch-agent:这是quantum利用ovs的一个插件

    quantum-dhcp-agent:

    quantum-l3-agent:

    3、计算节点

    网络设置

    添加源

    安装 openVSwitch

    apt-get install openvswitch-switch openvswitch-brcompat

    安装 Quantum 

    apt-get install quantum-plugin-openvswitch-agent

    安装nova

    apt-get install nova-compute

    Nova-compute服务依赖于虚拟驱动来管理虚拟机,缺省地,这个驱动是libvirt,它用于驱动KVM。然而,libvirt也可以驱动其它的hypervisor技术,如果配置了用Xen 云台或XenServer,为了驱动基于Xen的虚拟机,也有一个独立的Xen虚拟机驱动。

    Open-iscsi用于挂载远程块设备,也象已知的卷一样。Open-iscsi暴露了这些远程设备,就象本地设备文件被附加到实例。

  • 相关阅读:
    PHP javascript cookie
    angular.js初探
    熟悉陌生框架或代码, 产品设计小结
    question2answer论坛框架分析及web开发思考
    一个很好用的系统管理的命令lsof(转载)
    Linux nc命令用法收集
    Linux IO实时监控iostat命令详解(转载)
    AIX中查找端口号和进程
    bash之局部变量与子shell(转载)
    Linux下产生随机密码10方法
  • 原文地址:https://www.cnblogs.com/xueluo/p/3512670.html
Copyright © 2020-2023  润新知