neutron的手工搭建

controller:

mysql -u root -popenstack

mysql> CREATE DATABASE neutron;

mysql> GRANT ALL PRIVILEGES ON neutron.* TO ‘neutron‘@‘localhost‘

IDENTIFIED BY ‘openstack‘;

mysql> GRANT ALL PRIVILEGES ON neutron.* TO ‘neutron‘@‘%‘ \

IDENTIFIED BY ‘openstack‘;

mysql> exit

创建neutron用户:

keystone user-create --name neutron --pass neutron --email [email protected]

赋予neutron用户管理员角色:

keystone user-role-add --user neutron --tenant service --role admin

创建neutron服务及端口:

keystone service-create --name neutron --type network --description "OpenStack Networking"

keystone endpoint-create \

--service-id $(keystone service-list | awk ‘/ network / {print $2}‘) \

--publicurl http://controller:9696 \

--adminurl http://controller:9696 \

--internalurl http://controller:9696

安装neutron的相关包

yum install openstack-neutron openstack-neutron-ml2 python-neutronclient

配置neutron的数据库连接

openstack-config --set /etc/neutron/neutron.conf database connection mysql://neutron:[email protected]/neutron

配置neutron的认证

openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://controller:5000

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_host controller

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_protocol http

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_port 35357

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_tenant_name service

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_user neutron

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_password neutron

配置neutron的消息代理

openstack-config --set /etc/neutron/neutron.conf DEFAULT rpc_backend neutron.openstack.common.rpc.impl_qpid

openstack-config --set /etc/neutron/neutron.conf DEFAULT qpid_hostname controller

配置compute使得计算可以注意到网络策略的变化

openstack-config --set /etc/neutron/neutron.conf DEFAULT notify_nova_on_port_status_changes True

openstack-config --set /etc/neutron/neutron.conf DEFAULT notify_nova_on_port_data_changes True

openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_url http://controller:8774/v2

openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_username nova

openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_tenant_id $(keystone tenant-list | awk ‘/ service / { print $2 }‘)

openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_password nova

openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_auth_url http://controller:35357/v2.0

配置neutron使用ml2 plugins-in

openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2

openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins router

配置ml2 plugin

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers openvswitch

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_type_gre tunnel_id_ranges 1:1000

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup firewall_driver neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup enable_security_group True

配置compute使用网络

openstack-config --set /etc/nova/nova.conf DEFAULT network_api_class nova.network.neutronv2.api.API

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_url http://controller:9696

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_auth_strategy keystone

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_tenant_name service

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_username neutron

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_password neutron

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_auth_url http://controller:35357/v2.0

openstack-config --set /etc/nova/nova.conf DEFAULT linuxnet_interface_driver nova.network.linux_net.LinuxOVSInterfaceDriver

openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver

openstack-config --set /etc/nova/nova.conf DEFAULT security_group_api neutron

ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

service openstack-nova-api restart

service openstack-nova-scheduler restart

service openstack-nova-conductor restart

service neutron-server restart

chkconfig neutron-server on

若返回数据库错误,解决方案:

openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin neutron.plugins.ml2.plugin.Ml2Plugin

openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins neutron.services.l3_router.l3_router_plugin.L3RouterPlugin

su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini upgrade head" neutron

将文件改回

openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2

openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins router

重启neutron server服务

service neutron-server restart

network:

vim /etc/sysctl.conf

net.ipv4.ip_forward=1

net.ipv4.conf.all.rp_filter=0

net.ipv4.conf.default.rp_filter=0

sysctl -p

安装所需要的rpm包

yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch

配置neutron的认证:

openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://controller:5000

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_host controller

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_protocol http

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_port 35357

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_tenant_name service

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_user neutron

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_password neutron

配置neutron消息代理

openstack-config --set /etc/neutron/neutron.conf DEFAULT rpc_backend neutron.openstack.common.rpc.impl_qpid

openstack-config --set /etc/neutron/neutron.conf DEFAULT qpid_hostname controller

配置neutron使用ml2 plugins-in

openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2

openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins router

配置L3-agent

openstack-config --set /etc/neutron/l3_agent.ini DEFAULT interface_driver neutron.agent.linux.interface.OVSInterfaceDriver

openstack-config --set /etc/neutron/l3_agent.ini DEFAULT use_namespaces True

配置DHCP-agent

openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT interface_driver neutron.agent.linux.interface.OVSInterfaceDriver

openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT dhcp_driver neutron.agent.linux.dhcp.Dnsmasq

openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT use_namespaces True

配置metadata-agent

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT auth_url http://controller:5000/v2.0

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT auth_region regionOne

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT admin_tenant_name service

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT admin_user neutron

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT admin_password neutron

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT nova_metadata_ip controller

openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT metadata_proxy_shared_secret METADATA_SECRET

controller:

openstack-config --set /etc/nova/nova.conf DEFAULT service_neutron_metadata_proxy true

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_metadata_proxy_shared_secret METADATA_SECRET

service openstack-nova-api restart

netowrk:

配置mL2 plugin in

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers openvswitch

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_type_gre tunnel_id_ranges 1:1000

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs local_ip 10.0.1.21

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs tunnel_type gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs enable_tunneling True

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup firewall_driver neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup enable_security_group True

service openvswitch restart

chkconfig openvswitch on

ovs-vsctl add-br br-int

ovs-vsctl add-br br-ex

ovs-vsctl add-port br-ex eth2

ethtool -K eth2 gro off

ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

cp /etc/init.d/neutron-openvswitch-agent /etc/init.d/neutronopenvswitch-agent.orig

sed -i ‘s,plugins/openvswitch/ovs_neutron_plugin.ini,plugin.ini,g‘ /etc/init.d/neutron-openvswitch-agent

service neutron-openvswitch-agent restart

service neutron-l3-agent restart

service neutron-dhcp-agent restart

service neutron-metadata-agent restart

chkconfig neutron-openvswitch-agent on

chkconfig neutron-l3-agent on

chkconfig neutron-dhcp-agent on

chkconfig neutron-metadata-agent on

compute:

vim /etc/sysctl.conf

net.ipv4.conf.all.rp_filter=0

net.ipv4.conf.default.rp_filter=0

sysctl -p

yum install openstack-neutron-ml2 openstack-neutron-openvswitch

配置neutron的认证服务

openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://controller:5000

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_host controller

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_protocol http

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_port 35357

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_tenant_name service

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_user neutron

openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_password neutron

配置neutron的消息代理

openstack-config --set /etc/neutron/neutron.conf DEFAULT rpc_backend neutron.openstack.common.rpc.impl_qpid

openstack-config --set /etc/neutron/neutron.conf DEFAULT qpid_hostname controller

配置neutron使用ML2 plugin

openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2

openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins router

配置ML2 plugin

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers openvswitch

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.iniml2_type_gre tunnel_id_ranges 1:1000

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs local_ip 10.0.1.31

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs tunnel_type gre

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs enable_tunneling True

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.inisecuritygroup firewall_driver neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.inisecuritygroup enable_security_group True

service openvswitch start

chkconfig openvswitch on

ovs-vsctl add-br br-int

配置compute使用neutron

openstack-config --set /etc/nova/nova.conf DEFAULT network_api_class nova.network.neutronv2.api.API

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_url http://controller:9696

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_auth_strategy keystone

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_tenant_name service

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_username neutron

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_password neutron

openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_auth_url http://controller:35357/v2.0

openstack-config --set /etc/nova/nova.conf DEFAULT linuxnet_interface_driver nova.network.linux_net.LinuxOVSInterfaceDriver

openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver

openstack-config --set /etc/nova/nova.conf DEFAULT security_group_api neutron

ln -s /etc/nuetron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

cp /etc/init.d/neutron-openvswitch-agent /etc/init.d/neutronopenvswitch-agent.orig

sed -i ‘s,plugins/openvswitch/ovs_neutron_plugin.ini,plugin.ini,g‘ /etc/init.d/neutron-openvswitch-agent

service openstack-nova-compute restart

service neutron-openvswitch-agent restart

chkconfig neutron-openvswitch-agent on

创建初始化网络

source admin-openrc.sh

neutron net-create ext-net --shared --router:external=True

创建外部网络:

neutron subnet-create ext-net --name ext-subnet --allocation-pool start=192.168.1.150,end=192.168.1.200 \

--disable-dhcp --gateway 192.168.1.1  192.168.1.0/24

创建租户网络

source demo-openrc.sh

neutron net-create demo-net

neutron subnet-create demo-net --name demo-subnet --gateway 192.168.0.1 192.168.0.0/24

neutron router-create demo-router

把租户网络连接到路由器

neutron router-interface-add demo-router demo-subnet

设置路由器的网关

neutron router-gateway-set demo-router ext-net

确定网络来接正确

ping 192.168.1.150

时间: 2025-01-09 23:14:14

neutron的手工搭建的相关文章

手工搭建基于ABP的框架 - 工作单元以及事务管理

一个业务功能往往不只由一次数据库请求(或者服务调用)实现.为了功能的完整性,我们希望如果该功能执行一半时出错,则撤销前面已执行的改动.在数据库层面上,事务管理实现了这种完整性需求.在ABP中,一个完整的业务功能称为一个工作单元(Unit of Work,简称UoW).工作单元代表一种完整的.原子性的操作.即一个工作单元包含的步骤要么全部被执行,要么都不被执行.如果执行一半时出现异常,则必须讲已执行的步骤还原.通常我们将事务管理实现在工作单元中.下面我们从ABP源码入手研究如何使用工作单元. AB

Servlet还有学习的必要吗?(手工搭建Servlet)

前言 在初学Java web的时候,就曾听到过这样一种说法: java Web的演变过程大概可以分为4个阶段: jsp + Servlet + jdbc spring + struts2+ hibernate(ssh) spring + SpringMVC + mybatis(ssm) 微服务阶段. 所以学习 Java web,可以从第3个阶段开始学习,不用再去关注Servlet,那么Servlet是否还有学习的必要呢? 答案是有,并且非常重要.俗话说万变不离其宗,这个宗指的就是技术的底层,你会

(导航页)OpenStack-M版-双节点手工搭建-附B站视频

↓↓↓↓↓↓↓↓视频已上线B站↓↓↓↓↓↓↓↓ >>>>>>传送门 本次搭建采用双节点,离线源搭建, 配置如下 本次搭建采用2台4核4G的虚拟机,也可以改为2核4G 主机名 配置 网络 Controller 4核4G Interface1 192.168.100.10/24 Interface2 192.168.200.10/24 Compute 4核4G Interface1 192.168.100.20/24 Interface2 192.168.200.20/24

ABP架构学习系列三:手工搭建ABP框架

由于公司的项目才接触到ABP这个框架,当时就觉得高大上,什么IOC.AOP.ddd各种专业词汇让人激情 澎湃,但在使用过程中碰到了许多坑,可能也许是没有去看源码导致的,但工作确实没有那么多时间让人去慢慢研究.很久之前想手动搭建这个框架了,但是各种理由,你懂的.但是要在技术上得到大的提升就得静的下心去研究,学到大神的思想和精髓,运用到实际中去,才能去体验更开阔的天地. 本文以创建博客为思路,一步步构建整个项目,在摸索中进步,也希望能够帮助到有需要的人. 一.基础架构 第一部分主要是搭建好整个项目的

纯手工搭建K8s(单节点)

准备说明: 因为为纯手动搭建,所以针对安装时需要的一些安装包需提前下载好 cfssl_linux-amd64. cfssljson_linux-amd64. cfssl-certinfo_linux-amd64. etcd-v3.3.10-linux-amd64.tar.gz. flannel-v0.11.0-linux-amd64.tar.gz. kubernetes-server-linux-amd64.tar.gz(网络环境原因可以上github上下载或者找台vps下载好然后再从vps上拉

纯手工搭建VS 2017(社区 免费版)离线安装包

不知不觉中,史上功能最强大的Visual Studio 2017版本发于美国时间2017年3月8日正式在发布了,但是由于版本更新速度加快和与第三方工具包集成的原因,微软研发团队没有为这个版本提供离线下载的安装文件.如果用户处在一个与外网隔离的网络环境中,则必须首先自行创建理想安装包.下面我来给大家隆重介绍哈是如何制作一个离线安装包的(PS:其实,大家就是想要安装包而已,并非知道如何制作吧,哈哈!!!) 一:首先,在官网上下载一个安装工具(.exe文件) ,大概就1M左右. 二:然后,通过使用命令

swift手工搭建

controller: keystone user-create --name=swift --pass=swift [email protected] keystone user-role-add --user=swift --tenant=service --role=admin 创建Object Storage Service: keystone service-create --name=swift --type=object-store --description="OpenStack

dashboard的手工搭建

controller: yum install memcached python-memcached mod_wsgi openstack-dashboard vim /etc/openstack-dashboard/local_setting CACHES = { 'default': { 'BACKEND' : 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION' : '127.0.0.1:11211' } } T

cinder的手工搭建

controller: yum install openstack-cinder 配置cinder服务的数据库连接 openstack-config --set /etc/cinder/cinder.conf database connection mysql://cinder:[email protected]/cinder 初始化cinder数据库 mysql -u root -popenstack mysql> CREATE DATABASE cinder; mysql> GRANT A