聊聊Linux 安装Hadoop和Hbase

环境介绍

聊聊Linux 安装Hadoop和Hbase

三台CentOS7主机

  • 192.168.122.101 hdfs1
  • 192.168.122.102 hdfs2
  • 192.168.122.103 hdfs3

其中hdfs1为主节点,其他为从节点。

安装配置三台都是一样的,做ssh免密码验证,如果只要在主节点hdfs1操作,只做hdfs1到其他节点信任即可。

如果三台都互相信任,这样子在哪台都可以操作是一样的。

修改内核参数

  1. vim /etc/sysctl.conf
  1. net.ipv4.tcp_syn_retries = 1
  2. net.ipv4.tcp_synack_retries = 1
  3. net.ipv4.tcp_keepalive_time = 600
  4. net.ipv4.tcp_keepalive_probes = 3
  5. net.ipv4.tcp_keepalive_intvl =15
  6. net.ipv4.tcp_retries2 = 5
  7. net.ipv4.tcp_fin_timeout = 2
  8. net.ipv4.tcp_max_tw_buckets = 65536
  9. net.ipv4.tcp_tw_recycle = 1
  10. net.ipv4.tcp_tw_reuse = 1
  11. net.ipv4.tcp_max_orphans = 32768
  12. net.ipv4.tcp_syncookies = 1
  13. net.ipv4.tcp_max_syn_backlog = 16384
  14. net.ipv4.tcp_wmem = 8192 131072 16777216
  15. net.ipv4.tcp_rmem = 32768 131072 16777216
  16. net.ipv4.tcp_mem = 786432 1048576 1572864
  17. net.ipv4.ip_local_port_range = 1024 65000
  18. net.ipv4.ip_conntrack_max = 65536
  19. net.ipv4.netfilter.ip_conntrack_max=65536
  20. net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180
  21. net.core.somaxconn = 16384
  22. net.core.netdev_max_backlog = 16384
  23. vm.max_map_count = 262144

修改句柄限制

  1. vim /etc/security/limits.conf
  1. * soft noproc 655360
  2. * hard noproc 655360
  3. * soft nofile 655360
  4. * hard nofile 655360

设置主机名解析

在不同的节点,设置对应的主机名

  1. hostnamectl set-hostname hdfs1

聊聊Linux 安装Hadoop和Hbase

添加hosts记录,也可以使用dns进行解析,比较灵活。

  1. vim /etc/hosts
  1. 192.168.122.101   hdfs1
  2. 192.168.122.102   hdfs2
  3. 192.168.122.103   hdfs3

创建用户和目录

  1. useradd  hadoop
  2. passwd hadoop
  3. mkdir -p  /apps/
  4. mkdir -pv /data/hdfs/hadoop
  5. mkdir -pv /data/hdfs/hbase
  6. chown hadoop.hadoop  /data/hadoop   /data/hbase

设置ssh免密码

  1. su – hadoop
  2. ssh-keygen
  3. ssh-copy-id hadoop@hdfs1
  4. ssh-copy-id hadoop@hdfs1
  5. ssh-copy-id hadoop@hdfs1

ssh-keygen产生密钥的时候一直回车就可以完成创建

ssh-copy-id的时候需要输入hadoop的密码

下载jdk

下载地址:

www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

需要登陆之后才能下载

  1. tar zxvf jdk-8u271-linux-x64.tar.gz
  2. mv jdk-8u271-linux-x64 /apps/
  3. cd /apps/
  4. ln -s jdk1.8.0_271 jdk
  5. cd –
  6. if grep ‘# modify by script’ /etc/profile >>/dev/null 2>&1; then
  7.     echo “alread set JAVA_HOME”
  8. else
  9.     cp /etc/profile /etc/profile_bak$(date +%Y%m%d%H%M%S)
  10.     cat >>/etc/profile <<EOF
  11. modify by script
  12. export JAVA_HOME=/apps/jdk
  13. export PATH=${JAVA_HOME}/bin:/apps/hadoop/bin:/apps/hbase/bin:$PATH
  14. EOF
  15. fi

下载hadoop和hbase

  1. mirrors.aliyun.com/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
  2. archive.apache.org/dist/hbase/1.3.5/hbase-1.3.5-bin.tar.gz
  1. tar zxvf hadoop-2.7.7.tar.gz
  2. tar zxvf hbase-1.3.5-bin.tar.gz
  3. mv hadoop-2.7.7  hbase-1.3.5   /apps/
  4. cd /apps
  5. ln -s hadoop-2.7.7 hadoop
  6. ln -s hbase-1.3.5 hbase
  7. cd –

配置hadoop

1.配置namenod

  1. vim /apps/hadoop/etc/hadoop/core-site.xml

添加内容

  1. <configuration>
  2.  <property>
  3.     <!— 指定namenode通信地址 –>
  4.         <name>fs.defaultFS</name>
  5.         <value>hdfs://hdfs1:9000</value>
  6.     </property>
  7.     <!— 指定hadoop运行时产生文件的存储路径 –>
  8.     <property>
  9.         <name>hadoop.tmp.dir</name>
  10.         <value>/data/hdfs/hadoop/tmp</value>
  11.     </property>
  12. </configuration>

 

2.配置namenode和datanode

  1. vim /apps/hadoop/etc/hadoop/hdfs-site.xml

在文件后面添加内容

  1. <configuration>
  2.   <!— 设置namenode的http通讯地址 –>
  3.     <property>
  4.         <name>dfs.namenode.http-address</name>
  5.         <value>hdfs1:50070</value>
  6.     </property>
  7.     <!— 设置secondarynamenode的http通讯地址 –>
  8.     <property>
  9.         <name>dfs.namenode.secondary.http-address</name>
  10.         <value>hdfs2:50070</value>
  11.     </property>
  12.     <!— 设置namenode存放的路径 –>
  13.     <property>
  14.         <name>dfs.namenode.name.dir</name>
  15.         <value>/data/hdfs/hadoop/name</value>
  16.     </property>
  17.     <!— 设置hdfs副本数量 –>
  18.     <property>
  19.         <name>dfs.replication</name>
  20.         <value>2</value>
  21.     </property>
  22.     <!— 设置datanode存放的路径 –>
  23.     <property>
  24.         <name>dfs.datanode.data.dir</name>
  25.         <value>/data/hdfs/hadoop/datanode</value>
  26.     </property>
  27.     <property>
  28.         <name>dfs.permissions</name>
  29.         <value>false</value>
  30.     </property>
  31. </configuration>

 

3.配置环境变量

  1. vim /apps/hadoop/etc/hadoop/hadoo-env.sh

修改JAVA_HOME

  1. export JAVA_HOME=/apps/jdk

也可以根据具体的需求设置堆栈之类的参数

4.设置主节点

  1. vim /apps/hadoop/etc/hadoop/master

添加主节点,一般使用主机名

  1. hdfs1

5.设置从节点

  1. vim /apps/hadoop/etc/hadoop/slave

添加从节点,一般使用主机名

  1. hdfs1
  2. hdfs2
  3. hdfs3

配置hbase

1.配置环境变量

  1. vim /apps/hbase/conf/hbase-env.sh

修改JAVA_HOME变量即可

  1. export JAVA_HOME=/apps/jdk

也可以根据具体的需求设置堆栈之类的参数

2.设置hadoop和zookeeper等信息

  1. vim /apps/hbase/conf/hbase-site.xml

添加内容

  1. <configuration>
  2. <property>
  3.         <name>hbase.rootdir</name>
  4.     <!— hbase存放数据目录 –>
  5.         <value>hdfs://hdfs1:9000/hbase/hbase_db</value>
  6.         <!— 端口要和Hadoop的fs.defaultFS端口一致–>
  7. </property>
  8. <property>
  9.         <name>hbase.cluster.distributed</name>
  10.     <!— 是否分布式部署 –>
  11.         <value>true</value>
  12. </property>
  13. <property>
  14.         <name>hbase.zookeeper.quorum</name>
  15.         <!— zookooper 服务启动的节点,只能为奇数个 –>
  16.         <value>hdfs1,hdfs2,hdfs3</value>
  17. </property>
  18. <property>
  19.         <!–zookooper配置、日志等的存储位置,必须为以存在 –>
  20.         <name>hbase.zookeeper.property.dataDir</name>
  21.         <value>/data/hdfs/hbase/zookeeper</value>
  22. </property>
  23. <property>
  24.         <!–hbase web 端口 –>
  25.         <name>hbase.master.info.port</name>
  26.         <value>16610</value>
  27. </property>
  28. </configuration>
  1. vim /apps/hbase/conf/regionservers
  1. hdfs1
  2. hdfs2
  3. hdfs3

启动测试

  1. su – hadoop
  2. /apps/hadoop/sbin/start-all.sh
  3. /apps/hbase/bin/start-hbase.sh

总结

这些步骤只是简单的部署,具体应用需要经过测试并做出对应的调整。

本文来自https://www.toutiao.com/i6896480467449561604/,经授权后发布,本文观点不代表梦泽贝壳立场,转载请联系原作者。

发表评论

登录后才能评论