005-OpenStack-网络服务
OpenStack-网络服务
【基于此文章的环境】点我快速打开文章
1、控制节点(controller)
1.1 创库授权 neutron
mysql
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';


1.2 创建服务证书
1. 创建 neutron 用户
openstack user create --domain default --password NEUTRON_PASS neutron
用合适的密码代替
NEUTRON_PASS。


2. 给 neutron 用户添加 admin 角色
openstack role add --project service --user neutron admin


3. 创建 neutron 服务实体
openstack service create --name neutron \
--description "OpenStack Networking" network


4. 创建 Compute 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


1.3 配置网络选项
1. 安装其软件包
yum install openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge ebtables -y &>/dev/null
echo $?


2. 修改配置文件
1. 备份初始配置文件,然后重定向写入配置文件
cp /etc/neutron/neutron.conf{,.bak}
egrep -v '^$|#' /etc/neutron/neutron.conf.bak >/etc/neutron/neutron.conf


2. 编辑文件 /etc/neutron/neutron.conf 并完成如下动作:
vim /etc/neutron/neutron.conf
- 在
[database]部分,配置数据库访问
[database]
# ...
connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
用你设置的数据库密码替换
NEUTRON_DBPASS。
- 在
DEFAULT]部分,启用ML2插件并禁用其他插件
[DEFAULT]
# ...
core_plugin = ml2
service_plugins =
- 在
[DEFAULT]部分,配置RabbitMQ消息队列访问权限
[DEFAULT]
# ...
transport_url = rabbit://openstack:RABBIT_PASS@controller
用你在
RabbitMQ中为openstack选择的密码替换RABBIT_PASS。
- 在
[DEFAULT]和[keystone_authtoken]部分中,配置身份服务访问
[DEFAULT]
# ...
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
将
NEUTRON_PASS替换为你在认证服务中为neutron用户选择的密码。
- 在
[DEFAULT]和[nova]部分,配置网络服务来通知计算节点的网络拓扑变化:
[DEFAULT]
# ...
notify_nova_on_port_status_changes = true
notify_nova_on_port_data_changes = true
[nova]
# ...
auth_url = http://controller:35357
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = nova
password = NOVA_PASS
使用你在身份认证服务中设置的
nova用户的密码替换NOVA_PASS。
- 在
[oslo_concurrency]部分,配置锁路径:
[oslo_concurrency]
# ...
lock_path = /var/lib/neutron/tmp


3. 备份初始配置文件,然后重定向写入配置文件
cp /etc/neutron/plugins/ml2/ml2_conf.ini{,.bak}
egrep -v '^$|#' /etc/neutron/plugins/ml2/ml2_conf.ini.bak >/etc/neutron/plugins/ml2/ml2_conf.ini


4. 编辑文件 /etc/neutron/plugins/ml2/ml2_conf.ini 并完成如下动作:
vim /etc/neutron/plugins/ml2/ml2_conf.ini
- 在
[ml2]部分,启用flat和VLAN网络:
[ml2]
# ...
type_drivers = flat,vlan
- 在
[ml2]部分,禁用私有网络:
[ml2]
# ...
tenant_network_types =
- 在
[ml2]部分,启用Linuxbridge机制:
[ml2]
# ...
mechanism_drivers = linuxbridge
- 在
[ml2]部分,启用端口安全扩展驱动:
[ml2]
# ...
extension_drivers = port_security
- 在
[ml2_type_flat]部分,配置公共虚拟网络为flat网络:
[ml2_type_flat]
# ...
flat_networks = provider
- 在
[securitygroup]部分,启用ipset增加安全组的方便性:
[securitygroup]
# ...
enable_ipset = true


5. 备份初始配置文件,然后重定向写入配置文件
cp /etc/neutron/plugins/ml2/linuxbridge_agent.ini{,.bak}
egrep -v '^$|#' /etc/neutron/plugins/ml2/linuxbridge_agent.ini.bak >/etc/neutron/plugins/ml2/linuxbridge_agent.ini


6. 编辑文件 /etc/neutron/plugins/ml2/linuxbridge_agent.ini 并完成如下动作:
vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
- 在
[linux_bridge]部分,将公共虚拟网络和公共物理网络接口对应起来:
[linux_bridge]
physical_interface_mappings = provider:eth0
- 在
[vxlan]部分,禁止VXLAN覆盖网络:
[vxlan]
enable_vxlan = false
在
[securitygroup]部分,启用安全组并配置Linux桥接iptables防火墙驱动:
[securitygroup]
# ...
enable_security_group = true
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver


9. 备份初始配置文件,然后重定向写入配置文件
cp /etc/neutron/dhcp_agent.ini{,.bak}
egrep -v '^$|#' /etc/neutron/dhcp_agent.ini.bak >/etc/neutron/dhcp_agent.ini


10. 编辑文件 /etc/neutron/dhcp_agent.ini 并完成如下动作:
vim /etc/neutron/dhcp_agent.ini
- 在
[DEFAULT]部分,配置Linuxbridge驱动接口,DHCP驱动并启用隔离元数据,这样在公共网络上的实例就可以通过网络来访问元数据
[DEFAULT]
# ...
interface_driver = linuxbridge
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = true


1.4 配置元数据代理
1. 修改配置文件
1. 备份初始配置文件,然后重定向写入配置文件
cp /etc/neutron/metadata_agent.ini{,.bak}
egrep -v '^$|#' /etc/neutron/metadata_agent.ini.bak >/etc/neutron/metadata_agent.ini


2. 编辑文件 /etc/neutron/metadata_agent.ini 并完成如下动作:
vim /etc/neutron/metadata_agent.ini
- 在
[DEFAULT]部分,配置元数据主机以及共享密码:
[DEFAULT]
# ...
nova_metadata_ip = controller
metadata_proxy_shared_secret = METADATA_SECRET
用你为元数据代理设置的密码替换 METADATA_SECRET。


3. 编辑文件 /etc/nova/nova.conf 并完成如下动作:
vim /etc/nova/nova.conf
- 在
[neutron]部分,配置访问参数,启用元数据代理并设置密码:
[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
将
NEUTRON_PASS替换为你在认证服务中为neutron用户选择的密码。
使用你为元数据代理设置的密码替换
METADATA_SECRET


1.5 同步数据库(创表)
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


1.6 启动和自启动
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


1.7 验证操作
openstack network agent list


2、计算节点(compute1)
2.1 安装组件
1. 安装其软件包
yum install openstack-neutron-linuxbridge ebtables ipset -y &>/dev/null
echo $?


2. 修改配置文件
1. 备份初始配置文件,然后重定向写入配置文件
cp /etc/neutron/neutron.conf{,.bak}
egrep -v '^$|#' /etc/neutron/neutron.conf.bak >/etc/neutron/neutron.conf


2. 编辑文件 /etc/neutron/neutron.conf 并完成如下动作:
vim /etc/neutron/neutron.conf
- 在
[DEFAULT]部分,配置RabbitMQ消息队列访问权限
[DEFAULT]
# ...
transport_url = rabbit://openstack:RABBIT_PASS@controller
用你在
RabbitMQ中为openstack选择的密码替换RABBIT_PASS。
- 在
[DEFAULT]和[keystone_authtoken]部分中,配置身份服务访问
[DEFAULT]
# ...
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
将
NEUTRON_PASS替换为你在认证服务中为neutron用户选择的密码。
- 在
[oslo_concurrency]部分,配置锁路径:
[oslo_concurrency]
# ...
lock_path = /var/lib/neutron/tmp


2.2 配置网络选项
1. 复制配置文件
scp -rp 10.0.0.11:/etc/neutron/plugins/ml2/linuxbridge_agent.ini /etc/neutron/plugins/ml2/linuxbridge_agent.ini


2. 修改配置文件
1. 编辑文件 /etc/nova/nova.conf 并完成如下动作:
vim /etc/nova/nova.conf
- 在
[neutron]部分,配置访问参数:
[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
将
NEUTRON_PASS替换为你在认证服务中为neutron用户选择的密码。


2.3 启动和自启动
systemctl restart openstack-nova-compute.service
systemctl enable neutron-linuxbridge-agent.service
systemctl start neutron-linuxbridge-agent.service


【后续文章】点我快速打开文章
【本文图片下载地址】【002-OpenStack】点我快速打开分享(若异常,请私信,万分感谢) 【提取码:kse1 】
今天你学习了吗?若有疑问,请留言、私信或加QQ群:647033350,大家一起进步吧!
005-OpenStack-网络服务的更多相关文章
- OpenStack 网络服务 Neutron 私有网络构建(十九)
本章内容基于之前提供者网络构建的基础上进行改动,之前文章参考如下: Openstack 网络服务 Neutron介绍和控制节点部署 (九) Openstack 网络服务 Neutron计算节点部署(十 ...
- OpenStack 网络服务 Neutron 多网卡(提供者网络)(十八)
OpenStack 网络服务 Neutron 多网卡,分为内部网络.外部网络 使用vmware模拟两张网卡 添加网卡 网卡配置 cd /etc/sysconfig/network-scripts cp ...
- openstack网络服务Neutron(六)
一.Neutron控制节点安装 1.Neutron安装 [root@linux-node1 ~]# yum install -y openstack-neutron openstack-neutron ...
- Openstack 网络服务 Neutron介绍和控制节点部署 (九)
Neutron介绍 neutron是openstack重要组件之一,在以前是时候没有neutron项目. 早期的时候是没有neutron,早期所使用的网络的nova-network,经过版本改变才有个 ...
- Openstack 网络服务 Neutron介绍和控制节点部署 (十)
Neutron介绍 neutron是openstack重要组件之一,在以前是时候没有neutron项目. 早期的时候是没有neutron,早期所使用的网络的nova-network,经过版本改变才有个 ...
- 云计算管理平台之OpenStack网络服务neutron
一.简介 neutron的主要作用是在openstack中为启动虚拟机实例提供网络服务,对于neutron来讲,它可以提供两种类型的网络:第一种是provider network,这种网络就是我们常说 ...
- Openstack 网络服务 Neutron计算节点部署(十)
Neutron计算节点部署 安装组件,安装的服务器是192.168.137.12 1.安装软件包 yum install -y openstack-neutron-linuxbridge ebtabl ...
- Openstack 网络服务 Neutron计算节点部署 (十一)
一) Neutron计算节点部署 1.安装软件包 # yum install -y openstack-neutron-linuxbridge ebtables ipset 2.配置文件neutron ...
- 【openstack N版】——网络服务neutron
一.openstack网络服务neutron 1.1neutron介绍 neutron是openstack重要组件之一,在以前是时候没有neutron项目,早期的时候是没有neutron,早期所使用的 ...
- 【openstack N版】——网络服务neutron(flat扁平网络)
一.openstack网络服务neutron 1.1neutron介绍 neutron是openstack重要组件之一,在以前是时候没有neutron项目,早期的时候是没有neutron,早期所使用的 ...
随机推荐
- 堆与栈(heap and stack)在c/c++的应用(概念)
在学习c/c++时,我们经常会遇到 堆与栈 的问题,今天就来讲一下各类情况下的heap,stack的应用. 程序内存布局场景下,堆与栈表示两种内存管理方式: 1.内部分配时,堆和栈表示两种不同的内存管 ...
- C++ - 结构体构造函数使用总结
关于结构体构造函数使用总结 三种结构体初始化方法 1.利用结构体自带的默认构造函数 2.利用带参数的构造函数 3.利用默认无参的构造函数 要点: 在建立结构体数组时,如果只写了带参数的构造函数将会出现 ...
- SpringCloud学习笔记(三、SpringCloud Netflix Eureka)
目录: 服务发现简介 SpringCloud Netflix Eureka应用 Eureka高可用 Eureka源码分析 >>> Eureka Client初始化(客户端定时获取服务 ...
- keeplived+lvs(主从热备+负载均衡)
本次实验基于DR负载均衡模式(直接路由),设置一个VIP(Virtual IP)为192.168.1.225,用户只需要访问这个IP地址即可获得网页服务.其中,负载均衡主机为192.168.1.221 ...
- Pwnable-leg
Download : http://pwnable.kr/bin/leg.c Download :http://pwnable.kr/bin/leg.asm 友链 https://blog.csdn. ...
- selenium环境搭建:
环境搭建 基于python3和selenium3做自动化测试,俗话说:工欲善其事必先利其器:没有金刚钻就不揽那瓷器活,磨刀不误砍柴工,因此你必须会搭建基本的开发环境,掌握python基本的语法和一个I ...
- arduino (3) 控制sim900A发送短信
狗屎佳世通旗舰店,卖的什么破玩意sim900a芯片,不支持联通卡,还生明模块支持双卡的 之前买的esp8266-07都是内存偷工减料 买的液体浊度传感器给的原理图也不给基本接线. 差评垃圾店,你敢卖就 ...
- sublime3配置
1.sunblim3配置 一旦配置好了,如果换了一台电脑那直接将C:\Users\djx\AppData\Roaming\Sublime Text 3\Packages\User文件夹拷贝到新下载的s ...
- 第02组 Beta冲刺(1/5)
队名:無駄無駄 组长博客 作业博客 组员情况 张越洋 过去两天完成了哪些任务 初步任务分配 提交记录(全组共用) 接下来的计划 完善接口文档 还剩下哪些任务 学习软工的理论课 学习代码评估.测试 燃尽 ...
- Springboot使用ehcache缓存
本文部分步骤继承于springboot使用cache缓存,如果有不清楚的,请移驾springboot使用cache缓存 ehcache是一种广泛使用的开源Java分布式缓存.主要面向通用缓存,Java ...