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

start stack的更多相关文章

  1. 线性数据结构之栈——Stack

    Linear data structures linear structures can be thought of as having two ends, whose items are order ...

  2. Java 堆内存与栈内存异同(Java Heap Memory vs Stack Memory Difference)

    --reference Java Heap Memory vs Stack Memory Difference 在数据结构中,堆和栈可以说是两种最基础的数据结构,而Java中的栈内存空间和堆内存空间有 ...

  3. [数据结构]——链表(list)、队列(queue)和栈(stack)

    在前面几篇博文中曾经提到链表(list).队列(queue)和(stack),为了更加系统化,这里统一介绍着三种数据结构及相应实现. 1)链表 首先回想一下基本的数据类型,当需要存储多个相同类型的数据 ...

  4. Stack Overflow 排错翻译 - Closing AlertDialog.Builder in Android -Android环境中关闭AlertDialog.Builder

    Stack Overflow 排错翻译  - Closing AlertDialog.Builder in Android -Android环境中关闭AlertDialog.Builder 转自:ht ...

  5. Uncaught RangeError: Maximum call stack size exceeded 调试日记

    异常处理汇总-前端系列 http://www.cnblogs.com/dunitian/p/4523015.html 开发道路上不是解决问题最重要,而是解决问题的过程,这个过程我们称之为~~~调试 记 ...

  6. Stack操作,栈的操作。

    栈是先进后出,后进先出的操作. 有点类似浏览器返回上一页的操作, public class Stack<E>extends Vector<E> 是vector的子类. 常用方法 ...

  7. [LeetCode] Implement Stack using Queues 用队列来实现栈

    Implement the following operations of a stack using queues. push(x) -- Push element x onto stack. po ...

  8. [LeetCode] Min Stack 最小栈

    Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. pu ...

  9. Stack的三种含义

    作者: 阮一峰 日期: 2013年11月29日 学习编程的时候,经常会看到stack这个词,它的中文名字叫做"栈". 理解这个概念,对于理解程序的运行至关重要.容易混淆的是,这个词 ...

  10. Uncaught RangeError: Maximum call stack size exceeded 超出最大调用值(个人解释)

    写了段jq后,报这个错,度娘未解,灵光一闪,找到原因,上代码: Html 结构: <a href="javascript:;" class="item-pic&qu ...

随机推荐

  1. Customizing Zend Studio Using the Welcome Page

    Customizing Zend Studio Using the Welcome Page Zend Studio enables you to add or remove plugins from ...

  2. EditText 默认不获取焦点,弹出软键盘布局变形解决方案

    关于弹出软键盘布局变形解决方案: 在androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode="adjustPan&qu ...

  3. QQ在线咨询状态显示不出来怎么办?http://bizapp.qq.com/webpres.htm

  4. windows下python2和python3共存

    相信很多朋友都在网上搜索过python多版本共存的问题. 多说的说法都是修改python.exe的名字为python2.exe或者python3.exe. 但是我按照这样的方法却总是不成功. 修改py ...

  5. Java定时器:Timer

    项目中往往会遇到需要定时的任务,例如订单,当用户在某个规定时间内没有操作订单时,订单状态将会发生改变. 那么在这种情况下,我们会用到定时器. 举例: import java.util.Timer; / ...

  6. MVC3 分页Helper

    利用mvc3实现分页效果.效果图如下: 直接拷代码: 首页添加一个Helper的类(命名空间为System.Web.Mvc;). public static HtmlString ShowPageNa ...

  7. 内核级HOOK的几种实现与应用

    实现内核级 HOOK 对于拦截.分析.跟踪系统内核起着致关重要的作用.实现的方法不同意味着应用侧重点的不同.如想要拦截 NATIVE API 那么可能常用的就是 HOOK SERVICE TABLE  ...

  8. WPF中的触发器简单总结

    原文 http://blog.sina.com.cn/s/blog_5f2ed5cb0100p3ab.html 触发器,从某种意义上来说它也是一种Style,因为它包含有一个Setter集合,并根据一 ...

  9. poj1547---结构数组

    题意:老师发给每个学生的橡皮泥相同,找出谁抢了谁的橡皮泥 思路:结构数组存储每个学生的橡皮总量,和名字 /* 结构数组存储用户信息--只放名称和体积 while输入循环复用长宽高变量 for循环求所有 ...

  10. paip.c++ qt messagebox用法

    paip.c++ qt messagebox用法 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net ...