How to install Savanna
Pre-conditions: openstack has been installed successfully.
解压软件包中的savanna-all.tar.gz安装tar -C / -xzf savanna-all.tar.gz安装了下列软件
1、/openstack-horizon
2、/etc/savanna/savanna.conf
3、/usr/local/bin/savanna-api和savanna-db-manage
4、/usr/local/lib/python2.7/dist-packages
5、上传镜像到glance服务器:glance image-create --name=vanilla-hadoop.image --disk-format=qcow2 --container-format=bare < ./savanna-0.1.2-hadoop.qcow2
一、horizon的安装和配置。
1、将软件包中openstack-horizon拷贝到目标机器的根目录下 /
2、cp openstack_dashboard/local/local_settings.py.example openstack_dashboard/local/local_settings.py
3、修改local_settings.py的配置
[skipped]
OPENSTACK_HOST = "172.18.79.139" <------ KeyStone address
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v2.0" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "Member"
[skipped]
4、在keystone服务器上面注册horizon的服务(如果openstack已经安装成功,这个已经注册过了,可以省略)。
5、启动horizon服务 python manage.py runserver 0.0.0.0:6666(端口号可以任意)
6、在客户端浏览器上输入horizon所在的目标主机ip加端口进行访问。
可能存在的问题
1、缺少lessc的CSS样式
回答:
解决方案按照如下的次序安装软件包中savanna依赖的包.
libc-ares2 amd64
libv8-3.8.9.20 amd64
libev4 amd64
nodejs amd64
node-less
设置样式链接,使用系统/usr/bin/lessc样式来展示horizon的页面
ln -s /usr/bin/lessc <path_to_horizon>/bin/less/lessc
二、savanna的安装和配置
1、修改/etc/savanna/savanna.conf配置文件,可以修改端口prot和进行keystone认证的参数
os_auth_host=10.0.0.100
os_auth_port=35357
os_admin_username=nova
os_admin_password=service_pass
os_admin_tenant_name=service
2、在keystone上面注册savanna服务
keystone service-create --name savanna --type mapreduce --description "Savanna"
keystone endpoint-create --service-id ed08fa240cbd40898eab09eb9d5c3d0c --internalurl "http://25.8.67.32:9000/v0.2/%(tenant_id)s" --publicurl "http://25.8.67.32:9000/v0.2/%(tenant_id)s" --adminurl "none"
上面service-id为第一步成说那话是的id地址,ip地址为horizon的ip地址,端口为savanna配置文件中指定的端口。
这个过程中可能需要修改keystone所在主机的/root/.bashrc
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=keystone_admin
export OS_AUTH_URL="http://25.8.67.32:5000/v2.0/"
source /root/.bashrc
3、产生savanna使用的数据库
savanna‐db-manage ‐‐config‐file /etc/savanna/savanna.conf 后面参数自己尝试,可以参见软件包中savanna-db-manage
4、启动savanna服务
savanna‐api ‐‐config‐file /etc/savanna/savanna.conf
按照上述的步骤完成后可能存在着一下的问题,就是savanna的提供的服务由于版本号关系不能正确解析,由于savanna-all中的版本是1.0的版本的,由于1.0版本中有些服务还没有开发完,因此在创建node-temple的时候有问题(cluster-templete可以成功创建),因此我们将将savanna的版本降到稳定版上面,主要替换savanna的api文件以及savanna原始文件中被1.0版本所覆盖的文件。
a、将软件包中savanna文件拷贝到目标机器
b、使用setup.py来安装
c、主要的工作主要包括:替换/usr/local/bin下面关于savanna的运行文件;替换savanna.conf文件这个可能需要注意进行重新进行配置;主要替换/usr/local/lib/python2.7/dist-packages文件中的内容,主要看api文件中的都换成0.2的版本。
sudo savanna--manage --config-file /etc/savanna/savanna.conf reset-db --with-gen-templates
sudo savanna-api --config-file /etc/savanna/savanna.conf
5. Questions and Answers.
Q1: can not create DataNode Template through the website
Answer: go to /openstack-horizon/openstack_dashboard/api/savanna.py and modify line 139 and change "task_tracker_opts" to " job_tracker_opts"
if "tt" in str(node_type).lower():
#template_data["task_tracker"] = task_tracker_opts
template_data["task_tracker"] = job_tracker_opts
if "dn" in str(node_type).lower():
#template_data["data_node"] = data_node_opts
template_data["data_node"] = name_node_opts
Q2: when I start the hadoop cluster and find that the namenode can no get the correct ip addresses of slavers
Answer:go to /usr/local/lib/python2.7/dist-packages/savanna-0.1.2.a3.gda0f4b7-py2.7.egg/savanna/service/cluster_ops.py and modify the function _check_if_up(nova, node):
if len(nets) == 0:
print "VM's networking is not configured yet"
eventlet.sleep(10)
return
This could be improved by another methods.
Q3: when starting hadoop, through the logging file we can see hadoop can not find the host "ubuntu"
Answer: go to cluster_ops.py and modify the following function. adding the mapping between hostname and ip address.
def _generate_hosts(clmap):
hosts = "127.0.0.1 localhost\n"
hosts += "127.0.0.1 ubuntu\n"
Q4: through the log, we found the the hadoop can not create the following files.
Answer: go to cluster_ops.py and add the following code in fucntion _setup_node(node,clmap) before ret=_open_channel_and_execute()
sftp.mkdir('/var/run/hadoop')
sftp.chmod('/var/run/hadoop',0777)
Q5: how to configure the ip to address http://%s:50030 to see the details of jobtracker
Answers: go to node1 and configure the ip routers
ipvsadm -A -t node1:port -s rr
ipvsadm -a -t node1:port -r privateIP:50030 -m -w 1
Q6: hadoop has no privilige to create /tmp/savanna-hadoop-start-all.log
Answers: go to cluster.py and modify the function _start_cluster()
change the direction of the log file.
Q7: Maybe there is somethings wrong in function _setup_ssh_connection(host,ssh) in cluster_opts.py, you should specify the prot 22 in ssh.connection(host,port,username,passowrd)
How to install Savanna的更多相关文章
- OEL上使用yum install oracle-validated 简化主机配置工作
环境:OEL 5.7 + Oracle 10.2.0.5 RAC 如果你正在用OEL(Oracle Enterprise Linux)系统部署Oracle,那么可以使用yum安装oracle-vali ...
- org.jboss.deployment.DeploymentException: Trying to install an already registered mbean: jboss.jca:service=LocalTxCM,name=egmasDS
17:34:37,235 INFO [Http11Protocol] Starting Coyote HTTP/1.1 on http-0.0.0.0-8080 17:34:37,281 INFO [ ...
- 如何使用yum 下载 一个 package ?如何使用 yum install package 但是保留 rpm 格式的 package ? 或者又 如何通过yum 中已经安装的package 导出它,即yum导出rpm?
注意 RHEL5 和 RHEL6 的不同 How to use yum to download a package without installing it Solution Verified - ...
- Install and Configure SharePoint 2013 Workflow
这篇文章主要briefly introduce the Install and configure SharePoint 2013 Workflow. Microsoft 推出了新的Workflow ...
- Basic Tutorials of Redis(1) - Install And Configure Redis
Nowaday, Redis became more and more popular , many projects use it in the cache module and the store ...
- Hadoop学习日志- install hadoop
资料来源 : http://www.tutorialspoint.com/hadoop/hadoop_enviornment_setup.htm Hadoop 安装 创建新用户 $ su passwo ...
- 关于bundle install 的一点补充
在第一次运行bundle install之后,生成了Gemfile.lock文件,里面记录gem的具体版本号,按照官方文档说明,以后运行bundle install就不会再依据Gemfile,而是根据 ...
- Centos 7 minimal install 无网络无ifconfig的解决
Centos7这个比较不厚道, minimal install下居然不带net-tools 先要连上网络 修改/etc/sysconfig/network-scripts/ifcfg-ens12312 ...
- jBPM4.4 no jBPM DB schema: no JBPM4_EXECUTION table. Run the create.jbpm.schema target first in the install tool.
jBPM4.4 no jBPM DB schema: no JBPM4_EXECUTION table. Run the create.jbpm.schema target first in the ...
随机推荐
- 平安某金所奇葩的面经-关于幂等和ROA设计的反思
在公司一直在做跟支付有关的项目,某日接到平安某金所一男子电话,应该是之前某猎头投的,我正好在吃早饭(也不能怪他们上班早,我们公司弹性工作制,我一般上班比较晚). 因为饭馆信号不好,只能赶紧放下剩下的半 ...
- 图片alpha blending的计算
转载时请注明出处和作者联系方式:http://blog.csdn.net/mimepp作者联系方式:YU TAO <yut616 at sohu dot com> 一幅彩色图像的每一个像素 ...
- DOM2级事件对象、添加事件、阻止默认事件、阻止冒泡事件、获取事件对象目标的兼容处理
事件对象——兼容处理 /* * 功能: 事件对象兼容 * 参数: 表示常规浏览器的事件对象e */ function getEvent(e) { // 如果存在e存在,直接返回,否则返回window. ...
- Android摘要ImageView的scaleType属性
Android在ImageView的scaleType有8一个选项 1 matrix不正确图像放大,原来自view在左上角绘制图片(片不变形): 2 fitXY将图片所有绘制到view中,可是图片会变 ...
- ORACLE经常使用的命令
一个.ORACLE启动和关机 1.在独立环境中 要启用或禁用ORACLE该系统必须切换到ORACLE用户,例如以下 su-oracle a.启动ORACLE系统 oracle>svrmgrl S ...
- [转]Mysql explain用法和性能分析
本文转自:http://blog.csdn.net/haifu_xu/article/details/16864933 from @幸福男孩 MySQL中EXPLAIN解释命令是显示mysql如何 ...
- 基于Quqrtz.NET 做的任务调度管理工具
基于Quqrtz.NET 做的任务调度管理工具 国庆前,需求让我看了一下任务调度的数据表设计.和之前一样,有100多个字段,p1 ~ p100, 我说这是干嘛啊!按这写,写死去了! 然后在网上搜了一下 ...
- lex与yacc快速入门
lex与yacc快速入门 [原创] 声明:原创文章,转载注明出处http://www.cnblogs.com/lucasysfeng/ 联系作者:lucasysfeng@gmail.com 第一节.l ...
- Code reviews and bad habits
图文大话编程语言史 投递人 itwriter 发布于 2014-03-07 17:16 评论(2) 有298人阅读 原文链接 [收藏] « » 英文原文:Code reviews and bad ...
- C# 线程的定义和使用
C# 线程的定义和使用 一.C# Thread类的基本用法 通过System.Threading.Thread类可以开始新的线程,并在线程堆栈中运行静态或实例方法.可以通过Thread类的的构造方法传 ...