中文
注册

安装Neutron

Neutron为其他服务组件提供网络连接功能,如Nova计算服务组件;同时提供API给用户使用;支持多个网络供应商的设备和技术。请在控制节点和计算节点安装Neutron。在控制节点和计算节点场景安装Neutron的操作有所不同,操作过程中请仔细分辨。

在控制节点创建Neutron数据库

  1. 创建Neutron数据库。
    1. 以root用户登录数据库。
      mysql -u root -p 
    2. 在数据库中,创建Neutron数据库并授权。
      CREATE DATABASE neutron; 
      GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'NEUTRON_DBPASS'; 
      GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'NEUTRON_DBPASS'; 

      将NEUTRON_DBPASS替换为Neutron数据库用户的密码,请根据实际情况进行设置。密码中请勿包含字符“#@$”,支持特殊字符“&=- _ . + ! * ()”

    3. 退出数据库。
      exit
  2. 创建Neutron服务凭据。
    source ~/.admin-openrc 
    openstack user create --domain default --password-prompt neutron 
    openstack role add --project service --user neutron admin 
    openstack service create --name neutron --description "OpenStack Networking" network

    密码请勿包含字符“#@$”,支持特殊字符“&=- _ . + ! * ()”

  3. 创建Neutron API端点。
    openstack endpoint create --region RegionOne network public http://controller:9696 
    openstack endpoint create --region RegionOne network internal http://controller:9696 
    openstack endpoint create --region RegionOne network admin http://controller:9696

在控制节点安装和配置Neutron(以Self service-OVS为例)

在Self service-OVS网络类型的控制节点执行以下操作。

  1. 安装组件。
    yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch openstack-neutron-metering-agent ebtables
  2. 编辑配置文件“/etc/neutron/neutron.conf”。
    1. 打开文件。
      vi /etc/neutron/neutron.conf
    2. 按“i”进入编辑模式,添加如下内容。
      #a . 配置数据库访问     
      [database] 
      connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
       
      #b. 启用ML2插件,禁用其他插件。 
      [DEFAULT] 
      core_plugin = ml2 
      service_plugins = router,metering,qos,placement,trunk,segments 
      transport_url = rabbit://openstack:RABBIT_PASSWORD@controller
      auth_strategy = keystone 
      notify_nova_on_port_status_changes = true 
      notify_nova_on_port_data_changes = true 
       
      #c. 配置身份访问。 
      [keystone_authtoken] 
      www_authenticate_uri = http://controller:5000 
      auth_url = http://controller:5000 
      memcached_servers = controller:11211 
      auth_type = password 
      project_domain_name = default 
      user_domain_name = default 
      project_name = service 
      username = neutron 
      password = NEUTRON_PASSWORD
       
      #d. 配置[nova]模块参数。 配置文件中默认没有[nova]模块参数,需要新增。
      [nova] 
      auth_url = http://controller:5000 
      auth_type = password 
      project_domain_name = default 
      user_domain_name = default 
      region_name = RegionOne 
      project_name = service 
      username = nova 
      password = NOVA_PASSWORD
       
      #e. 配置锁定路径。 
      [oslo_concurrency] 
      lock_path = /var/lib/neutron/tmp 
       
      #f. 配置placement。配置文件中默认没有[placement]模块参数,需要新增。 
      [placement] 
      region_name = RegionOne 
      project_domain_name = Default 
      project_name = service 
      auth_type = password 
      user_domain_name = Default 
      auth_url = http://controller:5000/v3 
      username = placement 
      password = PLACEMENT_PASSWORD
    • username以及password字段在安装Nova以后根据Nova信息配置,或者在此处预定Nova的密码,在之后安装和配置Nova时保持一致。
    • 将NEUTRON_DBPASS替换为Neutron数据库密码,将NEUTRON_PASSWORD替换为Neutron用户密码,将PLACEMENT_PASSWORD替换为Placement用户密码,请根据实际情况进行设置。
    1. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  3. 编辑ML2插件“/etc/neutron/plugins/ml2/ml2_conf.ini”。
    1. 打开文件。
      vi /etc/neutron/plugins/ml2/ml2_conf.ini
    2. 按“i”进入编辑模式,添加如下内容。
      #启用Flat、VLAN和VXLAN网络。   
      #默认是没有的,需要新建 [ml2],[ml2_type_flat],[ml2_type_vlan],[ml2_type_vxlan]
      [ml2] 
      type_drivers = flat,vlan,vxlan 
      tenant_network_types = flat,vlan,vxlan 
      mechanism_drivers = openvswitch 
      extension_drivers = port_security,qos 
       
      [ml2_type_flat] 
      flat_networks = provider 
       
      [ml2_type_vlan] 
      network_vlan_ranges = provider 
       
      [ml2_type_vxlan] 
      vni_ranges = 1:1000 
    1. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  4. 修改OVS配置文件“/etc/neutron/plugins/ml2/openvswitch_agent.ini”。
    1. 打开文件。
      vi /etc/neutron/plugins/ml2/openvswitch_agent.ini
    2. 按“i”进入编辑模式,添加如下内容。
      [securitygroup]   
      enable_ipset = true
      enable_security_group = true 
      firewall_driver = openvswitch 
      
      [agent] 
      tunnel_types = vxlan 
      extensions  = qos
      
      [ovs] 
      bridge_mappings = provider:br-ex 
      tunnel_bridge = br-tun 
      local_ip = 192.168.16.2
      resource_provider_bandwidths = br-ex:10000000:10000000 

      192.168.16.0子网用于OpenStack业务流量的通信。上述192.168.16.2为当前节点业务流量通信IP地址,请根据实际情况进行替换。

    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  5. 修改dhcp配置文件“/etc/neutron/dhcp_agent.ini”。
    1. 打开文件。
      vi /etc/neutron/dhcp_agent.ini
    2. 按“i”进入编辑模式,添加如下内容。
      [DEFAULT] 
      dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq 
      enable_isolated_metadata = true 
      force_metadata = true 
      interface_driver = openvswitch
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  6. 修改l3 agent配置文件“/etc/neutron/l3_agent.ini”。
    1. 打开文件。
      vi /etc/neutron/l3_agent.ini
    2. 按“i”进入编辑模式,添加如下内容。
      [DEFAULT] 
      interface_driver = openvswitch
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  7. 修改MetaData agent配置文件“/etc/neutron/metadata_agent.ini”。
    1. 打开文件。
      vi /etc/neutron/metadata_agent.ini
    2. 按“i”进入编辑模式,修改如下内容。
      [DEFAULT]  
      nova_metadata_host = 192.168.14.2
      metadata_proxy_shared_secret = NEUTRON_PASSWORD
      • 192.168.14.2为控制节点的管理IP地址,请根据实际情况进行替换。
      • NEUTRON_PASSWORD为Neutron用户密码,请根据实际情况进行替换。
    1. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  8. 修改系统配置文件“/etc/sysctl.conf”。
    1. 编辑文件。
      vi /etc/sysctl.conf
    2. 按“i”进入编辑模式,修改如下内容。
      net.ipv4.ip_forward=1 
      net.ipv4.conf.all.rp_filter=0 
      net.ipv4.conf.default.rp_filter=0
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
    4. 使配置生效。
      sysctl -p
  9. 创建网络初始化。
    ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
  10. 填充数据库。
    su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
  11. 启动网络服务并配置为系统引导时启动。
    systemctl enable neutron-server.service neutron-openvswitch-agent.service neutron-metadata-agent.service neutron-dhcp-agent.service neutron-l3-agent.service neutron-metering-agent.service  
    systemctl start neutron-server.service neutron-openvswitch-agent.service neutron-metadata-agent.service neutron-dhcp-agent.service neutron-l3-agent.service neutron-metering-agent.service
  12. 添加OVS网桥。
    ovs-vsctl add-br br-ex
  13. 查看服务运行状态。
    1. 查看服务状态。
      systemctl status neutron-openvswitch-agent
    2. 查看日志是否正常。
      vi /var/log/neutron/openvswitch-agent.log

在计算节点安装和配置Neutron(以Self service-OVS为例)

  1. 安装组件。
    yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch ebtables
  2. 配置Neutron组件,编辑“/etc/neutron/neutron.conf”文件。
    1. 打开文件。
      vi /etc/neutron/neutron.conf
    2. 按“i”进入编辑模式,添加如下内容。
      #a. 配置RabbitMQ 消息队列访问。  
      [DEFAULT] 
      transport_url = rabbit://openstack:RABBIT_PASSWORD@controller
      auth_strategy = keystone 
       
      #b. 配置身份访问服务。 
      [keystone_authtoken] 
      www_authenticate_uri = http://controller:5000 
      auth_url = http://controller:5000 
      memcached_servers = controller:11211 
      auth_type = password 
      project_domain_name = default 
      user_domain_name = default 
      project_name = service 
      username = neutron 
      password = NEUTRON_PASSWORD 
       
      #c.配置锁定路径 
      [oslo_concurrency] 
      lock_path = /var/lib/neutron/tmp

      将RABBIT_PASSWORD替换为RabbitMQ中OpenStack账户的密码,将NEUTRON_PASSWORD替换为Neutron用户密码,请根据实际情况进行设置。

    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  3. 配置元数据代理,修改“/etc/neutron/metadata_agent.ini”文件。
    1. 打开文件。
      vi /etc/neutron/metadata_agent.ini
    2. 按“i”进入编辑模式,添加如下内容,配置元数据主机和共享密钥。
      [DEFAULT] 
      nova_metadata_host = controller 
      metadata_proxy_shared_secret = NEUTRON_PASSWORD
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  4. 修改dhcp配置文件“/etc/neutron/dhcp_agent.ini”。
    1. 打开文件。
      vi /etc/neutron/dhcp_agent.ini
    2. 按“i”进入编辑模式,添加如下内容。
      [DEFAULT] 
      enable_isolated_metadata = true 
      force_metadata = true 
      interface_driver = openvswitch
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  5. 配置l3 agent,修改“/etc/neutron/l3_agent.ini”文件。
    1. 打开文件。
      vi /etc/neutron/l3_agent.ini
    2. 按“i”进入编辑模式,添加如下内容。
      [DEFAULT] 
      interface_driver = openvswitch
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  6. 配置openvswitch agent,修改“/etc/neutron/plugins/ml2/openvswitch_agent.ini”文件。
    1. 打开文件。
      vi /etc/neutron/plugins/ml2/openvswitch_agent.ini
    2. 按“i”进入编辑模式,添加如下内容。
      [securitygroup] 
      enable_ipset = true 
      enable_security_group = true 
      firewall_driver = openvswitch 
      
      [agent] 
      tunnel_types = vxlan 
      extensions = qos 
       
      [ovs] 
      local_ip = 192.168.16.4 

      192.168.16.0/24子网用于OpenStack业务流量的通信。上述192.168.16.4为当前节点业务面网络IP,用户可根据实际环境部署调整IP。

    1. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  7. 修改系统配置文件“/etc/sysctl.conf”。
    1. 打开文件。
      vi /etc/sysctl.conf
    2. 按“i”进入编辑模式,修改如下内容。
      net.ipv4.ip_forward=1 
      net.ipv4.conf.all.rp_filter=0 
      net.ipv4.conf.default.rp_filter=0
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
    4. 使配置生效。
      sysctl -p
  8. 启动网络服务并配置为系统引导时启动。
    systemctl enable neutron-openvswitch-agent.service neutron-metadata-agent.service neutron-dhcp-agent.service neutron-l3-agent.service 
    systemctl start neutron-openvswitch-agent.service neutron-metadata-agent.service neutron-dhcp-agent.service neutron-l3-agent.service

    计算节点的其余服务根据用户自身需求启动。

  9. 查看计算节点运行状态。
    systemctl status neutron-openvswitch-agent

验证Neutron

在控制节点执行以下命令,验证Neutron。

source ~/.admin-openrc 
openstack network agent list
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词