
In Kilo Nova deprecated proxying options in the DEFAULT group. Instead they were moved to the "neutron" group. This resulted in the metadata service not serving up metadata. See this bug for more information: https://bugzilla.redhat.com/show_bug.cgi?id=1217999 Change-Id: I4f7eac0100d31c5329f8d1857f6d7da1bb6784da
138 lines
6.4 KiB
Bash
Executable File
138 lines
6.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
. /opt/kolla/kolla-common.sh
|
|
|
|
: ${NOVA_DB_USER:=nova}
|
|
: ${NOVA_DB_NAME:=nova}
|
|
: ${NOVA_KEYSTONE_USER:=admin}
|
|
: ${NOVA_KEYSTONE_PASSWORD:=kolla}
|
|
: ${ADMIN_TENANT_NAME:=admin}
|
|
: ${RABBIT_USERID:=guest}
|
|
: ${RABBIT_PASSWORD:=guest}
|
|
: ${NETWORK_MANAGER:=nova}
|
|
: ${FLAT_NETWORK:=eth1}
|
|
: ${PUBLIC_NETWORK:=eth0}
|
|
: ${ENABLED_APIS:=ec2,osapi_compute,metadata}
|
|
: ${METADATA_HOST:=$PUBLIC_IP}
|
|
: ${NEUTRON_SHARED_SECRET:=sharedsecret}
|
|
|
|
check_required_vars KEYSTONE_ADMIN_TOKEN NOVA_DB_PASSWORD \
|
|
RABBITMQ_SERVICE_HOST GLANCE_API_SERVICE_HOST \
|
|
KEYSTONE_PUBLIC_SERVICE_HOST PUBLIC_IP \
|
|
PUBLIC_INTERFACE FLAT_INTERFACE DEBUG_LOGGING \
|
|
VERBOSE_LOGGING
|
|
|
|
cfg=/etc/nova/nova.conf
|
|
|
|
crudini --set $cfg DEFAULT amqp_durable_queues False
|
|
crudini --set $cfg DEFAULT rabbit_host ${RABBITMQ_SERVICE_HOST}
|
|
crudini --set $cfg DEFAULT rabbit_port 5672
|
|
crudini --set $cfg DEFAULT rabbit_hosts ${RABBITMQ_SERVICE_HOST}:5672
|
|
crudini --set $cfg DEFAULT rabbit_use_ssl False
|
|
crudini --set $cfg DEFAULT rabbit_userid ${RABBIT_USERID}
|
|
crudini --set $cfg DEFAULT rabbit_password "${RABBIT_PASSWORD}"
|
|
crudini --set $cfg DEFAULT rabbit_virtual_host /
|
|
crudini --set $cfg DEFAULT rabbit_ha_queues False
|
|
crudini --set $cfg DEFAULT rpc_backend nova.openstack.common.rpc.impl_kombu
|
|
crudini --set $cfg DEFAULT enabled_apis ${ENABLED_APIS}
|
|
crudini --set $cfg DEFAULT ec2_listen 0.0.0.0
|
|
crudini --set $cfg DEFAULT osapi_compute_listen 0.0.0.0
|
|
crudini --set $cfg DEFAULT osapi_compute_workers 8
|
|
crudini --set $cfg DEFAULT metadata_host ${METADATA_HOST}
|
|
crudini --set $cfg DEFAULT metadata_listen 0.0.0.0
|
|
crudini --set $cfg DEFAULT metadata_workers 8
|
|
crudini --set $cfg DEFAULT service_down_time 60
|
|
crudini --set $cfg DEFAULT rootwrap_config /etc/nova/rootwrap.conf
|
|
crudini --set $cfg DEFAULT auth_strategy keystone
|
|
crudini --set $cfg DEFAULT use_forwarded_for False
|
|
crudini --set $cfg DEFAULT glance_api_servers ${GLANCE_API_SERVICE_HOST}:9292
|
|
crudini --set $cfg DEFAULT cpu_allocation_ratio 16.0
|
|
crudini --set $cfg DEFAULT ram_allocation_ratio 1.5
|
|
crudini --set $cfg DEFAULT scheduler_default_filters RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,CoreFilter
|
|
crudini --set $cfg DEFAULT compute_driver nova.virt.libvirt.LibvirtDriver
|
|
crudini --set $cfg DEFAULT vif_plugging_is_fatal True
|
|
crudini --set $cfg DEFAULT vif_plugging_timeout 300
|
|
crudini --set $cfg DEFAULT volume_api_class nova.volume.cinder.API
|
|
crudini --set $cfg DEFAULT image_service nova.image.glance.GlanceImageService
|
|
crudini --set $cfg DEFAULT osapi_volume_listen 0.0.0.0
|
|
crudini --set $cfg DEFAULT instances_path /var/lib/nova/instances
|
|
crudini --set $cfg DEFAULT lock_path /var/lib/nova/lock
|
|
|
|
# This is not created by openstack-nova packaging
|
|
mkdir -p /var/lib/nova/lock
|
|
|
|
# configure logging
|
|
crudini --set $cfg DEFAULT log_dir "${NOVA_LOG_DIR}"
|
|
crudini --set $cfg DEFAULT debug "${DEBUG_LOGGING}"
|
|
crudini --set $cfg DEFAULT verbose "${VERBOSE_LOGGING}"
|
|
|
|
crudini --set $cfg DEFAULT admin_token "${KEYSTONE_ADMIN_TOKEN}"
|
|
|
|
crudini --set $cfg conductor workers 8
|
|
|
|
if [ "${NETWORK_MANAGER}" == "nova" ] ; then
|
|
crudini --set $cfg DEFAULT network_manager nova.network.manager.FlatDHCPManager
|
|
crudini --set $cfg DEFAULT firewall_driver nova.virt.libvirt.firewall.IptablesFirewallDriver
|
|
crudini --set $cfg DEFAULT network_size 254
|
|
crudini --set $cfg DEFAULT allow_same_net_traffic False
|
|
crudini --set $cfg DEFAULT multi_host True
|
|
crudini --set $cfg DEFAULT send_arp_for_ha True
|
|
crudini --set $cfg DEFAULT share_dhcp_address True
|
|
crudini --set $cfg DEFAULT force_dhcp_release True
|
|
crudini --set $cfg DEFAULT flat_interface $FLAT_INTERFACE
|
|
crudini --set $cfg DEFAULT flat_network_bridge br100
|
|
crudini --set $cfg DEFAULT public_interface $PUBLIC_INTERFACE
|
|
elif [ "${NETWORK_MANAGER}" == "neutron" ] ; then
|
|
check_required_vars NEUTRON_SHARED_SECRET
|
|
crudini --set $cfg neutron service_metadata_proxy True
|
|
crudini --set $cfg neutron metadata_proxy_shared_secret ${NEUTRON_SHARED_SECRET}
|
|
crudini --set $cfg DEFAULT neutron_default_tenant_id default
|
|
crudini --set $cfg DEFAULT network_api_class nova.network.neutronv2.api.API
|
|
crudini --set $cfg DEFAULT security_group_api neutron
|
|
if [[ "${MECHANISM_DRIVERS}" =~ linuxbridge ]] ; then
|
|
crudini --set $cfg DEFAULT linuxnet_interface_driver nova.network.linux_net.NeutronLinuxBridgeInterfaceDriver
|
|
elif [[ "${MECHANISM_DRIVERS}" =~ openvswitch ]] ; then
|
|
crudini --set $cfg DEFAULT linuxnet_interface_driver nova.network.linux_net.LinuxOVSInterfaceDriver
|
|
fi
|
|
crudini --set $cfg DEFAULT libvirt_vif_driver nova.virt.libvirt.vif.LibvirtGenericVIFDriver
|
|
crudini --set $cfg DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver
|
|
crudini --set $cfg neutron url http://${NEUTRON_SERVER_SERVICE_HOST}:${NEUTRON_SERVER_SERVICE_PORT}
|
|
crudini --set $cfg neutron auth_strategy keystone
|
|
crudini --set $cfg neutron admin_auth_url ${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0
|
|
crudini --set $cfg neutron admin_tenant_name ${ADMIN_TENANT_NAME}
|
|
crudini --set $cfg neutron admin_username ${NEUTRON_KEYSTONE_USER}
|
|
crudini --set $cfg neutron admin_password ${NEUTRON_KEYSTONE_PASSWORD}
|
|
else
|
|
echo "Incorrect NETWORK_MANAGER ${NETWORK_MANAGER}. Supported options are nova and neutron."
|
|
exit 1
|
|
fi
|
|
|
|
# disabled pending answers to http://lists.openstack.org/pipermail/openstack/2014-October/009997.html
|
|
#for option in auth_protocol auth_host auth_port; do
|
|
# crudini --del $cfg \
|
|
# keystone_authtoken \
|
|
# $option
|
|
#done
|
|
|
|
crudini --set $cfg keystone_authtoken auth_uri "http://${KEYSTONE_PUBLIC_SERVICE_HOST}:5000/"
|
|
crudini --set $cfg keystone_authtoken auth_protocol http
|
|
crudini --set $cfg keystone_authtoken auth_host ${KEYSTONE_PUBLIC_SERVICE_HOST}
|
|
crudini --set $cfg keystone_authtoken auth_port 5000
|
|
|
|
crudini --set $cfg keystone_authtoken admin_user ${NOVA_KEYSTONE_USER}
|
|
crudini --set $cfg keystone_authtoken admin_password "${NOVA_KEYSTONE_PASSWORD}"
|
|
crudini --set $cfg keystone_authtoken admin_tenant_name ${ADMIN_TENANT_NAME}
|
|
|
|
cat > /openrc <<EOF
|
|
export OS_AUTH_URL="http://${KEYSTONE_PUBLIC_SERVICE_HOST}:5000/v2.0"
|
|
export OS_USERNAME="${NOVA_KEYSTONE_USER}"
|
|
export OS_PASSWORD="${NOVA_KEYSTONE_PASSWORD}"
|
|
export OS_TENANT_NAME="${ADMIN_TENANT_NAME}"
|
|
EOF
|
|
|
|
# Configure database connection
|
|
crudini --set $cfg \
|
|
database \
|
|
connection \
|
|
"mysql://${NOVA_DB_USER}:${NOVA_DB_PASSWORD}@${MARIADB_SERVICE_HOST}/${NOVA_DB_NAME}"
|