Deploy Openstack all-in-one Shell Script
Deploy Openstack all-in-one Shell Script
At present(2015/10), the RDO deploment method can only install VNC console defalut,
and there is no other way to config the configuration file to change to Spice like DevStack.
The following script shows how to deploy quickly.
#!/bin/bash
###############################################
# This shell script is used to deploy openstack
# in one node (a vm or a physical machine)
# which host OS is CentOS (CentOS 7) is
# recommended.
#
# Date: 2015/10/25
###############################################
# get the host ip address
# HOSTIP=`ifconfig | grep "inet " | grep -v "127.0.0.1" | awk '{print $2}'`
HOSTIP=`ifconfig | grep "inet " | grep -v "127.0.0.1" | cut -d: -f2 | awk '{print $1}'`
# update system and install openstack using packstack
sudo yum update -y &&
sudo yum install -y https://rdoproject.org/repos/rdo-release.rpm &&
sudo yum install -y openstack-packstack &&
packstack --allinone
if [[ $? == 0 ]];
then
echo -e "\033[32m ****** Install Openstack successfully ****** \033[0m "
systemctl stop openstack-nova-novncproxy.service
else
echo -e "\033[33m ****** Install Openstack failed ****** \033[0m "
sleep 3
exit
fi
sleep 5
# simplify the nova configuration file
NOVACONF=/etc/nova/nova.conf
if [ -f $NOVACONF ];
then
cp $NOVACONF $NOVACONF.bak &&
cat $NOVACONF.bak | grep -v '^#' | grep -v '^$' > $NOVACONF
fi
sleep 10
# disable vnc server
sed -i '/vnc/d' $NOVACONF && sed -i '2a vnc_enabled=False' $NOVACONF
sleep 5
# install spice proxy
sudo yum install spice-html5 -y &&
sudo yum install openstack-nova-spicehtml5proxy -y &&
sleep 5
# add spice configutation
sudo sed -i '/spice/d' /etc/nova/nova.conf
if [[ $? == 0 ]];
then
echo "[spice]" >> $NOVACONF
echo "enabled=True" >> $NOVACONF
echo "agent_enabled=true" >> $NOVACONF
echo "server_listen=0.0.0.0" >> $NOVACONF
echo "html5proxy_host=0.0.0.0" >> $NOVACONF
echo "html5proxy_port=6082" >> $NOVACONF
echo "html5proxy_base_url=http://$HOSTIP:6082/spice_auto.html" >> $NOVACONF
echo "keymap=en-us" >> $NOVACONF
fi
# open the spice port
iptables -I INPUT -p tcp -m multiport --dports 6082 -m comment --comment "Allow SPICE connections for console access " -j ACCEPT
sleep 5
# restart related services
service openstack-nova-compute restart &&
service httpd restart &&
systemctl enable openstack-nova-spicehtml5proxy &&
systemctl start openstack-nova-spicehtml5proxy.service
# print the result
if [[ $? == 0 ]];
then
echo -e "\033[32m ***************************************************** \033[0m"
echo -e "\033[32m ****** The OpenStack is deployed successfully******** \033[0m"
echo -e "\033[32m ***************************************************** \033[0m"
fi
Run the following scrip as root and get the spice client access addresss:
#!/bin/sh
virsh list | grep "instance" > virshlist.log
ps -ef | grep spice > spiceport.log
hostip=`ifconfig | grep "inet " | grep -v "127.0.0.1" | awk '{print $2}'`
echo "Instance name Access address"
echo "------------------------------------------------------------"
for i in `cat virshlist.log | awk {'print $2'}`
do
# echo $i
virsh dumpxml $i > $i.xml &&
instance_name=`grep "nova:name" $i.xml | cut -d ">" -f 2 | cut -d "<" -f 1` &&
spiceport=`grep $i spiceport.log | awk -F "port=" '{print $2}' | cut -d"," -f1` &&
echo "\033[32m $instance_name \t\t $hostip:$spiceport \033[0m"
done
if downloading from fedora repo is too slowly or some problem like "Cannot retrieve repository"
please change the/etc/yum.repos.d/rdo-release.repoas following:
[openstack]
name=cloud
baseurl=http://mirrors.sohu.com/centos/7/cloud/x86_64/openstack-liberty/
gpgcheck=0
enabled=1
Deploy Openstack all-in-one Shell Script的更多相关文章
- 这些年我们一起搞过的持续集成~Jenkins+Perl and Shell script
这些年我们一起搞过的持续集成~Jenkins+Perl and Shell script ##转载注明出处:http://www.cnblogs.com/wade-xu/p/4378224.html ...
- shell及脚本4——shell script
一.格式 1.1 开头 必须以 "# !/bin/bash" 开头,告诉系统这是一个bash shell脚本.注意#与!中间有空格. 二.语法 2.1 数值运算 可以用decla ...
- shell script
一.shell script的编写与执行 1.shell script 的编写中还需要用到下面的注意事项: a.命令的执行是从上到下,从左到右地分析与执行 b.命令.参数间的多个空白都会被忽略掉 c. ...
- (copy) Shell Script to Check Linux System Health
source: http://linoxide.com/linux-shell-script/shell-script-check-linux-system-health/ This article ...
- shell script练习
执行脚本的几种方式: 1. sh a.sh 或者 bash a.sh 调用的是 /bin/bash 进程执行的,所以脚本不需要执行权限. 2. 直接使用绝对路径执行, /home/script/a ...
- CentOS Linux下一个tomcat起停,查看日志的shell script
CentOS 的tomcat安装目录:/usr/local/tomcat vi MyTomcatUitl.sh 创建文件chmod u+x MyTomcatUtil.sh 赋执行 ...
- Shell script for logging cpu and memory usage of a Linux process
Shell script for logging cpu and memory usage of a Linux process http://www.unix.com/shell-programmi ...
- shell script入门
从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操 ...
- shell script 的追踪与 debug
shell script 的追踪与 debug scripts 在运行之前,最怕的就是出现语法错误的问题了!那么我们如何 debug 呢?有没有办法不需要透过直接运行该 scripts 就可以来判断是 ...
随机推荐
- Day22-Django之Form组件验证
1. Django里面的Form专门用来做验证. 用Form创建一个类,把用户发来的数据放到request.POST里面发给这个类,这个类会帮忙做验证. 返回3个结果:是否验证成功了,所有的正确信息, ...
- ORA-01410: 无效的 ROWID
视图查询单表是有这个东西的,但是视图的SQL涉及多表关联,就没这个rowid了,要么自己写个,要么不用这个ROWID做啥动作
- MT【128】不动点指路
已知数列\(\{a_n\}\)满足\(2a_{n+1}=1-a_n^2\),且\(0<a_1<1\).求证:当\(n\geqslant 3\) 时,\(\left|\dfrac{1}{a_ ...
- PHP 字符串数组按照拼音排序的问题
拼音排序的规则: 字符串包括特殊字符.数字.英文字符.中文字符等等,排序结果要求,特殊字符排在第一梯队,将其按照首个字符ascii码表进行排序,数字字符排在第二梯队,将首个字符数字按照数字大小排序,英 ...
- 模板:快速傅里叶变换(FFT)
参考:http://blog.csdn.net/f_zyj/article/details/76037583 如果公式炸了请去我的csdn博客:http://blog.csdn.net/luyouqi ...
- 一步步创建第一个Docker App —— 3. 创建一个集群Swarm
原文:https://docs.docker.com/engine/getstarted-voting-app/create-swarm/ 初始化集群 Swarm 1. 使用 ssh 命令登录 man ...
- 洛谷 P1341 无序字母对 解题报告
P1341 无序字母对 题目描述 给定n个各不相同的无序字母对(区分大小写,无序即字母对中的两个字母可以位置颠倒).请构造一个有n+1个字母的字符串使得每个字母对都在这个字符串中出现. 输入输出格式 ...
- SSM 小demo的盲点总结
日期Date和String之间的转换: 1. 全局转换器(推荐使用) 1. 创建类实现Converter接口,实现Convert方法 public class StringToDateConvert ...
- 如何优雅的将DTO转化成BO
用于网络传输的对象,我们都认为他们可以当做是DTO对象,DTO为系统与外界交互的模型对象,那么肯定会有一个步骤是将DTO对象转化为BO对象或者是普通的entity对象,让service层去处理. 网上 ...
- 解决SurfaceView调用setZOrderOnTop(true)遮挡其他控件
解决SurfaceView调用setZOrderOnTop(true)遮挡其他控件的问题 http://marller.blog.51cto.com/8699646/1762028 FAQ: Surf ...