跳转到主要内容

Neutron插件由Rackspace用于在Openstack中实现大规模。Quark基于分段和它作为所有与Neutron相关事物的事实来源的理念进行开发。

项目描述

=====
quark
=====

注意
=======
Quark当前尚未设计为与`DevStack `_兼容(但按照以下说明可以兼容)。我们之所以提到这一点,是因为如果DevStack进行更改,这些说明可能会失效。请注意,一旦Quark+Neutron+DevStack+Tempest连接起来,Tempest测试就会失败。请关注`这个Quark Github问题 `_以获取更新。

依赖项
===================
`aiclib `_

数据库迁移
===================
`此处 `_

使用DevStack和Neutron进行安装
=================================

- 确保您已有具有sudo权限的用户。如果您需要,请以root用户执行以下操作:

/usr/sbin/adduser stack
echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

- 切换到具有sudo权限的用户:

sudo su - stack # 或者您已有的任何用户(而不是stack)

- 克隆devstack:

git clone https://github.com/openstack-dev/devstack

- 进入devstack文件夹:

cd devstack

- 创建DevStack所需的本地配置文件(localrc已包含在内),将Neutron作为启用服务(注意:此符号说明见`此处 `_):

[[local|localrc]]
DATABASE_PASSWORD=password
ADMIN_PASSWORD=password
SERVICE_PASSWORD=password
SERVICE_TOKEN=password
RABBIT_PASSWORD=password
# 启用日志记录
LOGFILE=/opt/stack/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=/opt/stack/logs
# 先决条件
ENABLED_SERVICES=rabbit,mysql,key
# Horizon(始终使用trunk版本)
ENABLED_SERVICES+=,horizon
HORIZON_REPO=https://github.com/openstack/horizon
HORIZON_BRANCH=master
# Nova
ENABLED_SERVICES+=,n-api,n-crt,n-obj,n-cpu,n-cond,n-sch
IMAGE_URLS+=",https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img"
# Glance
ENABLED_SERVICES+=,g-api,g-reg
# Neutron
ENABLED_SERVICES+=,q-api,q-svc,q-agt,q-dhcp,q-l3,q-lbaas,q-meta,neutron
# Cinder
ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch
# Tempest
ENABLED_SERVICES+=,tempest

- 删除Python的six包:

sudo rm -f /usr/lib/python2.7/dist-packages/six.py /usr/lib/python2.7/dist-packages/six.pyc
- /usr/lib/python2.7/dist-packages/中的旧版本six包会导致崩溃
- Quark服务器

- 安装DevStack:

./stack.sh

- 安装aiclib:

sudo pip install aiclib
- 在这里使用sudo的原因是,如果您不这样做,当它尝试安装到/usr/local/lib/python2.7/dist/packages时,您将收到权限拒绝错误

- 安装Quark:

cd /opt/stack # DevStack安装所有服务所在的文件夹
git clone https://github.com/rackerlabs/quark
cd quark
sudo python setup.py develop
- 在这里使用sudo的原因是,如果您不这样做,当它尝试安装到/usr/local/lib/python2.7/dist/packages时,您将收到权限拒绝错误

- 验证Quark已安装:

pip freeze | grep quark
- 应该看到如下内容:
-e git+http://github.com/rackerlabs/quark@ff5b05943b44a44712b9fc352065a414bb2a6bf9#egg=quark-master

- 现在编辑/etc/neutron/neutron.conf文件,将Quark设置为核心插件:

vim /etc/neutron/neutron.conf
- 查找包含'core_plugin = '的行,并将其替换为:
- 'core_plugin = quark.plugin.Plugin'
#
- 查找包含'service_plugins = '的行,并从中删除
- 'neutron.services.l3_router.l3_router_plugin.L3RouterPlugin,'
- 服务插件列表

- 通过进入screen会话并转到q-svc窗口按ctrl-C停止Neutron:

screen -r # 或者进入devstack克隆并然后输入./rejoin-stack.sh
- 按ctrl+6转到q-svc窗口
ctrl+C

- 返回screen会话并重新启动neutron(q-svc窗口):

screen -r stack # 或者进入克隆devstack的文件夹然后输入./rejoin-stack.sh
- 如果screen命令返回'Cannot open your terminal /dev/pts/0',请执行'sudo chmod o+rwx /dev/pts/0'
- 转到q-svc窗口(ctrl+a, 7目前是它)
- 前一个命令(devstack用于启动neutron)应该在历史记录中,按上箭头键查看

- 您不应该收到任何错误。要验证Quark已启动,可以在q-svc屏幕窗口向上滚动(ctrl+a, esc, page-up)并查找以下行:

DEBUG neutron.service [-] core_plugin = quark.plugin.Plugin
...
调试 neutron.service [-] QUARK.default_ipam_strategy=ANY
调试 neutron.service [-] QUARK.default_net_strategy={}
调试 neutron.service [-] QUARK.default_network_type=BASE
调试 neutron.service [-] QUARK.ipam_driver=quark.ipam.QuarkIpam
调试 neutron.service [-] QUARK.ipam_reuse_after=7200
调试 neutron.service [-] QUARK.net_driver=quark.drivers.base.BaseDriver
调试 neutron.service [-] QUARK.strategy_driver=quark.network_strategy.JSONStrategy

注意事项
=======
- 您必须至少添加一个 mac_address_range 才能创建端口(使用 `this <https://gist.github.com/jmeridth/8561910>`_ 脚本完成,更改主机 IP 和管理员密码)



项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

quark-1.0.0.tar.gz (277.2 kB 查看哈希)

上传时间

构建分布

quark-1.0.0-py2-none-any.whl (353.7 kB 查看哈希)

上传时间 Python 2

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面