美文网首页
Openstack(Ocata版本)部署总结第五章:网络服务

Openstack(Ocata版本)部署总结第五章:网络服务

作者: 辉耀辉耀 | 来源:发表于2017-07-20 15:49 被阅读0次
    官方给出的网络架构

    (1)控制节点

    1、配置数据库
    $ mysql -u root –p
    MariaDB [(none)] CREATE DATABASE neutron;
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' \
      IDENTIFIED BY 'NEUTRON_DBPASS';
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' \
      IDENTIFIED BY 'NEUTRON_DBPASS';
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'controller' \
      IDENTIFIED BY 'NEUTRON_DBPASS';
    
    2、 创建服务实体和API端点
    $ . admin-openrc
    $ openstack user create --domain default --password-prompt neutron
    User Password:
    Repeat User Password:
    $ openstack role add --project service --user neutron admin
    $ openstack service create --name neutron \
      --description "OpenStack Networking" network
    $ 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
    
    3、安装并配置服务

    官方这里给出两个选择,分别是Networking Option 1.Provider netwrok和Networking Option 2.Self-service network
    其实Option 2是包含有1的,因此我们选择Networking Option 2: Self-service networks(自服务网络)
    3.1安装组件

    # yum install openstack-neutron openstack-neutron-ml2 \
      openstack-neutron-linuxbridge ebtables
    

    3.2配置服务组件
    配置neutron服务

    # vim /etc/neutron/neutron.conf
    [database]
    connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
    [DEFAULT]
    core_plugin = ml2
    service_plugins = router
    allow_overlapping_ips = true
    transport_url = rabbit://openstack:RABBIT_PASS@controller
    auth_strategy = keystone
    notify_nova_on_port_status_changes = true
    notify_nova_on_port_data_changes = true
    [keystone_authtoken]
    auth_uri = http://controller:5000
    auth_url = http://controller:35357
    memcached_servers = controller:11211
    auth_type = password
    project_domain_name = default
    user_domain_name = default
    project_name = service
    username = neutron
    password = NEUTRON_PASS
    [oslo_concurrency]
    lock_path = /var/lib/neutron/tmp
    

    配置ml2插件,ML2插件使用Linuxbridge机制来为实例创建layer-2虚拟网络基础设施

    # vim /etc/neutron/plugins/ml2/ml2_conf.ini
    [ml2]
    type_drivers = flat,vlan,vxlan
    tenant_network_types = vxlan
    mechanism_drivers = linuxbridge,l2population
    extension_drivers = port_security
    [ml2_type_flat]
    flat_networks = provider
    [ml2_type_vxlan]
    vni_ranges = 1:1000
    [securitygroup]
    enable_ipset = true
    

    配置linux-bridge代理,Linuxbridge代理为实例建立layer-2虚拟网络并且处理安全组规则

    vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
    [linux_bridge]
    physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME   这里修改为使用的网卡名,如em1
    [vxlan]
    enable_vxlan = true
    local_ip = OVERLAY_INTERFACE_IP_ADDRESS   这里修改为controller IP地址
    l2_population = true
    [securitygroup]
    enable_security_group = true
    firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
    

    配置layer-3代理,L3代理为"自服务网络"提供路由和NAT服务。

    # vim /etc/neutron/l3_agent.ini
    [DEFAULT]
    interface_driver = linuxbridge
    

    配置DHCP代理,DHCP代理为虚拟网络提供DHCP服务。

    # vim /etc/neutron/dhcp_agent.ini
    [DEFAULT]
    interface_driver = linuxbridge
    dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
    enable_isolated_metadata = true
    

    配置元数据代理,元数据代理向实例提供诸如凭据的配置信息。

    # vim /etc/neutron/metadata_agent.ini
    [DEFAULT]
    nova_metadata_ip = controller
    metadata_proxy_shared_secret = METADATA_SECRET   这里设置元数据密令
    

    配置计算服务来使用网络服务

    # vim /etc/nova/nova.conf
    [neutron]
    url = http://controller:9696
    auth_url = http://controller:35357
    auth_type = password
    project_domain_name = default
    user_domain_name = default
    region_name = RegionOne
    project_name = service
    username = neutron
    password = NEUTRON_PASS
    service_metadata_proxy = true
    metadata_proxy_shared_secret = METADATA_SECRET
    

    完成安装

    网络服务初始化脚本需要一个超链接 /etc/neutron/plugin.ini``指向ML2插件配置文件/etc/neutron/plugins/ml2/ml2_conf.ini
    # ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
    同步数据库
    # 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
    
    4、启动服务并加入开机自启(需要重新启动nove-api)
    # systemctl restart openstack-nova-api.service
    # systemctl enable neutron-server.service \
      neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
      neutron-metadata-agent.service
    # systemctl start neutron-server.service \
      neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
      neutron-metadata-agent.service
    # systemctl enable neutron-l3-agent.service
    # systemctl start neutron-l3-agent.service
    

    (2)计算节点

    1、安装并配置服务
    # yum install openstack-neutron-linuxbridge ebtables ipset
    

    配置neutron配置文件

    # vim /etc/neutron/neutron.conf
    [DEFAULT]
    transport_url = rabbit://openstack:RABBIT_PASS@controller
    auth_strategy = keystone
    [keystone_authtoken]
    auth_uri = http://controller:5000
    auth_url = http://controller:35357
    memcached_servers = controller:11211
    auth_type = password
    project_domain_name = default
    user_domain_name = default
    project_name = service
    username = neutron
    password = NEUTRON_PASS
    [oslo_concurrency]
    lock_path = /var/lib/neutron/tmp
    

    这里官方一样给出了两个选择,需要和controller的选择保持一致
    因此选择Networking Option 2: Self-service networks
    配置linux-bridge代理

    # vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
    [linux_bridge]
    physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME  修改为该节点使用的的网卡名字,如em1,ip a查看即可
    [vxlan]
    enable_vxlan = true
    local_ip = OVERLAY_INTERFACE_IP_ADDRESS  修改为该节点的IP地址
    l2_population = true
    [securitygroup]
    enable_security_group = true
    firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
    

    配置nova配置文件

    # vim /etc/nova/nova.conf
    [neutron]
    url = http://controller:9696
    auth_url = http://controller:35357
    auth_type = password
    project_domain_name = default
    user_domain_name = default
    region_name = RegionOne
    project_name = service
    username = neutron
    password = NEUTRON_PASS
    
    2、启动服务并加入开机自启
    # systemctl restart openstack-nova-compute.service
    # systemctl enable neutron-linuxbridge-agent.service
    # systemctl start neutron-linuxbridge-agent.service
    

    (3)验证

    $ . admin-openrc
    $ openstack extension list --network
    $ openstack network agent list  结果应该是controller四个up,一个计算节点一个up
    $ openstack network agent list
    
    +--------------------------------------+--------------------+------------+-------------------+-------+-------+---------------------------+
    | ID                                   | Agent Type         | Host       | Availability Zone | Alive | State | Binary                    |
    +--------------------------------------+--------------------+------------+-------------------+-------+-------+---------------------------+
    | f49a4b81-afd6-4b3d-b923-66c8f0517099 | Metadata agent     | controller | None              | True  | UP    | neutron-metadata-agent    |
    | 27eee952-a748-467b-bf71-941e89846a92 | Linux bridge agent | controller | None              | True  | UP    | neutron-linuxbridge-agent |
    | 08905043-5010-4b87-bba5-aedb1956e27a | Linux bridge agent | compute1   | None              | True  | UP    | neutron-linuxbridge-agent |
    | 830344ff-dc36-4956-84f4-067af667a0dc | L3 agent           | controller | nova              | True  | UP    | neutron-l3-agent          |
    | dd3644c9-1a3a-435a-9282-eb306b4b0391 | DHCP agent         | controller | nova              | True  | UP    | neutron-dhcp-agent        |
    +--------------------------------------+--------------------+------------+-------------------+-------+-------+---------------------------+
    

    相关文章

      网友评论

          本文标题:Openstack(Ocata版本)部署总结第五章:网络服务

          本文链接:https://www.haomeiwen.com/subject/tfxjkxtx.html