安装指令取决于发行版本,更具体来讲,取决于您选择的包管理实用程序。在许多情况下,必须声明存储库。所以,举例而言,如果您使用的是 Zypper,那么您要用 zypper ar 向 libzypp 公开:
# zypper ar -f http://download.opensuse.org/repositories/Cloud:/OpenStack:/Grizzly/SLE_11_SP3/Cloud:OpenStack:Grizzly.repo
出于演示之目的,以下是 Ubuntu、Red Hat (Red Had Enterprise Linux、CentOS、Fedora)和 openSUSE 的主要命令:
Ubuntu:安装 neutron-server 和访问该 API 的客户端: $sudo apt-get install neutron-server python-neutronclient
安装插件:
$sudo apt-get install neutron-plugin-
例如:
$sudo apt-get install neutron-plugin-openvswitch-agent Red Hat:类似于 Ubuntu,您必须同时安装 Neutron 服务器和插件 — 例如: $sudo yum install openstack-neutron$sudo yum install openstack-neutron-openvswitch openSUSE:使用以下命令: $sudo zypper install openstack-neutron$sudo zypper install openstack-neutron-openvswitch-agent
配置
大部分插件都需要一个数据库。OpenStack Networking 的 Fedora 包包含服务器设置实用程序脚本,负责数据库的完整安装和配置:
$sudo neutron-server-setup --plugin openvswitch
但也可以手动配置这些数据库。例如,在 Ubuntu 上,您可使用以下命令安装数据库:
$sudo apt-get install mysql-server python-mysqldb python-sqlalchemy
如果已经为其他 OpenStack 服务安装了一个数据库,那么您只需要创建一个 Neutron 数据库:
$ mysql -u
必须在插件的配置文件中指定该数据库。为此,在 /etc/neutron/plugins/plugin-name 中找到插件配置文件(例如 /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini),然后设置连接字符串:
sql_connection = mysql://
使用场景
一个典型的 OpenStack Networking 设置可能很复杂,包含多达 4 个不同的物理网络。使用一个管理网络在 OpenStack 组件之间执行内部通信。一个数据网络处理实例之间的数据通信。API 网络向租户公开了所有 OpenStack API。此外,通常需要一个外部网络来授予访问 VM 的 Internet 的权限。
在这些物理网络之上,可通过许多方式配置租户需要的虚拟网络。最简单的场景是单个平面网络。也可以有多个平面网络、每个租户的私有网络,并提供商和每租户路由器的组合来管理网络之间的流量。
可以开发一个不包含任何特定于网络的功能的、可弹性扩展的工作负载管理系统。当然,计算节点需要在彼此之间建立连接,并能访问外部世界,但它也可以利用现
有的网络基础架构来分配 IP
地址和在节点之间传输数据。在多租户环境中,这样一种方法的最大问题是,已有的网络管理系统无法高效、安全地在用户之间隔离流量 —
这同时也是构建公共和私有云的组织面临的一个巨大问题。
OpenStack 解决此问题的一种方式是,构建一个详尽的网络管理堆栈,用它来处理所有网络相关请求。此方法面临的挑战是,每个实现都可能拥有一组独特的需求,包括与其他各种各样的工具和软件的集成。
OpenStack 因此采取了创建抽象层的方法,这个抽象层被称为 OpenStack
Networking,可容纳大量处理与其他网络服务的集成的插件。它为云租户提供了一个应用编程接口
(API),租户可使用它配置灵活的策略和构建复杂的网络拓扑结构 — 例如用它来支持多级 Web 应用程序。
OpenStack Networking 支持使用第三方编写插件来引入高级网络功能,比如 L2-in-L3 隧道和端到端服务质量支持。它们还可以创建网络服务,比如负载平衡、虚拟专用网或插入 OpenStack 租户网络中的防火墙。
在过去,OpenStack 的网络组件位于 OpenStack Nova (Compute) 项目中。其中大部分组件被拆分为一个包含
Folsom 版的单独项目。这个新项目最初称为 Quantum,但后来重命名为 Neutron,以避免与公司 Quantum
Corporation 的任何商标混淆。所以,如果看到 OpenStack Networking 参考资料中同时出现了名称
Nova、Quantum 和 Neutron,不要感到奇怪。