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的更多相关文章

  1. OEL上使用yum install oracle-validated 简化主机配置工作

    环境:OEL 5.7 + Oracle 10.2.0.5 RAC 如果你正在用OEL(Oracle Enterprise Linux)系统部署Oracle,那么可以使用yum安装oracle-vali ...

  2. 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 [ ...

  3. 如何使用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 - ...

  4. Install and Configure SharePoint 2013 Workflow

    这篇文章主要briefly introduce the Install and configure SharePoint 2013 Workflow. Microsoft 推出了新的Workflow ...

  5. 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 ...

  6. Hadoop学习日志- install hadoop

    资料来源 : http://www.tutorialspoint.com/hadoop/hadoop_enviornment_setup.htm Hadoop 安装 创建新用户 $ su passwo ...

  7. 关于bundle install 的一点补充

    在第一次运行bundle install之后,生成了Gemfile.lock文件,里面记录gem的具体版本号,按照官方文档说明,以后运行bundle install就不会再依据Gemfile,而是根据 ...

  8. Centos 7 minimal install 无网络无ifconfig的解决

    Centos7这个比较不厚道, minimal install下居然不带net-tools 先要连上网络 修改/etc/sysconfig/network-scripts/ifcfg-ens12312 ...

  9. 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 ...

随机推荐

  1. Linux下php+mysql+nginx编译搭建(一)

    之前一直都是一键搭建的webserver,可是一键搭建的环境相对来说都是比較老的.假设要用比較新的环境,特别是正式server,就必须自己手动编译搭建了(下面搭建基于linux centos6.5 3 ...

  2. Modernizr

    Modernizr 目录 概述 CSS的新增class JavaScript侦测 加载器 参考链接 概述 随着HTML5和CSS3加入越来越多的模块,检查各种浏览器是否支持这些模块,成了一大难题.Mo ...

  3. 一步一步写算法(之n!中末尾零的个数统计)

    原文:一步一步写算法(之n!中末尾零的个数统计) [ 声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 在很多面试的题目中,求n!结果中零的个数也是 ...

  4. jQuery多文件

    jQuery多文件下载 文件下载是一个Web中非常常用的功能,不过你是做内部管理系统还是做面向公众的互联网公司都会遇到这个问题,对于下载一般有点实际开发经验的都会自己解决,上周弄了一下多文件下载,业务 ...

  5. Visual Studio 2010 单元测试--运行测试并查看代码覆盖率

    原文:Visual Studio 2010 单元测试--运行测试并查看代码覆盖率 运行测试并查看代码覆盖率对程序集中的代码运行测试时,可以通过收集代码覆盖率数据来查看正在测试的项目代码部分. 运行测试 ...

  6. 强大的jquery-制作选项卡

    最近在学习jquery,特地把今天写的一个选项卡源码贴出来.只是做只是梳理,大神们请不要吐槽,如果有更好的方法,欢迎指点.谢谢. css <style> #tab div{ width:2 ...

  7. 分享一个c#写的开源分布式消息队列equeue

    分享一个c#写的开源分布式消息队列equeue 前言 equeue消息队列中的专业术语 Topic Queue Producer Consumer Consumer Group Broker 集群消费 ...

  8. PLAN: 入门题目

    一道道刷完它! A07, A11, A12, A14, A15, A18, A22, A24, A25, A26, A27 A29, A32, A34, A59, A66, A69, A84, B24 ...

  9. Dynamics CRM JS的调试的弊端解决办法

    说道CRMJS的调试的博客,之前已经有人写过.很简单,和平常网站JS的调试过程大致相同. 但是Dynamics 中JS调试最麻烦的莫过于出错之后需要修改代码了.因为随着JS代码的修改,伴随着需要保存和 ...

  10. POJ 2337 输出欧拉路径

    太无语了. 这道题做了一整天. 主要还是我太弱了. 以后这个就当输出欧拉路径的模版吧. 题目中的输出字典序最小我有点搞不清楚,看了别人是这么写的.但是我发现我过不了后面DISCUSS里面的数据. 题意 ...