一、配置系统环境,启动免密登录(以及jdk环境)
-
1.1安装JDK环境(参考如下链接)
https://blog.csdn.net/yuwen_810485419/article/details/140467345
-
1.2配置系统环境
vi /etc/hosts
写入如下内容
#172.39.19.14 hadoop001
#172.39.19.15 hadoop002
#172.39.19.16 hadoop003
192.168.76.109 hadoop001
192.168.94.103 hadoop002
192.168.19.155 hadoop003
尽量使用机器内部IP
-
1.3配置环境变量
vi /etc/profile (配置环境变量,放到最后即可)
#hadoop的环境变量
export HADOOP_HOME=/data/hadoop/hadoop-3.3.5
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#zookeeper的环境变量,可以随后操作
export ZK_HOME=/data/zookeeper/zookeeper-3.8.4
export PATH=$PATH:$ZK_HOME/bin
#hbase的环境变量,可以随后操作
export HBASE_HOME=/data/hbase/hbase-2.5.3
export PATH=$PATH:$HBASE_HOME/bin
-
1.4刷新环境变量配置
source /etc/profile
-
1.5启动免密登录
1.5.1生成密钥
[root@master ~]# ssh-keygen
三台机器都需要进行此操作
1.5.2使用命令复制SSH密钥到目标主机,开启无密码SSH登录
[root@master ~]# ssh-copy-id node1
[root@master ~]# ssh-copy-id node2
此操作第一次会让你输入yes 这样master节点就可以免密登陆其他节点,同样在其他节点也需要进行以上操作
1.5.3验证
[root@master ~]# ssh node1
[root@master ~]# ssh node2
-
1.6下载(此链接为ARM架构,如果是x86的机器需要找对应的链接下载)
hadoop3.3.5版本下载地址:https://dlcdn.apache.org/hadoop/common/hadoop-3.3.5/
hbase2.5.3版本下载地址:https://archive.apache.org/dist/hbase/2.5.3/
zookeeper3.8.4版本下载地址:https://dlcdn.apache.org/zookeeper/zookeeper-3.8.4/
二、安装Hadoop
-
2.1安装、解压
参考链接
https://blog.csdn.net/yuwen_810485419/article/details/140355525?spm=1001.2014.3001.5501
-
2.2配置环境变量
#进入hadoop包存放的目录
[root@master ~]# cd /soft
#解压到当前目录
[root@master soft]# tar -zxvf hadoop-3.3.5.tar.gz
#修改hadoop配置文件hadoop-env.sh
[root@master soft]# cd /soft/hadoop-3.3.5/etc/hadoop
[root@master hadoop]# vim hadoop-env.sh
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
#这是JAVA的环境变量对应目录需要和上述java的对应
export JAVA_HOME=/usr/local/soft/java/jdk1.8.0_361
#设置HADOOP环境变量
[root@master hadoop]# vim /etc/profile
export HADOOP_HOME=/soft/hadoop-3.3.5
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#环境变量生效
[root@master hadoop]#source /etc/profile
-
2.3改核心配置
/data/hadoop/hadoop-3.3.5/etc/hadoop
core.site.xml hadoop-env.sh hdfs-site.xml workers(使用的是普通id,不是机器内部ip) yarn-site.xml
同步配置到其他节点
scp -r hadoop-3.3.5 root@hadoop003:/data/hadoopscp core-site.xml hadoop002:$PWDscp core-site.xml hadoop003:$PWD
-
2.4启动
hdfs namenode -format 启动hadoopstart-dfs.shstart-all.sh 启动全部(Hadoop,hdfs,yarn集群)stop-all.sh 关闭全部jps 查看三台机器的进程 NodeManager DataNode
三、安装Zookeeper
-
安装
-
改核心配置
zoo.cfg /data/zookeeper/zookeeper-3.8.4/conf (该文件可能没有,需要自己创建)
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/zookeeper-3.8.4/zkdata
clientPort=2181
dataLogDir=/data/zookeeper/zookeeper-3.8.4/zkdatalog
server.1=hadoop001:2888:3888
server.2=hadoop002:2888:3888
server.3=hadoop003:2888:3888
四、安装HBase
-
安装
-
修改核心配置文件
core-site.xml(从hadoop复制过来)
<configuration>
<!-- 设置默认使用的文件系统 Hadoop支持file、HDFS、GFS、ali|Amazon云等文件系统 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop001:8020</value>
</property>
<property>
<name>hadoop.http.filter.initializers</name>
<value>org.apache.hadoop.security.AuthenticationFilterInitializer</value>
</property>
<property>
<name>hadoop.http.authentication.type</name>
<value>simple</value>
</property>
<property>
<name>hadoop.http.authentication.token.validity</name>
<value>3600</value>
</property>
<property>
<name>hadoop.http.authentication.signature.secret.file</name>
<value>/root/hadoop-http-auth-signature-secret</value>
<!-- 可动态配置,主从同样配置,并生成hadoop-http-auth-signature-secret 文件,放到对应位置,内部为允许访问的用户,用user.name=“”访问 -->
</property>
<property>
<name>hadoop.http.authentication.simple.anonymous.allowed</name>
<value>false</value>
</property>
<property>
<name>hadoop.http.authentication.cookie.domain</name>
<value></value>
</property>
<!-- 设置Hadoop本地保存数据路径 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/data/hadoop</value>
</property>
<!-- 设置HDFS web UI用户身份 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<!-- 整合hive 用户代理设置 -->
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
</configuration>
hbase-env.sh
export HBASE_MANAGES_ZK=false
export JAVA_HOME=/data/jdk1.8/jdk1.8.0_411
export HBASE_CLASSPATH=/data/hadoop/hadoop-3.3.5/etc/hadoop
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop001:8020/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>hdfs://hadoop001:6000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop001,hadoop002,hadoop003</value>
</property>
</configuration>
hdfs-site.xml (从hadoop复制过来)
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop001:9868</value>
</property>
</configuration>
regionservers
hadoop001
hadoop002
hadoop003
-
启动
cd /data/hbase/hbase-2.5.3/bin
./start-hbase.sh
-
测试(创建测试表)
hbase shell
create 's','Sname'
list
五、启动命令
1.3台机器都执行一下命令启动zookeeper集群 zkServer.sh start
2.hadoop001节点上执行 start-all.sh 启动hadoop集群,stop-all.sh 关闭hadoop集群
3.hadoop001节点上执行start-hbase.sh 启动hbase集群,stop-hbase.sh 关闭hbase集群
cd /data/hbase/hbase-2.5.3/bin
./start-hbase.sh
六、其他命令
1.查看进程的网络端口
netstat -nltp | grep 2863640
七、需要开放的端口
9870 hadoop集群端口
8088 hadoop节点浏览端口
16010 hbase的端口