欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

openstack——Neutron组件

程序员文章站 2024-03-23 22:14:28
...

Neutron

  • 网络拓扑
    openstack——Neutron组件

Neutron基本概念

  • 网络(network)
    • Neutron网络目的是划分物理网络,在多租户环境下提供给每个租户独立的网络环境。Neutron中“网络”是一个可以被用户创建的对象,如果要和物理环境下的概念映射的话,这个对象相当于一个巨大的交换机,可以拥有无限多个动态可创建和销毁的虚拟端口。
  • 子网(subnet)
    • 子网是由一组IP地址组成的地址池。不同子网间的通信需要路由器的支持,Neutron中子网隶属于网络。
  • 端口(port)
    • 一个端口代表了在逻辑网络交换机上的虚拟交互端口,虚拟机的虚拟接口(可以理解成网卡)连接到这些端口上,端口上有相应的MACIP地址。当给端口分配IP地址,需要将端口关联到子网中,从子网的地址池取出IP地址。
  • 路由器(router)
    • 和物理环境下的路由器类似,Neutron中的路由器也是一个路由选择和转发部件。只不过在Neutron中,它是可以创建和销毁的软部件。
  • DHCP
    • 为租户网络提供DHCP服务,即IP地址动态分配,另外还会提供metadata请求服务。
    • DHCP agent
      • 负责处理dhcp请求,为网络分配IP
    • DHCP agent scheduler
      • 负责DHCP agentnetwork的调度

基本命令

  • 网络(network
    neutron net-create --tenant-id $tenant net1                                     --provider:network vlan 
                       --provider:physical_network physnet1 --provider:segmentation_id 100
  • 子网(subnet
    neutron subnet-create --tenant-id $tenant 
                          --name net1_subnet1 net1 192.168.100.0/24
  • 端口(port
    • port一般都是自动创建的,很少用户手动创建

Devstack自动化部署

  • OVS+VLAN
    • 部署master分支为例
    • 网络模式采用OVS+VLAN
        Q_PLUGIN=ml2
        Q_ML2_TENANT_NETWORK_TYPE=vlan
        TENANT_VLAN_RANGE=2100:2199
        PHYSICAL_NETWORK=physnet1
        Q_AGENT=openvswitch
        Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch
        Q_ML2_PLUGIN_TYPE_DRIVERS=vlan
        # ml2+ovs+vlan, if not configured, error happened:binding:vif_type=binding_failed
        ENABLE_TENANT_TUNNELS=false
        OVS_BRIDGE_MAPPINGS=physnet1:br-int
    

Neutron服务

模块 功能 说明
neutron-server API服务
neutron-*(I2)-agent 网桥、安全组等 没网络、计算结点一个
neutron-dhcp-agent Dhcp服务 可多个
neutron-I3-agent Router/防火墙 可多个
neutron-vpn-agent Router/防火墙/vpn 可多个
neutron-lbaas-agent 负载均衡 可多个
neutron-metadata-agent Metadata代理服务

openstack——Neutron组件

ML2

openstack——Neutron组件

常见的部署方式

openstack——Neutron组件

  • Ovs Vlan计算结点

    openstack——Neutron组件

  • Ovs Vlan网络结点

    openstack——Neutron组件

  • Ovs Vxlan计算结点

    openstack——Neutron组件
    openstack——Neutron组件

Devstack自动化部署

  • Ovs + VLAN
    • 部署master分支为例
    • 网络模式采用OVS+VLAN
      sudo ovs-vsctl  add-br br-eth0
      sudo ovs-vsctl  add-port br-eth0 eth0
    
      Q_PLUGIN=ml2
      Q_ML2_TENANT_NETWORK_TYPE=vlan
      TENANT_VLAN_RANGE=2100:2199
      PHYSICAL_NETWORK=physnet1                                         
      Q_AGENT=openvswitch
      Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch
      Q_ML2_PLUGIN_TYPE_DRIVERS=vlan
      # ml2+ovs+vlan, if not configured, error happened:binding:vif_type=binding_failed
      OVS_BRIDGE_MAPPINGS=physnet1:br-eth0
    
相关标签: openstack