* 因个人能力有限,为保证日后方便参照再此做个记录,如果遇到问题,请大家反馈我,我会及时更正错误。
转载请注明链接http://www.cnblogs.com/zhangyayun/p/6656921.html
拓扑图
架构图:
Controller节点部署
一、基础环境
yum install vim wget lrzsz unzip python-openstackclient openstack-utils openstack-selinux chrony mariadb mariadb-server python2-PyMySQL rabbitmq-server memcached python-memcached -y yum upgrade
1、chrony
sed -i 's/0.centos.pool.ntp.org/ntp.pool.org/' /etc/chrony.conf sed -i 's/1.centos.pool.ntp.org/210.72.145.44/' /etc/chrony.conf sed -i 's/2.centos.pool.ntp.org/s1a.time.edu.cn/' /etc/chrony.conf sed -i 's/3.centos.pool.ntp.org/s1b.time.edu.cn/' /etc/chrony.conf sed -i 's/#allow 192.168\/16/allow 192.168.0.0\/16/' /etc/chrony.conf systemctl enable chronyd.service systemctl start chronyd.service
2、mariadb
cat >/etc/my.cnf.d/openstack.cnf<<EOF [mysqld] bind-address = 192.168.120.30 default-storage-engine = innodb innodb_file_per_table = on max_connections = 4096 collation-server = utf8_general_ci character-set-server = utf8 EOF systemctl enable mariadb.service systemctl start mariadb.service
3、memcached
sed -i 's/::1/192.168.120.30/' /etc/sysconfig/memcached systemctl enable memcached.service systemctl start memcached.service
4、rabbitmq-server
systemctl enable rabbitmq-server systemctl start rabbitmq-server rabbitmq-plugins enable rabbitmq_management rabbitmqctl add_user openstack darwinlab.cn rabbitmqctl set_permissions openstack ".*" ".*" ".*"
二、创建数据库
1、初始化数据库
mysql_secure_installation
2、创建数据库
CREATE DATABASE keystone; CREATE DATABASE glance; CREATE DATABASE nova_api; CREATE DATABASE nova; CREATE DATABASE nova_cell0; CREATE DATABASE neutron; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'darwinlab.cn'; GRANT ALL PRIVILEGES ON *.* TO zyy@‘192.168.3.45’ IDENTIFIED BY 'zyy13701201041'; FLUSH PRIVILEGES; exit
三、认证服务
1、安装基础服务
yum install openstack-keystone httpd mod_wsgi openstack-config --set /etc/keystone/keystone.conf database connection mysql+pymysql://keystone:darwinlab.cn@192.168.120.30/keystone openstack-config --set /etc/keystone/keystone.conf token provider fernet、、
2、同步数据库
su -s /bin/sh -c "keystone-manage db_sync" keystone
3、创建fernet
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
4、API 注册
keystone-manage bootstrap --bootstrap-password darwinlab.cn \ --bootstrap-admin-url http://192.168.120.30:35357/v3/ \ --bootstrap-internal-url http://192.168.120.30:5000/v3/ \ --bootstrap-public-url http://192.168.120.30:5000/v3/ \ --bootstrap-region-id RegionOne5
5、配置HTTP
sed -i 's/#www.example.com:80/controller/' /etc/httpd/conf/httpd.conf
6、创建认证配置文件
ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/
7、启动服务
systemctl enable httpd.service systemctl start httpd.service8
8、创建admin脚本
cd ~ touch admin.sh chmod o+x admin.sh cat > admin.sh <<EOF export OS_PROJECT_DOMAIN_NAME=Default export OS_USER_DOMAIN_NAME=Default export OS_PROJECT_NAME=admin export OS_USERNAME=admin export OS_PASSWORD=darwinlab.cn export OS_AUTH_URL=http://192.168.120.30:35357/v3 export OS_IDENTITY_API_VERSION=3 export OS_IMAGE_API_VERSION=2 EOF
9、创建域,项目、用户、和角色
openstack project create --domain default --description "Service Project" service \ openstack project create --domain default --description "Demo Project" demo \ openstack user create --domain default --password-prompt demo openstack role create user openstack role add --project demo --user demo user
四、镜像服务
1、创建glance、角色、及服务
openstack user create --domain default --password-prompt glance openstack role add --project service --user glance admin openstack service create --name glance --description "OpenStack Image" image openstack endpoint create --region RegionOne image public http://192.168.120.30:9292 &&\ openstack endpoint create --region RegionOne image internal http://192.168.120.30:9292 && \ openstack endpoint create --region RegionOne image admin http://192.168.120.30:9292
2、安装glance服务
yum install openstack-glance -y
3、配置glance API
openstack-config --set /etc/glance/glance-api.conf database connection mysql+pymysql://glance:darwinlab.cn@192.168.120.30/glance openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_uri http://192.168.120.30:5000 openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_url http://192.168.120.30:35357 openstack-config --set /etc/glance/glance-api.conf keystone_authtoken memcached_servers 192.168.120.30:11211 openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_type password openstack-config --set /etc/glance/glance-api.conf keystone_authtoken project_domain_name default openstack-config --set /etc/glance/glance-api.conf keystone_authtoken user_domain_name default openstack-config --set /etc/glance/glance-api.conf keystone_authtoken project_name service openstack-config --set /etc/glance/glance-api.conf keystone_authtoken username glance openstack-config --set /etc/glance/glance-api.conf keystone_authtoken password darwinlab.cn openstack-config --set /etc/glance/glance-api.conf paste_deploy flavor keystone openstack-config --set /etc/glance/glance-api.conf glance_store stores file,http openstack-config --set /etc/glance/glance-api.conf glance_store default_store file openstack-config --set /etc/glance/glance-api.conf glance_store filesystem_store_datadir /var/lib/glance/images/
4、配置glance 注册服务
openstack-config --set /etc/glance/glance-registry.conf database connection mysql+pymysql://glance:darwinlab.cn@192.168.120.30/glance openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_uri http://192.168.120.30:5000 openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_url http://192.168.120.30:35357 openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken memcached_servers 192.168.120.30:11211 openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_type password openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken project_domain_name default openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken user_domain_name default openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken project_name service openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken username glance openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken password darwinlab.cn openstack-config --set /etc/glance/glance-registry.conf paste_deploy flavor keystone
5、同步glance API和register数据库
su -s /bin/sh -c "glance-manage db_sync" glance
6、启动服务
systemctl enable openstack-glance-api.service openstack-glance-registry.service systemctl start openstack-glance-api.service openstack-glance-registry.service
7、上传测试image
openstack image create "cirros" --file cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bare --public
五、计算服务控制端
1、创建nova、角色、及服务
openstack user create --domain default --password-prompt nova openstack role add --project service --user nova admin openstack service create --name nova --description "OpenStack Compute" compute openstack endpoint create --region RegionOne compute public http://192.168.120.30:8774/v2.1 &&\ openstack endpoint create --region RegionOne compute internal http://192.168.120.30:8774/v2.1 &&\ openstack endpoint create --region RegionOne compute admin http://192.168.120.30:8774/v2.1
2、安装placement服务
openstack user create --domain default --password-prompt placement openstack role add --project service --user placement admin openstack service create --name placement --description "Placement API" placement openstack endpoint create --region RegionOne placement public http://192.168.120.30:8778 && \ openstack endpoint create --region RegionOne placement internal http://192.168.120.30:8778 && \ openstack endpoint create --region RegionOne placement admin http://192.168.120.30:8778
3、安装nova控制服务
yum install openstack-nova-api openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler openstack-nova-placement-api -
4、配置nova控制服务
openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis osapi_compute,metadata openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.120.30 openstack-config --set /etc/nova/nova.conf DEFAULT use_neutron True openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver openstack-config --set /etc/nova/nova.conf DEFAULT transport_url rabbit://openstack:darwinlab.cn@192.168.120.30 openstack-config --set /etc/nova/nova.conf api_database connection mysql+pymysql://nova:darwinlab.cn@192.168.120.30/nova_api openstack-config --set /etc/nova/nova.conf database connection mysql+pymysql://nova:darwinlab.cn@192.168.120.30/nova openstack-config --set /etc/nova/nova.conf api auth_strategy keystone openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_uri http://192.168.120.30:5000 openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url http://192.168.120.30:35357 openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers 192.168.120.30:11211 openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_type password openstack-config --set /etc/nova/nova.conf keystone_authtoken project_domain_name default openstack-config --set /etc/nova/nova.conf keystone_authtoken user_domain_name default openstack-config --set /etc/nova/nova.conf keystone_authtoken project_name service openstack-config --set /etc/nova/nova.conf keystone_authtoken username nova openstack-config --set /etc/nova/nova.conf keystone_authtoken password darwinlab.cn openstack-config --set /etc/nova/nova.conf vnc enabled True openstack-config --set /etc/nova/nova.conf vnc vncserver_listen \$my_ip openstack-config --set /etc/nova/nova.conf vnc vncserver_proxyclient_address \$my_ip openstack-config --set /etc/nova/nova.conf glance api_servers http://192.168.120.30:9292 openstack-config --set /etc/nova/nova.conf oslo_concurrency lock_path /var/lib/nova/tmp openstack-config --set /etc/nova/nova.conf placement os_region_name RegionOne openstack-config --set /etc/nova/nova.conf placement project_domain_name Default openstack-config --set /etc/nova/nova.conf placement project_name service openstack-config --set /etc/nova/nova.conf placement auth_type password openstack-config --set /etc/nova/nova.conf placement user_domain_name Default openstack-config --set /etc/nova/nova.conf placement auth_url http://192.168.120.30:35357/v3 openstack-config --set /etc/nova/nova.conf placement username placement openstack-config --set /etc/nova/nova.conf placement password darwinlab.cn openstack-config --set /etc/nova/nova.conf scheduler discover_hosts_in_cells_interval 300
5、配置/etc/httpd/conf.d/00-nova-placement-api.conf(因apache 2.2 和2.4权限问题需要修改配置文件如下)
Listen 8778 <VirtualHost *:8778> WSGIProcessGroup nova-placement-api WSGIApplicationGroup %{GLOBAL} WSGIPassAuthorization On WSGIDaemonProcess nova-placement-api processes=3 threads=1 user=nova group=nova WSGIScriptAlias / /usr/bin/nova-placement-api <Directory /usr/bin> Options FollowSymlinks AllowOverride none Require all granted </Directory> <IfVersion >= 2.4> ErrorLogFormat "%M" </IfVersion> ErrorLog /var/log/nova/nova-placement-api.log #SSLEngine On #SSLCertificateFile ... #SSLCertificateKeyFile ... </VirtualHost>
6、同步数据库
su -s /bin/sh -c "nova-manage api_db sync" nova
7、注册cell0数据库
su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
8、创建cell1数据库
su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
9、同步数据库
su -s /bin/sh -c "nova-manage db sync" nova
10、验证nova cell0和cell1注册的正确性
nova-manage cell_v2 list_cells
11、加载服务并启动服务
systemctl enable openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service && \ systemctl start openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
12、重启httpd(因修改了nova-placement-api)
systemctl restart httpd
13、验证
nova-status upgrade check
六、安装网络控制器节点 (基于open-vswitch)
1、创建neutron、角色、及服务
openstack user create --domain default --password-prompt neutron 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://192.168.120.30:9696 && \ openstack endpoint create --region RegionOne network internal http://192.168.120.30:9696 && \ openstack endpoint create --region RegionOne network admin http://192.168.120.30:9696
#网络类型1:提供者网络
1:安装软件包
yum install openstack-neutron openstack-neutron-ml2 ebtables -y
2、配置网络服务组件(基本配置)
openstack-config --set /etc/neutron/neutron.conf database connection mysql+pymysql://neutron:darwinlab.cn@192.168.120.30/neutron openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2 openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins openstack-config --set /etc/neutron/neutron.conf DEFAULT transport_url rabbit://openstack:darwinlab.cn@192.168.120.30 openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone 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 dhcp_agents_per_network 2 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://192.168.120.30:5000 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_url http://192.168.120.30:35357 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken memcached_servers 192.168.120.30:11211 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_type password openstack-config --set /etc/neutron/neutron.conf keystone_authtoken project_domain_name default openstack-config --set /etc/neutron/neutron.conf keystone_authtoken user_domain_name default openstack-config --set /etc/neutron/neutron.conf keystone_authtoken project_name service openstack-config --set /etc/neutron/neutron.conf keystone_authtoken username neutron openstack-config --set /etc/neutron/neutron.conf keystone_authtoken password darwinlab.cn openstack-config --set /etc/neutron/neutron.conf nova auth_url http://192.168.120.30:35357 openstack-config --set /etc/neutron/neutron.conf nova auth_type password openstack-config --set /etc/neutron/neutron.conf nova project_domain_name default openstack-config --set /etc/neutron/neutron.conf nova user_domain_name default openstack-config --set /etc/neutron/neutron.conf nova region_name RegionOne openstack-config --set /etc/neutron/neutron.conf nova project_name service openstack-config --set /etc/neutron/neutron.conf nova username nova openstack-config --set /etc/neutron/neutron.conf nova password darwinlab.cn openstack-config --set /etc/neutron/neutron.conf oslo_concurrency lock_path /var/lib/neutron/tmp
3:配置二层插件(ovs)
openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers flat,vlan openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types 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 extension_drivers port_security openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_type_flat flat_networks provider openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_type_vlan network_vlan_ranges provider:200:201 openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup enable_security_group true
4:配置计算服务使用网络
openstack-config --set /etc/nova/nova.conf neutron url http://192.168.120.30:9696 openstack-config --set /etc/nova/nova.conf neutron auth_url http://192.168.120.30:35357 openstack-config --set /etc/nova/nova.conf neutron auth_type password openstack-config --set /etc/nova/nova.conf neutron project_domain_name default openstack-config --set /etc/nova/nova.conf neutron user_domain_name default openstack-config --set /etc/nova/nova.conf neutron region_name RegionOne openstack-config --set /etc/nova/nova.conf neutron project_name service openstack-config --set /etc/nova/nova.conf neutron username neutron openstack-config --set /etc/nova/nova.conf neutron password darwinlab.cn openstack-config --set /etc/nova/nova.conf neutron service_metadata_proxy true openstack-config --set /etc/nova/nova.conf neutron metadata_proxy_shared_secret darwinlab.cn
5:配置软连接
ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
6:同步数据库
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
7:启动并加载服务
systemctl restart openstack-nova-api.service && \ systemctl enable neutron-server.service && \ systemctl start neutron-server.service
node1 节点部署
一、安装计算节点
yum install net-tools vim wget lrzsz unzip python-openstackclient openstack-nova-compute openstack-utils openstack-selinux chrony -y yum update -y
1、chrony
sed -i 's/0.centos.pool.ntp.org/192.168.120.30/' /etc/chrony.conf systemctl enable chronyd.service &&\ systemctl start chronyd.service
2、配置nova计算节点
openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis osapi_compute,metadata openstack-config --set /etc/nova/nova.conf DEFAULT transport_url rabbit://openstack:darwinlab.cn@192.168.120.30 openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.120.31 openstack-config --set /etc/nova/nova.conf DEFAULT use_neutron True openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver openstack-config --set /etc/nova/nova.conf api auth_strategy keystone openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_uri http://192.168.120.30:5000 openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url http://192.168.120.30:35357 openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers 192.168.120.30:11211 openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_type password openstack-config --set /etc/nova/nova.conf keystone_authtoken project_domain_name default openstack-config --set /etc/nova/nova.conf keystone_authtoken user_domain_name default openstack-config --set /etc/nova/nova.conf keystone_authtoken project_name service openstack-config --set /etc/nova/nova.conf keystone_authtoken username nova openstack-config --set /etc/nova/nova.conf keystone_authtoken password darwinlab.cn openstack-config --set /etc/nova/nova.conf vnc enabled True openstack-config --set /etc/nova/nova.conf vnc vncserver_listen 0.0.0.0 openstack-config --set /etc/nova/nova.conf vnc vncserver_proxyclient_address \$my_ip openstack-config --set /etc/nova/nova.conf vnc novncproxy_base_url http://192.168.120.30:6080/vnc_auto.html openstack-config --set /etc/nova/nova.conf glance api_servers http://192.168.120.30:9292 openstack-config --set /etc/nova/nova.conf oslo_concurrency lock_path /var/lib/nova/tmp openstack-config --set /etc/nova/nova.conf placement os_region_name RegionOne openstack-config --set /etc/nova/nova.conf placement project_domain_name Default openstack-config --set /etc/nova/nova.conf placement project_name service openstack-config --set /etc/nova/nova.conf placement auth_type password openstack-config --set /etc/nova/nova.conf placement user_domain_name Default openstack-config --set /etc/nova/nova.conf placement auth_url http://192.168.120.30:35357/v3 openstack-config --set /etc/nova/nova.conf placement username placement openstack-config --set /etc/nova/nova.conf placement password darwinlab.cn openstack-config --set /etc/nova/nova.conf scheduler discover_hosts_in_cells_interval 300
二、计算节点使用网络
1、安装软件包
yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch -y
2、配置客户端组件
openstack-config --set /etc/neutron/neutron.conf database connection mysql+pymysql://neutron:darwinlab.cn@192.168.120.30/neutron openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2 openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins openstack-config --set /etc/neutron/neutron.conf DEFAULT transport_url rabbit://openstack:darwinlab.cn@192.168.120.30 openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://192.168.120.30:5000 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_url http://192.168.120.30:35357 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken memcached_servers 192.168.120.30:11211 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_type password openstack-config --set /etc/neutron/neutron.conf keystone_authtoken project_domain_name default openstack-config --set /etc/neutron/neutron.conf keystone_authtoken user_domain_name default openstack-config --set /etc/neutron/neutron.conf keystone_authtoken project_name service openstack-config --set /etc/neutron/neutron.conf keystone_authtoken username neutron openstack-config --set /etc/neutron/neutron.conf keystone_authtoken password darwinlab.cn openstack-config --set /etc/neutron/neutron.conf nova auth_url http://192.168.120.30:35357 openstack-config --set /etc/neutron/neutron.conf nova auth_type password openstack-config --set /etc/neutron/neutron.conf nova project_domain_name default openstack-config --set /etc/neutron/neutron.conf nova user_domain_name default openstack-config --set /etc/neutron/neutron.conf nova region_name RegionOne openstack-config --set /etc/neutron/neutron.conf nova project_name service openstack-config --set /etc/neutron/neutron.conf nova username nova openstack-config --set /etc/neutron/neutron.conf nova password darwinlab.cn openstack-config --set /etc/neutron/neutron.conf oslo_concurrency lock_path /var/lib/neutron/tmp
3、配置OVS
openstack-config --set /etc/neutron/plugins/ml2/openvswitch_agent.ini ovs bridge_mappings provider:br-provider openstack-config --set /etc/neutron/plugins/ml2/openvswitch_agent.ini securitygroup firewall_driver iptables_hybrid
4:配置DHCP
openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT interface_driver openvswitch openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT enable_isolated_metadata true openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT force_metadata True
5、配置metadata agent
openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT nova_metadata_ip 192.168.120.30 openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT metadata_proxy_shared_secret darwinlab.cn systemctl enable openvswitch.service && systemctl start openvswitch.service
6、创建ovs管理物理接口
ovs-vsctl add-br br-provider ovs-vsctl add-port br-provider enp3s0
7、启动ovs服务
systemctl enable neutron-openvswitch-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service systemctl start neutron-openvswitch-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service
8:配置计算服务使用网络
openstack-config --set /etc/nova/nova.conf neutron url http://192.168.120.30:9696 openstack-config --set /etc/nova/nova.conf neutron auth_url http://192.168.120.30:35357 openstack-config --set /etc/nova/nova.conf neutron auth_type password openstack-config --set /etc/nova/nova.conf neutron project_domain_name default openstack-config --set /etc/nova/nova.conf neutron user_domain_name default openstack-config --set /etc/nova/nova.conf neutron region_name RegionOne openstack-config --set /etc/nova/nova.conf neutron project_name service openstack-config --set /etc/nova/nova.conf neutron username neutron openstack-config --set /etc/nova/nova.conf neutron password darwinlab.cn openstack-config --set /etc/nova/nova.conf neutron service_metadata_proxy true openstack-config --set /etc/nova/nova.conf neutron metadata_proxy_shared_secret darwinlab.cn
9、启动服务
systemctl enable libvirtd openstack-nova-compute systemctl start libvirtd openstack-nova-compute