Start OpenStack Services
After launching your stack by Devstack, you maybe stop some services or reboot your machine.
This script help you start nova,keystone,heat,cinder and glance.
#! /bin/bash
###########################
# start OpenStack Services
###########################
# Help
# this script is used to start several OpenStack Services after creating
# devstack. Typically, run it after restarting machine.
#constants
#functions
#call nohup
function call_async(){
nohup $* &
}
#start keystone
function start_keystone() {
echo "start keystone"
call_async python /opt/stack/keystone/bin/keystone-all \
--config-file /etc/keystone/keystone.conf \
--log-config /etc/keystone/logging.conf -d \
--debug \
> /tmp/start_keystone.log 2>&1 &
}
#glance
function start_glance {
echo "start glance registry"
call_async python /usr/local/bin/glance-registry \
--config-file=/etc/glance/glance-registry.conf \
> /tmp/start_glance_reg.log 2>&1 &
echo "start glance api"
call_async python /usr/local/bin/glance-api \
--config-file=/etc/glance/glance-api.conf \
> /tmp/start_glance_api.log 2>&1 &
}
#nova
function start_nova {
echo "start nova api"
call_async python /usr/local/bin/nova-api \
> /tmp/start_nova_api.log 2>&1 &
echo "start nova conductor"
call_async python /usr/local/bin/nova-conductor \
> /tmp/start_nova_conductor.log 2>&1 &
echo "start nova compute"
call_async python /usr/local/bin/nova-compute \
--config-file /etc/nova/nova.conf \
> /tmp/start_nova_compute.log 2>&1 &
echo "start nova cert"
call_async python /usr/local/bin/nova-cert \
> /tmp/start_nova_cert.log 2>&1 &
echo "start nova network"
call_async python /usr/local/bin/nova-network \
--config-file /etc/nova/nova.conf \
> /tmp/start_nova_network.log 2>&1 &
echo "start nova scheduler"
call_async python /usr/local/bin/nova-scheduler \
--config-file /etc/nova/nova.conf \
> /tmp/start_nova_scheduler.log 2>&1 &
echo "start nova novncproxy"
call_async python /usr/local/bin/nova-novncproxy \
--config-file /etc/nova/nova.conf \
--web /opt/stack/noVNC \
> /tmp/start_nova_novncproxy.log 2>&1 &
echo "start nova xvpvncproxy"
call_async python /usr/local/bin/nova-xvpvncproxy \
--config-file /etc/nova/nova.conf \
> /tmp/start_nova_vncproxy.log 2>&1 &
echo "start nova consoleauth"
call_async python /usr/local/bin/nova-consoleauth \
> /tmp/start_nova_noconsole.log 2>&1 &
echo "start nova objectstore"
call_async python /usr/local/bin/nova-objectstore \
> /tmp/start_nova_obj.log 2>&1 &
}
#cinder
function start_cinder {
echo "start cinder api"
call_async python /usr/local/bin/cinder-api \
--config-file /etc/cinder/cinder.conf \
> /tmp/start_cinder_api.log 2>&1 &
echo "start cinder scheduler"
call_async python /usr/local/bin/cinder-scheduler \
--config-file /etc/cinder/cinder.conf \
> /tmp/start_cinder_scheduler.log 2>&1 &
echo "start cinder volume"
call_async python /usr/local/bin/cinder-volume \
--config-file /etc/cinder/cinder.conf \
> /tmp/start_cinder_volume.log 2>&1 &
}
#heat
function start_heat {
echo "start heat engine"
call_async python /usr/local/bin/heat-engine \
--config-file=/etc/heat/heat-engine.conf \
> /tmp/start_heat_engine.log 2>&1 &
echo "start heat api"
call_async python /usr/local/bin/heat-api \
--config-dir=/etc/heat/heat-api.conf \
> /tmp/start_heat_api.log 2>&1 &
echo "start heat api cfn"
call_async python /usr/local/bin/heat-api-cfn \
--config-dir=/etc/heat/heat-api-cfn.conf \
> /tmp/start_heat_api_cfn.log 2>&1 &
echo "start heat api cloudwatch"
call_async python /usr/local/bin/heat-api-cloudwatch \
--config-dir=/etc/heat/heat-api-cloudwatch.conf \
> /tmp/start_heat_cw.log 2>&1 &
}
#main
[ -z "${BASH_SOURCE[0]}" -o "${BASH_SOURCE[0]}" = "$0" ] || return
echo "clean logs"
sudo rm /tmp/start_*.log
start_keystone
# make sure the keystone is started.
sleep 5
start_glance
start_cinder
sleep 10
start_nova
sleep 10
start_heat

浙公网安备 33010602011771号