文档章节

用easyinstaller安装zookeeper,hadoop,hbase等群集软件

jianglibo
 jianglibo
发布于 2016/10/29 16:29
字数 690
阅读 483
收藏 44

鸟瞰图

输入图片说明

easyinstaller是运行在你的桌面电脑的一个web程序,运行之后在浏览器里面输入localhost即可。为了完成安装,一个先决条件是必须能从你的桌面电脑访问目标服务器,目前仅支持ssh。

快速开始

运行环境: java8

  1. https://github.com/jianglibo/easyinstaller/releases下载最新版本
  2. 运行 java -jar easyinstaller-x.x.x.jar
  3. 打开浏览器,访问localhost

建立服务器组

群集软件的安装目标是服务器组,每个服务器可以指定自己的角色。 输入图片说明

导入安装脚本

可以从https://github.com/jianglibo/install-scripts/releases找找有没有需要的脚本,或者自己开发,或者叫别人开发。

输入图片说明 导入截图: 输入图片说明

安装软件到目标服务器组

输入图片说明

项目进度

这个项目采用spring-boot开发,当然是java啦。UI用的是vaadin,虽然也是java,但需要分心去理解vaadin,还有需要写一些CSS。

有少量的bash脚本,作为起点。在安装tcl之后,就大部分使用tcl脚本了,最近发现powershell可以在linux下运行,所以重心就从tcl转移到powershell了,毕竟效率更高一些。

如果你仔细看一下build.gradle,发现会有以下依赖:

compile group: 'com.jianglibo.easyinstaller', name: 'scriptsnippets', version: '0.1.2'

这个其实是一个独立的项目,一些共享的脚本代码片段就install-scripts

# how to run this script. powershell -File /path/to/this/file.
# ParamTest.ps1 - Show some parameter features
# Param statement must be first non-comment, non-blank line in the script
Param(
    [parameter(Mandatory=$true)]
    $envfile,
    [parameter(Mandatory=$true)]
    $action
)

# insert-common-script-here:powershell/PsCommon.ps1
# Remove-Item /opt/vvvvv/* -Recurse -Force

function Decorate-Env {
    Param([parameter(ValueFromPipeline=$True)]$myenv)
    $myenv | Add-Member -MemberType ScriptProperty -Name zkconfigLines -Value {
        $this.software.configContent.asHt("zkconfig").GetEnumerator() |
            ForEach-Object {"{0}={1}" -f $_.Key,$_.Value} | Sort-Object
    }
    $myenv | Add-Member -MemberType ScriptProperty -Name serviceLines -Value {
        $this.boxGroup.boxes |
             Select-Object @{n="serverId"; e={$_.ip.split('\.')[-1]}}, hostname |
             ForEach-Object {"server.{0}={1}:{2}:{3}" -f (@($_.serverId, $_.hostname) + $this.software.configContent.zkports.Split(','))} |
             Sort-Object
    }
    $myenv | Add-Member -MemberType NoteProperty -Name DataDir -Value ($myenv.software.configContent.zkconfig.dataDir)

    $myenv | Add-Member -MemberType NoteProperty -Name configFolder -Value (Split-Path -Parent $myenv.software.configContent.configFile)
    $myenv | Add-Member -MemberType NoteProperty -Name configFile -Value $myenv.software.configContent.configFile
    $myenv | Add-Member -MemberType NoteProperty -Name binDir -Value $myenv.software.configContent.binDir
    $myenv | Add-Member -MemberType NoteProperty -Name logDir -Value $myenv.software.configContent.logDir
    $myenv | Add-Member -MemberType NoteProperty -Name pidFile -Value $myenv.software.configContent.pidFile
    $myenv | Add-Member -MemberType NoteProperty -Name logProp -Value $myenv.software.configContent.logProp
    $myenv
}

如果你看到# insert-common-script-here:powershell/PsCommon.ps1 这样的行,在运行的时候就会替换成真的代码,但是它又是合法的注释掉的行,在测试的时候也不会受影响。

由于一个人的精力有限,如果你是perl,python,bash任何语言的爱好者,并且对自动化群集软件安装有兴趣,欢迎参与到这个项目中来。

© 著作权归作者所有

共有 人打赏支持
jianglibo

jianglibo

粉丝 43
博文 57
码字总数 34649
作品 3
奉化
高级程序员
搭建Zookeeper与Hbase过程及遇到的问题总结

我的经验是最好放在hadoop一块,这样可以做个全盘拷贝与管理。比如之前安装的hadoop在/usr/hadoop目录下,那就把这2个组件放在一块,比如统一放在:/usr/hadoop/...或 /home/hadoop/...这样以...

hanzhankang
2013/05/09
0
0
【修改】Centos6.3 下安装hadoop2.3.0+hbase0.98+zookeeper3.4.5

原文链接:http://wangneng-168.iteye.com/blog/1962238 因公司需求需要研究一些关于hbase相关的知识,所以自己手动搭建了一下hadoop、hbase、zookeeper的相关环境,在网上找了许多文档总是不...

Aloneforyou
06/29
0
0
HADOOP HBASE配置注意事项

1、yum安装的jdk工具1.8版本,在配置hbase1.2版本需要在hbase-env.sh配置文件中注释掉下面的内容: export HBASEMASTEROPTS="$HBASEMASTEROPTS -XX:PermSize=128m -XX:MaxPermSize=128m" exp...

断臂人
07/11
0
0
hbase——安装配置hbase

1.下载hbase的压缩包,解压出来。 2.检查hbase包和hadoop包版本是否一致,替换成hadoop核心jar包。将hadoop集群的hadoop-1.2.1-core.jar替换hbase的lib目录下的hadoop核心包,主要目的是防止...

cjun1990
2015/04/15
0
0
Ubuntu10.04LTS配置Hadoop1.0.1+HBase 0.92.0

(关于Hadoop的单机和伪分布式配置参见:http://my.oschina.net/unclegeek/blog/40042)当写这篇文章的时候,最新版的hadoop是1.0.1版本,支持了许多新的特性,使得hbase持久化不易丢失数据。...

怪蜀黍
2012/03/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

原型模式

1、原型模式-定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 克隆(浅度克隆->拷贝值类型或者引用,深度克隆->创建新的对象,开辟新的内存) 例如客户端知道抽象Pro...

阿元
今天
31
0
awk命令扩展使用操作

awk 中使用外部shell变量 示例1 [root@centos01 t1022]# A=888[root@centos01 t1022]# echo "" | awk -v GET_A=$A '{print GET_A}'888[root@centos01 t1022]# echo "aaaaaaaaaaaaa" | aw......

野雪球
今天
28
0
深入解析MySQL视图VIEW

Q:什么是视图?视图是干什么用的? A:视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。作为一个select语句保存在数据字典中的。   通过视图,可以展现基表的部分数据;...

IT--小哥
今天
37
0
虚拟机学习之二:垃圾收集器和内存分配策略

1.对象是否可回收 1.1引用计数算法 引用计数算法:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时候计数器值为0的对象就是不可能...

贾峰uk
今天
24
0
smart-doc功能使用介绍

smart-doc从8月份底开始开源发布到目前为止已经迭代了几个版本。在这里非常感谢那些敢于用smart-doc去做尝试并积极提出建议的社区用户。因此决定在本博客中重要说明下smart-doc的功能,包括使...

上官胡闹
昨天
36
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部