大家好,今年的双十一阿里云服务器优惠多多,本人也买了4台阿里云服务器,一直再想买了干嘛呢,想了想还是把本地的集群环境都搭建到ECS云服务器上吧,这样也能省下不少的空间。话不多说,直接上干货吧。
所需条件:
- 三台主机(Hadoop1,Hadoop2,Hadoop3)
- hadoop、JDK、hive安装包
- 已完成IP映射、ssh免密登录
1、首先要配置网络、配置网络的话请参照阿里云的官方文档,地址如下:
https://www.alibabacloud.com/help/zh/doc-detail/65901.htm
2、上传hadoop以及jdk安装包:
scp 安装包 阿里云公网IP:路径
3、配置JDK以及解压软件包
export HADOOP_HOME=/opt/hadoop/hadoop-2.8.5
export JAVA_HOME=/opt/jdk/jdk1.8.0_144
export CLASSPATH=.:JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
结果:
[root@hadoop3 hadoop]# source /etc/profile
[root@hadoop3 hadoop]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
4、编辑hadoop配置文件
vim hadoop-env.sh,添加:
export JAVA_HOME=/opt/jdk/jdk1.8.0_144
vim core-site.xml,添加:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop1:9000</value>
</property>
</configuration>
vim hdfs-site.xml,添加:
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop/hadoop-2.8.5/namedata</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop/hadoop-2.8.5/nodedata</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
接下来配置YARN,首先执行以下命令:
mv mapred-site.xml.template mapred-site.xml
然后 vim mapred-site.xml,添加如下:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobtracker.address</name>
<value>yarn</value>
</property>
</configuration>
vim yarn-site.xml,添加如下:
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.acl.enable</name>
<value>0</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
接下来配置slave nodes的列表,vim slaves,添加如下:
hadoop1
hadoop2
hadoop3
接下来将配置好的配置文件scp到各个slave机器上。
然后在master节点上格式化hdfs文件系统:
hdfs namenode -format
接下来就可以启动了:
start-all.sh
Hadoop1:
[root@hadoop1 /]# jps
18071 DataNode
18248 SecondaryNameNode
19226 Jps
18507 NodeManager
17963 NameNode
18411 ResourceManager
Hadoop2:
[root@hadoop2 hadoop]# jps
13889 Jps
13586 DataNode
13689 NodeManager
Hadoop3:
[root@hadoop3 hadoop]# jps
8880 DataNode
9188 Jps
8983 NodeManager
配置mysql:安装mysql地址
配置hive:配置hive地址
结果如下: