zookeeper和hadoop

zookeeper操作

  • 连接

zkCli.sh -server 服务名称
  • 查看客户端指令

help
​
ZooKeeper -server host:port cmd args
        stat path [watch]
        set path data [version]
        ls path [watch]
        delquota [-n|-b] path
        ls2 path [watch]
        setAcl path acl
        setquota -n|-b val path
        history 
        redo cmdno
        printwatches on|off
        delete path [version]
        sync path
        listquota path
        rmr path
        get path [watch]
        create [-s] [-e] path data acl
        addauth scheme auth
        quit 
        getAcl path
        close 
        connect host:port
  • 查看节点信息

ls
# 查看节点详情信息
ls2
  • 创建节点

#创建永久节点
create /a hello
# 创建有序节点
create -s /b 123
# 创建临时节点 
create -e /dddd 3333
# 创建子节点
create /a/cc 666
  • 查询节点数据

get /a
  • 修改

set /a aaaaaa
  • 删除

# 删除没有子节点的
delete /a
# 删除有子节点的
rmr /a

节点中最多存储1M

  • 节点限制

# 设置
setquota -n 5 /a  # -n 限制子节点数据量 -b 限制数据长度
# 查看限制
listquota /a
# 删除
delquota /a

hadoop安装

  • 上传文件 /export/server

  • 解压 tar zxvf hadoop-3.3.0-Centos7-64-with-snappy.tar.gz

  • 配置环境变量 vim /etc/profile

    export HADOOP_HOME=/export/server/hadoop-3.3.0
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    
    # 注意
    source /etc/profile
    
  • 修改配置文件

    • core-site.xml

    
    
        fs.defaultFS
        hdfs://node1:8020
    
    
    
    
        hadoop.tmp.dir
        /export/data/hadoop-3.3.0
    
    
    
    
        hadoop.http.staticuser.user
        root
    
    
    
    
        hadoop.proxyuser.root.hosts
        *
    
    
    
        hadoop.proxyuser.root.groups
        *
    
    
    • hadoop-env.sh

    export JAVA_HOME=/export/server/jdk1.8.0_65
    
    #文件最后添加
    export HDFS_NAMENODE_USER=root
    export HDFS_DATANODE_USER=root
    export HDFS_SECONDARYNAMENODE_USER=root
    export YARN_RESOURCEMANAGER_USER=root
    export YARN_NODEMANAGER_USER=root 
    

    • hdfs-site.xml

    
    
        dfs.namenode.secondary.http-address
        node2:9868
    
    

    • mapred-site.xml

    
    
      mapreduce.framework.name
      yarn
    
    
    
    
      mapreduce.jobhistory.address
      node1:10020
    
     
    
    
      mapreduce.jobhistory.webapp.address
      node1:19888
    
    
    
      yarn.app.mapreduce.am.env
      HADOOP_MAPRED_HOME=${HADOOP_HOME}
    
    
    
      mapreduce.map.env
      HADOOP_MAPRED_HOME=${HADOOP_HOME}
    
    
    
      mapreduce.reduce.env
      HADOOP_MAPRED_HOME=${HADOOP_HOME}
    
    

    • yarn-site.xml

    
    
    
    	yarn.resourcemanager.hostname
    	node1
    
    
    
        yarn.nodemanager.aux-services
        mapreduce_shuffle
    
    
    
    
        yarn.nodemanager.pmem-check-enabled
        false
    
    
    
    
        yarn.nodemanager.vmem-check-enabled
        false
    
    
    
    
      yarn.log-aggregation-enable
      true
    
    
    
    
        yarn.log.server.url
        http://node1:19888/jobhistory/logs
    
    
    
    
      yarn.log-aggregation.retain-seconds
      604800
    
    

    • workers

    node1
    node2
    node3
    

  • 将node1中配置文件分发其他机器

# 分发hadoop文件
scp -r /export/server/hadoop-3.3.0 node2:/export/server/
scp -r /export/server/hadoop-3.3.0 node3:/export/server/
# 分发环境变量文件
scp /etc/profile node2:/etc/profile
scp /etc/profile node3:/etc/profile

# 注意
source /etc/profile

hadoop启动

  • 初始化namenode 只在node1中执行

hdfs namenode -format

如果不小心初始化解决,把所有机器上/export/data目录下的Hadoop数据文件删除
删除后重新初始化
  • 使用脚本启动服务

start-all.sh 

你可能感兴趣的:(zookeeper和hadoop)