zoukankan      html  css  js  c++  java
  • centos7搭建hadoop-2.7.3,zookeeper-3.4.6,hbase-1.2.5(root用户)

    环境:【centos7、hadoop-2.7.3、zookeeper-3.4.6、hbase-1.2.5】

    两个节点:【主节点,主机名为Master,用户为root;从节点,主机名为Slave,用户为root】

    1、设置主机名,实现域名通信(所有节点都要改)

    修改hostname主机名

    hostnamectl set-hostname 主机名 #修改三种主机名
    hostnamectl –static set-hostname 主机名 #只会修改static主机名

    ifconfig查看ip

    我这里虚拟机是桥接模式,网段改成172.168了,根据自己需求进行更改;
    在虚拟机的菜单-编辑->虚拟网络编辑器中能看到信息;

    编辑配置文件,sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33,将ip信息添加进去

    主节点:172.168.0.223

    从节点:172.168.0.222

    修改配置文件,sudo vim /etc/hosts(每个主机都要改)

    设置dns就可以域名通信了

    进入到配置文件中sudo vim /etc/resolv.conf

    ping一下,看看能不能通(如果不通,检查一下防火墙有没有关)

    systemctl status firewalld 检查防火墙状态
    systemctl stop firewalld 关闭
    systemctl disable firewalld 禁用
    

    2、配置ssh免密登录

    ① 本机无密钥登录(主节点:Master)

    1.进入~/.ssh目录(若无,则执行一次ssh localhost),

    2.执行ssh-keygen -t rsa命令(回车即可),

    3.再执行cat ./id_rsa.pub >> ./authorized_keys命令,把id_rsa.pub追加到授权的key里面,

    4.给authorized_keys授权chmod 644 authorized_keys, ls -al ~/.ssh命令看权限,

    5.重启 sudo service sshd restart

    6.连接 ssh localhost(yes/no,手动输入yes)

    7.退出 exit

    ② 与其他节点的无密钥登录

    1.从节点一样执行①中1、2,

    2.Master把authorized_keys分发到Slave上(会提示输入密码,输入密码即可),scp ./authorized_keys username(用户名)@(ip地址/主机名):/root/.ssh (目录根据自己机子来)

    3.在其他机子上执行①中步骤4授权

    4.尝试连接其他机子,ssh 用户名@ip地址/域名

    免密登录配置完成!!!

    3、安装jdk(所有节点都要装)

    先删除centos7自带的openjdk
    ①rpm -qa | grep java
    ②rpm -e --nodeps Openjdk

    (我装的是jdk1.8.0_221)
    jdk下载地址
    需要登录哦!!!

    1.下载完成后解压到/usr/local/java目录下(没有java目录就创建)

      tar -xzvf  jdk-8u221-linux-x64.tar.gz
    

    2.配置环境变量

      sudo vim /etc/profile
    
      JAVA_HOME=/usr/local/java/jdk1.8.0_221
      JRE_HOME=$JAVA_HOME/jre
      CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
      PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
      export JAVA_HOME JRE_HOME CLASS_PATH  PATH
    
      source /etc/profile(使文件生效)
    

    3.验证

      java -version
    

    4、安装hadoop(主节点安装后,分发给其他节点就好)

    hadoop下载地址

    1.同样解压,我设的目录是/usr/local/hadoop

    2.配置环境变量

      sudo vim /etc/profile
    
      HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.3
      HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
      PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
      export HADOOP_HOME HADOOP_COMMON_LIB_NATIVE_DIR PATH
    
      source /etc/profile(使文件生效)
    

    3.修改hadoop的配置文件

    进入到/usr/local/hadoop/hadoop-2.7.3/etc/hadoop/目录下,在hadoop-env.sh和yarn-env.sh两个文件中添加JAVA_HOME

      cd /usr/local/hadoop/hadoop-2.7.3/etc/hadoop
      vim hadoop-env.sh
        export JAVA_HOME=/usr/local/java/jdk1.8.0_221
        export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.3
        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    
        export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native"(更改hadoop_opts)
      source  hadoop-env.sh(使文件生效)
    


      vim yarn-env.sh
    
        # export JAVA_HOME=/home/y/libexec/jdk1.6.0/
        export JAVA_HOME=/usr/local/java/jdk1.8.0_221
    
      source yarn-env.sh
    

    另外还有四个site.xml的文件需要配置

    core-site.xml

    <configuration>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://172.168.0.223:9000</value>
    <description>HDFS的URI,文件系统://namenode标识:端口号</description>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/tmp</value>
    <description>namenode上本地的hadoop临时文件夹</description>
    </property>
    </configuration>
    

    hdfs-site.xml

    <configuration>
    <property>
    <name>dfs.replication</name>
    <value>1</value>
    <description>副本个数,配置默认是3,应小于datanode机器数量</description>
    </property>
    <property>
    <name>dfs.namenode.name.dir</name>
    <value>/usr/local/hadoop/dfs/name</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>/usr/local/hadoop/dfs/data</value>
    </property>
    <property>
    <name>dfs.namenode.http-address</name>
    <value>master:50070</value>
    </property>
    </configuration>
    

    yarn-site.xml

    <configuration>
    <!-- Site specific YARN configuration properties -->
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    <property>
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
    <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
    </property>
    <property>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>1</value>
    </property>
    <property>
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
    </property>
    </configuration>
    

    mapred-site.xml

    <configuration>
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>
    <property>
    <name>mapred.job.tracker</name>
    <value>master:49001</value>
    </property>
    <property>
    <name>mapred.local.dir</name>
    <value>/usr/local/hadoop/var</value>
    </property>
    </configuration>
    

    slaves文件中添加你的主机和节点

    4.将hadoop分发到其他节点,用scp命令

    scp -r /usr/local/hadoop Slave:/usr/local

    5.格式化namenode

    进入hadoop-2.7.3下的sbin目录下执行 命令

    hdfs namenode -format

    6.启动hadoop

    执行这两个命令
    ./start-dfs.sh
    ./start-yarn.sh

    7.jps查看

    jps命令找不到的解决办法:

    yum list *openjdk-devel*
    yum install java-1.8.0-openjdk-devel.x86_64
    

    8.访问浏览器

    9.访问集群所有应用程序默认8088

    5、安装zookeeper(主从节点都要)

    zookeeper下载地址

    1.同上步骤解压到/usr/local/zookeeper下

    2.进入到目录conf下,执行cp zoo_sample.cfg zoo.cfg命令,复制 zoo_sample.cfg 到 zoo.cfg文件中

    3.编辑zoo.cfg文件 vim zoo.cfg


    4.进入到目录data下,创建myid文件并添加对应的数字

    Master节点:1;Slave节点:2;

    5.编辑配置文件/etc/profile

    ZOOKEEPER_HOME=/usr/local/zookeeper/zookeeper-3.4.6

    6.进入到bin目录下,执行 ./zkServer.sh start,启动zk服务

    【注】:要两台都启动,可查看zookeeper.out日志文件查看错误
    查看zookeeper状态,一个是leader,一个是follewer

    6、安装hbase(主节点安装)

    所有节点时间要同步!!!

    【注】:
    查看时间命令 timedatectl
    调整硬件时间和本地一致 timedatectl set-local-rtc 1
    linux同步时间 ntpdate ntp.sjtu.edu.cn

    hbase下载地址

    1.解压到/usr/local/hbase目录下

    2.修改配置文件 ,到conf目录下

    hbase-env.sh

    hbase-site.xml

    <configuration>
    <property>
    <name>hbase.rootdir</name>
    <value>hdfs://172.168.0.223:9000/hbase</value>
    </property>
    <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
    </property>
    <property>
    <name>hbase.master.info.port</name>
    <value>16010</value>
    </property>
    <property>
    <name>hbase.regionserver.info.port</name>
    <value>16030</value>
    </property>
    <property>
    <name>hbase.zookeeper.quorum</name>
    <value>Master,Slave</value>
    </property>
    <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/usr/local/zookeeper/data</value>
    </property>
    <property>
    <name>hbase.coprocessor.abortonerror</name>
    <value>false</value>
    </property>
    </configuration>
    

    regionservers (添加从节点)

    /etc/profile

    HBASE_HOME=/usr/local/hbase/hbase-2.0.5

    最终主节点的/etc/profile文件中的配置

    最终从节点的/etc/profile文件中的配置

    3.scp拷到另一节点

    scp -r /usr/local/hbase Slave:/usr/local

    【注】:root用户可直接拷贝至/usr/local/目录下,非root用户可先拷贝至home目录在移动

    4.启动hbase

    ./start-hbase.sh

    5.jps命令查看


    6.浏览器查看

  • 相关阅读:
    HDU4366 Successor 线段树+预处理
    POJ2823 Sliding Window 单调队列
    HDU寻找最大值 递推求连续区间
    UVA846 Steps 二分查找
    HDU3415 Max Sum of MaxKsubsequence 单调队列
    HDU时间挑战 树状数组
    UVA10168 Summation of Four Primes 哥德巴赫猜想
    UESTC我要长高 DP优化
    HDUChess 递推
    HDU4362 Dragon Ball DP+优化
  • 原文地址:https://www.cnblogs.com/TSlover/p/11243806.html
Copyright © 2011-2022 走看看