使用安裝包:centos7,jdk1.8 ,hadoop2.6.5
1、基礎設施
設置網絡:
設置IP
vi /etc/sysconfig/network-scripts/ifcfg-eth0
設置主機名
vi /etc/sysconfig/network
NETWORKING=yes
HSOTNAME=node01
設置本機IP到主機名的映射關係
vi /etc/hosts
192.168.89.129 node01
192.168.89.130 node02
192.168.89.131 node03
192.168.89.132 node04
關閉防火牆
systemctl stop firewalld
開機禁用防火牆
systemctl disable firewalld
關閉selinux
vi /etc/selinux/config
修改SELINUX=disabled
做時間同步
yum install ntp -y
修改配置文件
vi /etc/ntp.conf
啓動
service ntpd start
設置開機啓動
chkconfig ntpd on
安裝jdk
rpm -i jdk-8u161-linux-x64.rpm
或者
tar -vzxf jdk-8u161-linux-x64.tar.gz
如果使用解壓tar包的方式安裝則需要手動創建軟連接
ln -s /usr/local/java /usr/local/latest
配置環境變量
vi /etc/profile
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:
${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
修改profile文件後要重新讀取才生效
source /etc/profile
ssh 免密
執行以下命令,驗證自己是否免密 ,並被動生成 /root/.ssh
ssh localhost
創建公鑰
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
把公鑰追加到authorized_keys文件中
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
即A想免密登錄B,
A : ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
B : cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
B包含了A的公鑰,A就可以免密的登錄
2.Hadoop的配置(應用的搭建過程)
將hadoop安裝包解壓到/usr/local目錄
配置環境變量,編輯profile文件,加入HADOOP_HOME,並重新加載
vi /etc/profile
export JAVA_HOME=/usr/local/latest
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:
${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
配置Hadoop的角色
進入hadoop目錄
cd $HADOOP_HOME/etc/hadoop
給hadoop配置JAVA_HOME,不認ssh連接過去,找不到路徑
//編輯
vi hadoop-env.sh
//加入JAVA_HOME
export JAVA_HOME=/usr/local/latest
給出NameNode 角色在哪裏啓動
//編輯
vi core-site.xml
//加入配置
<property>
<name>fs.defaultFS</name>
<value>hdfs://node01:9000</value>
</property>
配置hdfs,副本數爲1
//編輯
vi hdfs-site.xml
//新增配置
//配置副本數
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
//NameNode 元數據目錄
<property>
<name>dfs.namenode.name.dir</name>
<value>/var/bigdata/hadoop/local/dfs/name</value>
</property>
//DataNdoe目錄
<property>
<name>dfs.datanode.data.dir</name>
<value>/var/bigdata/hadoop/local/dfs/data</value>
</property>
//secondary角色啓動地址
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node01:50090</value>
</property>
//secondary磁盤路徑
<property>
<name>dfs.namenode.checkpoint.dir</name>
<value>/var/bigdata/hadoop/local/dfs/secondary</value>
</property>
配置DataNode角色在哪裏啓動
//編輯
vi slaves
//加入主機名
node01
3.初始化和啓動
格式化NameNode,創建目錄並初始化一個空的fsimage
hdfs namenode -format
進入以下路徑執行start-dfs.sh命令
第一次執行時,datanode和secondary角色會初始化創建自己的數據目錄
//進入以下路徑
cd /var/bigdata/hadoop/local/dfs
//啓動所有角色
start-dfs.sh
修改windows中C:\Windows\System32\drivers\etc次目錄下的hosts文件
//加入映射
192.168.89.129 node01
192.168.89.130 node02
192.168.89.131 node03
192.168.89.132 node04
瀏覽器輸入地址:http://node01:50070 即可打開hadoop頁面