1. 安装
(1)Install Networking services on a dedicated network node
# apt-get install neutron-server neutron-dhcp-agent neutron-plugin-openvswitch-agent
不需要L3Agent
删除sqlite
rm -f /var/lib/neutron/neutron.sqlite

编辑/etc/sysctl.conf, Enable packet forwarding and disable packet destination filtering
net.ipv4.ip_forward=1
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0

重新加载
# sysctl -p
# service networking restart
如果不行,则
# /etc/init.d/networking restart
2. 创建db
create database neutron;
grant all privileges on neutron.* to 'neutron'@'%' identified by 'openstack';
grant all privileges on neutron.* to 'neutron'@'localhost' identified by 'openstack';

3. 创建user, role
# keystone user-create --name=neutron --pass=openstack
# keystone user-role-add --user=neutron --tenant=service --role=admin

4. 配置:
(1)配置/etc/neutron/neutron.conf :
[DEFAULT]
core_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
auth_strategy=keystone
control_exchange = neutron
rabbit_host = controller
rabbit_userid = guest
rabbit_password = openstack
notification_driver = neutron.openstack.common.notifier.rabbit_notifier

[database]
connection = mysql://neutron:openstack@controller/neutron

[keystone_authtoken]
auth_uri = http://controller:35357
auth_host = controller
auth_port = 35357
auth_protocol = http
admin_tenant_name = service
admin_user = neutron
admin_password = openstack

(2)配置/etc/neutron/api-paste.ini:
[filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
auth_uri = http://controller:35357
auth_host = controller
auth_port = 35357
admin_tenant_name = service
admin_user = neutron
admin_password = openstack

警告:Warning
keystoneclient.middleware.auth_token: You must configure auth_uri to point to the public identity endpoint. Otherwise, clients might not be able to authenticate against an admin endpoint.

(3)配置/etc/neutron/dhcp_agent.ini
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq

(4)配置 /etc/nova/nova.conf, 回头关联nova
[DEFAULT]
neutron_metadata_proxy_shared_secret = openstack
service_neutron_metadata_proxy = true

network_api_class=nova.network.neutronv2.api.API

neutron_admin_username=neutron
neutron_admin_password=openstack
neutron_admin_auth_url=http://controller:35357/v2.0/
neutron_auth_strategy=keystone
neutron_admin_tenant_name=service
neutron_url=http://controller:9696/

需要重启:
# service nova-api restart

(5)配置/etc/neutron/metadata_agent.ini
[DEFAULT]
auth_url = http://controller:35357/v2.0
auth_region = regionOne
admin_tenant_name = service
admin_user = neutron
admin_password = openstack
nova_metadata_ip = controller
metadata_proxy_shared_secret = openstack

5. 注册service, endpoint:
# keystone service-create \
--name=neutron --type=network \
--description="OpenStack Networking Service"

# keystone endpoint-create \
--service-id 455075d2fb9540ac864c345109c291cf \
--publicurl http://controller:9696 \
--adminurl http://controller:9696 \
--internalurl http://controller:9696

-------------------------------------------------------------------
>在Network Node安装Neutron
0. 安装OVS
知道3种interface
MGMI_INTERFACE: 管理接口, 使用eth1, 一般要关闭
DATA_INTERFACE: 数据接口, 使用eth1
EXTERNAL_INTERFACE: 外部接口, 使用eth0, 如果有多ISP,都绑定于该interface.
(1) 安装
# apt-get install neutron-plugin-openvswitch-agent
# ovs-vsctl add-br br-int
br-int是OVS连接VM必需的, 至于br-ex根据网络拓扑需要, 在flat网络则不用.

(2) 配置 /etc/neutron/dhcp_agent.ini
[DEFAULT]
enable_isolated_metadata = True
interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
use_namespaces = False
其中use_namespaces根据需要设定,如果是flat应该没有必要吧?
需要重启
# service neutron-dhcp-agent restart

(3)配置/etc/neutron/neutron.conf, 设置OVS
core_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2

(4)配置/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini, 设置firewall_driver
[securitygroup]
# Firewall driver for realizing neutron security group function.
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

[ovs]
tenant_network_type = none
enable_tunneling = False
network_vlan_ranges = physnet0, physnet1
bridge_mappings = physnet0:br-eth0, physnet1:br-eth1
则需要创建

(5)重启
# service openvswitch-switch restart(只在安装后重启一次即可,不能重启)
# service neutron-plugin-openvswitch-agent restart
-------------------------------------------------------------------

8. 重启neutron服务.
service neutron-server restart
service neutron-dhcp-agent restart
service neutron-metadata-agent restart
service neutron-plugin-openvswitch-agent restart

======================================
配置网络:

(1)执行下述ovs命令
# ovs-vsctl add-br br-eth0
# ovs-vsctl add-port br-eth0 eth0
# ovs-vsctl add-br br-eth1
# ovs-vsctl add-port br-eth1 eth1

(2)配置interfaces
openstack@openstack:~$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual
        up ifconfig eth0 0.0.0.0 promisc up
        down ifconfig eth0 down

auto br-eth0
iface br-eth0 inet static
        address 192.168.2.3
        netmask 255.255.255.0
        gateway 192.168.2.2
        dns-nameservers 192.168.2.2

auto eth1
iface eth1 inet manual
        up ifconfig eth1 0.0.0.0 promisc up
        down ifconfig eth1 down

auto br-eth1
iface br-eth1 inet static
        address 10.0.0.3
        netmastk 255.255.255.0

一旦声明 bridge_ports eth0,就不能再声明iface eth0, 否则Linux启动会报网络错误.
-----------------------------------------------
关闭gro
ethtool -k eth0
ethtool -K eth0 gro off
ethtool -k eth1
ethtool -K eth1 gro off
------------------------------------------------

OpenStack:安装Neutron与provider network的更多相关文章

  1. openstack 安装neutron网络服务安装 报错:Unknown operation 'enabled'

     注:这个脚本文件有一个地方是错误的,最后一行需要修改一下 # vim /usr/local/bin/iass-install-neutron-controller-gre.sh # 改systemc ...

  2. OpenStack 安装:neutron服务

    在上一篇中介绍了Nova的安装配置,这一篇介绍neutron 首先,创建neutron用户并设置密码为neutron [root@linux-node1 ~]# openstack user crea ...

  3. CentOS7安装OpenStack(Rocky版)-06.安装Neutron网络服务(控制节点)

    上一章介绍了独立的nova计算节点的安装方法,本章分享openstack的网络服务neutron的安装配制方法 ------------------- 完美的分割线 ----------------- ...

  4. OpenStack Train版-10.安装neutron网络服务(网络节点:可选)

    可选:安装neutron网络服务节点(neutron01网络节点192.168.0.30)网络配置按照官网文档的租户自助网络 配置系统参数 echo 'net.ipv4.ip_forward = 1' ...

  5. OpenStack Train版-9.安装neutron网络服务(计算节点)

    在计算节点安装neutron网络服务(computel01计算节点192.168.0.20)安装组件 yum install openstack-neutron-linuxbridge ebtable ...

  6. OpenStack Train版-8.安装neutron网络服务(控制节点)

    安装neutron网络服务(controller控制节点192.168.0.10) 创建neutron数据库 mysql -uroot CREATE DATABASE neutron; GRANT A ...

  7. openstack里面的Provider network 和 Tenant network 的区别

    openstack里面的Provider network 和 Tenant network 的区别 openstack里面的网络相对复杂.经常有人对几个网络概念搞混淆,这里基本说明下 Openstac ...

  8. openstack安装newton版本neutron服务部署(四)

    一.管理节点部署服务: 1.安装neutron: [root@linux-node1 ~]# yum install openstack-neutron openstack-neutron-ml2 o ...

  9. openstack安装文档

    #########################################openstack m版本部署安装################################## 控制节点.网络 ...

随机推荐

  1. USACO Section 3.3 骑马修栅栏 Riding the Fences

    题目背景 Farmer John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. 题目描述 John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏.你必须编一个 ...

  2. OpenJudge 核电站

    描述 一个核电站有N个放核物质的坑,坑排列在一条直线上.如果连续M个坑中放入核物质,则会发生爆炸,于是,在某些坑中可能不放核物质. 任务:对于给定的N和M,求不发生爆炸的放置核物质的方案总数 输入 只 ...

  3. JS产生四位随机数的方法

    <script>var charactors="1234567890"; var value='',i; for(j=1;j<=4;j++){ i = parse ...

  4. ◆ 火狐浏览器去除JS方法:

    ◆ 火狐浏览器去除JS方法: 在火狐地址栏输入about:config   回车 在搜索地址栏中输入javascript.enabled 右键 当一行的中的,值由false变成trun,就OK了 . 

  5. PHP生成静态页面的方法

          在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板.缓存 等实现页面静态化,今天就以PHP实例教程形 ...

  6. Longest Common Prefix [LeetCode 14]

    1- 问题描述 Write a function to find the longest common prefix string amongst an array of strings. 2- 思路 ...

  7. Visitor

    #include <iostream> #include <vector> using namespace std; #define DESTROY_POINTER(ptr) ...

  8. HTML5应用之时钟

    利用HTML5的Canvas API可以完成我们以前意想不到的动画效果,以前我们想在网页上放置一个时钟,需要先用flash工具制作一个钟表,并写上复杂的JavaScript代码,然后载入到页面中.而H ...

  9. winform的datagridview单元格输入限制和右键单击datagridview单元格焦点跟着改变

    在datagridview的EditingControlShowing事件里面添加代码: if (this.dgv_pch.Columns[dgv_pch.CurrentCell.ColumnInde ...

  10. 单列模式(data与business交互)

    public class CommentsBusiness //Business { #region 单列模式 private static CommentBusiness instance; pri ...