感谢指剑大佬发表的博客与视频!感谢所 爱大佬的支持!
(四)Open Stack(M)----Nova服务安装与配置
1.创建网络服务数据库(在controller
节点执行)
1)进入数据库
mysql -uroot -p000000
2)创建数据库(neutron
)
create database neutron;
3)创建neutron用户并授予所有权限本地登陆并设置密码
grant all privileges on neutron.* to 'neutron'@'localhost' identified by '000000';
4)创建neutron用户并授予所有权限任意地点登陆并设置密码
grant all privileges on neutron.* to 'neutron'@'%' identified by '000000';
5)退出数据库
\q
截图如下
2.获得管理员访问权限(在controller
节点执行)
. /root/admin-openrc • 1
3.创建服务证书,neutron用户(在controller
节点执行)
1)创建 neutron 用户
openstack user create --domain default --password 000000 neutron • 1
2)给 neutron 用户添加 admin 角色
openstack role add --project service --user neutron admin • 1
3)创建 neutron 服务实体
openstack service create --name neutron --description "OpenStack Networking" network • 1
截图如下
4.创建网络服务API端点(在controller
节点执行)
openstack endpoint create --region RegionOne network public http://controller:9696 • 1
openstack endpoint create --region RegionOne network internal http://controller:9696 • 1
openstack endpoint create --region RegionOne network admin http://controller:9696 • 1
截图如下
5.安装并配置网络服务组件(在controller
节点执行)
1.下载软件
yum -y install openstack-neutron openstack-neutron-ml2 openstack-neutron-linuxbridge ebtables • 1
2.编辑配置文件 /etc/neutron/neutron.conf
vi /etc/neutron/neutron.conf • 1
在[DEFAULT]部分,添加如下内容 core_plugin = ml2 service_plugins = router allow_overlapping_ips = True rpc_backend = rabbit auth_strategy = keystone notify_nova_on_port_status_changes = True notify_nova_on_port_data_changes = True 在 [database] 部分下,添加 connection = mysql+pymysql://neutron:000000@controller/neutron 在[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 = 000000 在[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 = 000000 在 [oslo_concurrency]部分,添加如下内容 lock_path = /var/lib/neutron/tmp 在[oslo_messaging_rabbit]部分,配添加如下内容: rabbit_host = controller rabbit_userid = openstack rabbit_password = 000000
部分截图如下
3.编辑/etc/neutron/plugins/ml2/ml2_conf.ini
文件
vi /etc/neutron/plugins/ml2/ml2_conf.ini • 1
在[ml2]下添加,添加如下内容 type_drivers = flat,vlan,vxlan,gre,local 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
部分截图如下
4.配置linuxbridge代理,编辑文件/etc/neutron/plugins/ml2/linuxbridge_agent.ini
vi /etc/neutron/plugins/ml2/linuxbridge_agent.ini • 1
在[linux_bridge]部分,添加如下内容 physical_interface_mappings = provider:eth1 #注意,此处的eth1为基础环境配置中的200的网段,也就是192.168.200.0/24子网对应的网卡名 在[securitygroup]部分,添加如下内容 enable_security_group = True firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver 在[vxlan]部分,添加如下内容 enable_vxlan = True local_ip = 192.168.100.10 l2_population = True
部分截图如下