设为首页 收藏本站
查看: 1075|回复: 0

[经验分享] hadoop2.6伪分布+pig0.15+zookeeper3.4.6安装

[复制链接]

尚未签到

发表于 2015-11-21 14:27:59 | 显示全部楼层 |阅读模式
一、hadoop2.6伪分布安装请参考:http://blog.iyunv.com/gamer_gyt/article/details/46793731
二、pig0.15安装
Pig的介绍

        Pig是一个基于Hadoop的大规模数据分析平台,它提供的SQL-like语言叫Pig Latin,该语言的编译
器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。Pig为复杂的海量数据并行计算
提供了一个简易的操作和编程接口.
Pig的运行模式
  1.本地模式  
  Pig运行于本地模式,只涉及到单独的一台计算机。
  2.MapReduce模式  
  Pig运行于MapReduce模式,需要能访问一个Hadoop集群,并且需要装上HDFS。

Pig的调用方式
    Grunt shell方式:通过交互的方式,输入命令执行任务;
    Pig script方式:通过script脚本的方式来运行任务;
    嵌入式方式:嵌入java源代码中,通过java调用来运行任务。
Pig的安装
1)下载Pig前往http://mirror.bit.edu.cn/apache/pig/ 下载合适的版本,比如Pig 0.12.02)解压文件到
合适的目录tar –xzf pig-0.12.03)设置环境变量export PIG_INSTALL=/opt/pig-0.12.0export PATH=
$PATH:$PIG_INSTALL/bin4)验证执行以下命令,查看Pig是否可用:
pig –help
进入本地模式:pig –x local
进入MapReduce模式:pig –x mapreduce
三、zookeeper3.4.6安装
获取ZooKeeper安装包

    下载地址:http://apache.dataguru.cn/zookeeper
    选择一个稳定版本进行下载,我这里下载的是zookeeper-3.4.6版本。
ZooKeeper伪分布式集群安装
    伪分布式集群:在一台Server中,启动多个ZooKeeper的实例。
上传并解压安装包解压到相应的目录,重命名
tar -zxvf  zookeeper-3.4.6.tar.gz -C /usr/local/hadoop
mv zookeeper-3.4.6 zookeeper
创建实例配置文件
cd zookeeper/conf
cp zoo_sample.cfg zoo1.cfg
cp zoo_sample.cfg zoo2.cfg
cp zoo_sample.cfg zoo3.cfg
修改配置文件

实例1的配置:
vi zoo1.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/hadoop/zookeeper/d_1
clientPort=2181
dataLogDir=/usr/local/hadoop/zookeeper/logs_1
server.1=localhost:2887:3887
server.2=localhost:2888:3888
server.3=localhost:2889:3889
实例2的配置:
vi zoo2.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/hadoop/zookeeper/d_2
clientPort=2182
dataLogDir=/usr/local/hadoop/zookeeper/logs_2
server.1=localhost:2887:3887
server.2=localhost:2888:3888
  server.3=localhost:2889:3889
  实例3的配置:
vi zoo3.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/hadoop/zookeeper/d_3
clientPort=2183
dataLogDir=/usr/local/hadoop/zookeeper/logs_3
server.1=localhost:2887:3887
server.2=localhost:2888:3888
server.3=localhost:2889:3889
准备启动环境
mkdir/usr/local/hadoop/zookeeper/d_1
mkdir /usr/local/hadoop/zookeeper/d_2
mkdir /usr/local/hadoop/zookeeper/d_3

mkdir /usr/local/hadoop/zookeeper/logs_1
mkdir /usr/local/hadoop/zookeeper/logs_2
mkdir /usr/local/hadoop/zookeeper/logs_3

echo "1" > /usr/local/hadoop/zookeeper/d_1/myid
echo "2" > /usr/local/hadoop/zookeeper/d_2/myid
echo "3" > /usr/local/hadoop/zookeeper/d_3/myid
启动集群

bin/zkServer.sh start zoo1.cfg
bin/zkServer.sh start zoo2.cfg
bin/zkServer.sh start zoo3.cfg
查看是否启动成功
jps
#看到类似下面的进程就表示3个实例均启动成功
13419 QuorumPeerMain
13460 QuorumPeerMain
13561 Jps
13392 QuorumPeerMain
错误:Error contacting service. It is probably not running
原因和解决办法

1. 没有装nc
yum install nc 或者apt-get install nc,
或者下载netcat的包,本文也有连接,
安装步骤:
a. tar -zxvf netcat***.tar.gz
b. ./configure
c. make
d. make install
OK
2. 打开zkServer.sh,找到
STAT=`echo stat | nc  localhost $(grep clientPort "$ZOOCFG" | sed -e 's/.*=//') 2> /dev/null|grep Mode`
这行,加上或去掉-q 1(数字1而非字母l) 即可。
3. /etc/hosts里面没有配置localhost
第二个问题一般的机器都没有问题,但是有一种情况没有配置,通过模板导入的虚拟机。
在/etc/hosts里增加下面一行
127.0.0.1       localhost SDN-VM1
运行结果:
JMX enabled by default
Using config: /opt/zookeeper-3.3.3/bin/../conf/zoo.cfg
  Mode: follower
  4、电脑重启
Java客户端测试
需要引入zookeeper-3.4.6.jar和slf4j-api-1.61.jar这两个jar包。
package com.cjw.demo;

import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooKeeper;
import org.apache.zookeeper.ZooDefs.Ids;

public class ZooKeeperClient {
    public static void main(String[] args) throws Exception {        
        Watcher watcher = new Watcher() {
            @Override
            public void process(WatchedEvent event) {
                System.out.println(event.toString());
            }           
        };         
        ZooKeeper zk = new ZooKeeper("192.168.157.22:2181", 3000, watcher);
        System.out.println("====创建节点");
        zk.create("/cjw", "znode1".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
        System.out.println("====查看节点是否安装成功");
        System.out.println(new String(zk.getData("/cjw", false, null)));
        System.out.println("====修改节点的数据");
        zk.setData("/cjw", "cjw2015".getBytes(), -1);
        System.out.println("====查看修改的节点是否成功");
        System.out.println(new String(zk.getData("/cjw", false, null)));
        System.out.println("====删除节点");
        zk.delete("/cjw", -1);
        System.out.println("====查看节点是否被删除");
        System.out.println("节点状态:" + zk.exists("/cjw", false));         
        zk.close();
    }
}
运行结果:
====创建节点
WatchedEvent state:SyncConnected type:None path:null
====查看节点是否安装成功
znode1
====修改节点的数据
====查看修改的节点是否成功
cjw2015
====删除节点
====查看节点是否被删除
  节点状态:null配置文件说明


  initLimit: follower连接并同步到leader的初始化连接时间,它是通过tickTime的倍数表示。当初始化连接时间超过设置的时间时,则连接失败。

syncLimit: follower和leader之间发送消息时请求和应答的时间长度,如果follower在设置的时间范围内不能和leader通信,那么该follower将被丢弃,它也是按tickTime的倍数进行配置的。

tickTime: 定义心跳的时间间隔,
注:zk的client和server之间也有和web开发类似的session的概念,而zk里最小的session过期时间就是tickTime的两倍
dataDir: 存储在内存中数据库快照功能。
  clientPort: 监听客户端连接的端口号
  dataLogDir: zk运行的相关日志写入目录,设定了配置,那么dataLog里日志的目录将无效,专门的日志存放

路径,对zk的性能和稳定性有好处。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-141873-1-1.html 上篇帖子: linux zookeeper 自启动服务 下篇帖子: zookeeper存储之实现分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表