#!/bin/bash
echo '-------------网卡设备----------------------------------'
dev=eno33554992
echo '-------------节点IP----------------------------------'
controller=192.168.2.11
computer1=192.168.2.12
echo '-------------服务密码----------------------------------'
keystone=keystone
glance=glance
nova=nova
neutron=neutron
rabbit=rabbit
echo '-------------用户密码----------------------------------'
admin=admin
demo=demo
echo '------------下载所需安装包-------------------------------------------'
yum -y install openstack-nova-compute vim openstack-neutron-linuxbridge ebtables ipset qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client virt-install virt-viewer
echo '---------------备份配置文件----------------------------------------'
cp /etc/nova/nova.conf /etc/nova/nova.conf.bak
cp /etc/neutron/neutron.conf /etc/neutron/neutron.conf.bak
echo '---------------开始配置nova--------------------------------'
echo '---------------/etc/nova/nova.conf--------------------------------'
echo "[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
my_ip = $computer1
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = $rabbit
[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 = nova
password = $nova
[vnc]
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = $computer1
novncproxy_base_url = http://controller:6080/vnc_auto.html
[glance]
api_servers = http://controller:9292
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
[libvirt]
virt_type = qemu " > /etc/nova/nova.conf
echo '-----------------配置权限--------------------------------'
chown -R nova.nova /var/log/nova
chown -R nova.nova /etc/nova/
echo '-----------------启动服务--------------------------------'
systemctl enable libvirtd.service openstack-nova-compute.service
systemctl start libvirtd.service openstack-nova-compute.service
echo '-----------------开始配置neutron--------------------------------'
echo '----------------/etc/neutron/neutron.conf---------------------------'
echo "[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = $rabbit
[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
[oslo_concurrency]
lock_path = /var/lib/neutron/tmp" > /etc/neutron/neutron.conf
echo '--------/etc/neutron/plugins/ml2/linuxbridge_agent.ini------'
echo "[linux_bridge]
physical_interface_mappings = provider:$dev
[vxlan]
enable_vxlan = True
local_ip = $computer1
l2_population = True
[securitygroup]
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver " > /etc/neutron/plugins/ml2/linuxbridge_agent.ini
echo '----------/etc/nova/nova.conf--------------'
echo "[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 " >> /etc/nova/nova.conf
echo '----------修改权限---------------'
chown -R neutron.neutron /var/log/neutron/
chown -R neutron.neutron /etc/neutron/
echo '-----------------重新启动nova服务--------------------------------'
systemctl restart openstack-nova-compute.service
echo '----------------启动neutron服务--------------------------------'
systemctl enable neutron-linuxbridge-agent.service
systemctl start neutron-linuxbridge-agent.service
echo '-----------------END--------------------------------'
echo '-------------网卡设备----------------------------------'
dev=eno33554992
echo '-------------节点IP----------------------------------'
controller=192.168.2.11
computer1=192.168.2.12
echo '-------------服务密码----------------------------------'
keystone=keystone
glance=glance
nova=nova
neutron=neutron
rabbit=rabbit
echo '-------------用户密码----------------------------------'
admin=admin
demo=demo
echo '------------下载所需安装包-------------------------------------------'
yum -y install openstack-nova-compute vim openstack-neutron-linuxbridge ebtables ipset qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client virt-install virt-viewer
echo '---------------备份配置文件----------------------------------------'
cp /etc/nova/nova.conf /etc/nova/nova.conf.bak
cp /etc/neutron/neutron.conf /etc/neutron/neutron.conf.bak
echo '---------------开始配置nova--------------------------------'
echo '---------------/etc/nova/nova.conf--------------------------------'
echo "[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
my_ip = $computer1
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = $rabbit
[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 = nova
password = $nova
[vnc]
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = $computer1
novncproxy_base_url = http://controller:6080/vnc_auto.html
[glance]
api_servers = http://controller:9292
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
[libvirt]
virt_type = qemu " > /etc/nova/nova.conf
echo '-----------------配置权限--------------------------------'
chown -R nova.nova /var/log/nova
chown -R nova.nova /etc/nova/
echo '-----------------启动服务--------------------------------'
systemctl enable libvirtd.service openstack-nova-compute.service
systemctl start libvirtd.service openstack-nova-compute.service
echo '-----------------开始配置neutron--------------------------------'
echo '----------------/etc/neutron/neutron.conf---------------------------'
echo "[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = $rabbit
[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
[oslo_concurrency]
lock_path = /var/lib/neutron/tmp" > /etc/neutron/neutron.conf
echo '--------/etc/neutron/plugins/ml2/linuxbridge_agent.ini------'
echo "[linux_bridge]
physical_interface_mappings = provider:$dev
[vxlan]
enable_vxlan = True
local_ip = $computer1
l2_population = True
[securitygroup]
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver " > /etc/neutron/plugins/ml2/linuxbridge_agent.ini
echo '----------/etc/nova/nova.conf--------------'
echo "[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 " >> /etc/nova/nova.conf
echo '----------修改权限---------------'
chown -R neutron.neutron /var/log/neutron/
chown -R neutron.neutron /etc/neutron/
echo '-----------------重新启动nova服务--------------------------------'
systemctl restart openstack-nova-compute.service
echo '----------------启动neutron服务--------------------------------'
systemctl enable neutron-linuxbridge-agent.service
systemctl start neutron-linuxbridge-agent.service
echo '-----------------END--------------------------------'