系統版本: CentOS 7.3 最小化安裝
軟件版本: Hadoop 2.8.0 Hbase 1.3.1 Zookeeper 3.4.9
集羣規劃:
主機名 | IP |
hadoop01 | 192.168.1.61 |
hadoop02 | 192.168.1.62 |
hadoop03 | 192.168.1.63 |
一、服務器初始配置 (所有服務器執行)
1、按集羣規劃修改主機名及IP地址。
2、關閉防火牆
systemctl stop firewalld.service systemctl disable firewalld.service
3、關閉Selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config sed -i "s/SELINUXTYPE=targeted/#SELINUXTYPE=targeted/g" /etc/selinux/config
4、安裝yum源及軟件
yum install epel-release -y yum install yum-axelget -y yum install expect wget unzip bash-completion vim* -y echo "alias vi='vim'">>/etc/bashrc
5、添加host
echo " 192.168.1.61 hadoop01 192.168.1.62 hadoop02 192.168.1.63 hadoop03 ">>/etc/hosts
6、配置免密碼登錄
#在所有服務器執行以下操作 ssh-keygen #一路回車 #在hadoop01執行以下操作 cd /root/.ssh cat id_rsa.pub >>authorized_keys scp authorized_keys hadoop02:/root/.ssh #在hadoop02執行以下操作 cd /root/.ssh cat id_rsa.pub >>authorized_keys scp authorized_keys hadoop03:/root/.ssh #在hadoop03執行以下操作 cd /root/.ssh cat id_rsa.pub >>authorized_keys scp authorized_keys hadoop01:/root/.ssh scp authorized_keys hadoop02:/root/.ssh #驗證配置 #在任意服務器ssh其他服務器,是否可直接登錄
7、安裝JDK
cd /tmp #去官網下載jdk-8u131-linux-x64.rpm yum install jdk-8u131-linux-x64.rpm -y
8、添加系統變量
echo " export JAVA_HOME=/usr/java/jdk1.8.0_131 export PATH=\$PATH:\$JAVA_HOME/bin export HADOOP_HOME=/data/hadoop export PATH=\$PATH:\$HADOOP_HOME/bin export ZK_HOME=/data/zk export PATH=\$PATH:\$ZK_HOME/bin export HBASE_HOME=/data/hbase export PATH=\$PATH:\$HBASE_HOME/bin ">>/etc/profile
9、系統升級並重啓
yum update -y reboot
二、Zookeeper集羣部署
1、下載安裝
#在所有服務器執行 mkdir /data cd /tmp wget https://archive.apache.org/dist/zookeeper/stable/zookeeper-3.4.9.tar.gz tar zxvf zookeeper-3.4.9.tar.gz mv zookeeper-3.4.9 /data/zk mkdir /data/zk/logs mkdir /data/zk/data chown -R root:root /data/zk
2、添加配置文件
#在所有服務器執行 cat >>/data/zk/conf/zoo.cfg<<EOF tickTime=2000 initLimit=5 syncLimit=2 dataDir=/data/zk/data deployLogDir=/data/zk/logs clientPort=2181 maxClientCnxns=65535 autopurge.snapRetainCount=3 autopurge.purgeInterval=1 server.1=192.168.1.61:2888:3888 server.2=192.168.1.62:2888:3888 server.3=192.168.1.63:2888:3888 EOF
3、設置myid
#在hadoop01執行 echo "1" > /data/zk/data/myid #在hadoop02執行 echo "2" > /data/zk/data/myid #在hadoop03執行 echo "3" > /data/zk/data/myid
4、添加開機啓動腳本並配置系統服務
echo "[Unit] Description=Zookeeper After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/data/zk/data/zookeeper_server.pid ExecStart=/data/zk/bin/zkServer.sh start ExecStop=/data/zk/bin/zkServer.sh stop [Install] WantedBy=multi-user.target ">>/usr/lib/systemd/system/zookeeper.service systemctl enable zookeeper.service systemctl start zookeeper.service systemctl status -l zookeeper.service
5、驗證配置
#在任意服務器上執行 zkServer.sh status
三、Hadoop集羣部署
1、下載安裝
cd /tmp wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.8.0/hadoop-2.8.0.tar.gz tar zxvf hadoop-2.8.0.tar.gz mv hadoop-2.8.0 /data/hadoop cd /data/hadoop/ mkdir tmp hdfs mkdir hdfs/name hdfs/tmp hdfs/data chown -R root:root /data/hadoop/
2、修改/usr/hadoop/etc/hadoop/hadoop-env.sh
#修改第25行jdk環境變量 export JAVA_HOME=/usr/java/jdk1.8.0_131 #修改第33行,配置文件目錄位置 export HADOOP_CONF_DIR=/data/hadoop/etc/hadoop
3、修改/usr/hadoop/etc/hadoop/core-site.xml,修改後文件如下:
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hadoop.tmp.dir</name> <value>/data/hadoop/tmp</value> <final>true</final> <description>A base for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://192.168.1.61:9000</value> <final>true</final> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <name>ha.zookeeper.quorum</name> <value>192.168.1.61:2181,192.168.1.62:2181,192.168.1.63:2181</value> </property> </configuration>
4、修改/usr/hadoop/etc/hadoop/hdfs-site.xml,修改後文件如下:
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.name.dir</name> <value>/data/hadoop/hdfs/name</value> </property> <property> <name>dfs.data.dir</name> <value>/data/hadoop/hdfs/data</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>192.168.1.61:9001</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
5、複製並修改/usr/hadoop/etc/hadoop/mapred-site.xml
cd /data/hadoop/etc/hadoop/ cp mapred-site.xml.template mapred-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
6、修改/usr/hadoop/etc/hadoop/yarn-site.xml,修改後文件如下:
<?xml version="1.0"?> <configuration> <property> <name>yarn.resourcemanager.address</name> <value>192.168.1.61:18040</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>192.168.1.61:18030</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>192.168.1.61:18088</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>192.168.1.61:18025</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>192.168.1.61:18141</value> </property> <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> </configuration>
7、配置/usr/hadoop/etc/hadoop/slaves,修改後文件如下:
192.168.1.61 192.168.1.62 192.168.1.63
8、將Hadoop安裝文件夾複製到其他服務器
scp -r /data/hadoop hadoop02:/data scp -r /data/hadoop hadoop03:/data
9、格式化HDFS文件系統
hadoop namenode -format
10、啓動hadoop集羣
cd /data/hadoop/sbin/ ./start-all.sh #此命令會直接啓動所有節點,只在hadoop01服務器上執行即可
11、驗證配置
#查看集羣狀態 hadoop dfsadmin -report
通過頁面 http://192.168.1.61:50070/dfshealth.html 查看
四、Hbase集羣部署
1、下載安裝
cd /tmp wget http://apache.fayea.com/hbase/1.3.1/hbase-1.3.1-bin.tar.gz tar zxvf hbase-1.3.1-bin.tar.gz mv hbase-1.3.1 /data/hbase chown -R root:root /data/hbase/
2、修改/data/hbase/conf/hbase-env.sh,修改後文件如下:
#修改第27行jdk環境變量 export JAVA_HOME=/usr/java/jdk1.8.0_131 #修改第128行禁用自有Zookeeper export HBASE_MANAGES_ZK=false
3、修改/data/hbase/conf/hbase-site.xml,修改後文件如下:
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hbase.rootdir</name> <value>hdfs://192.168.1.61:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>192.168.1.61:2181,192.168.1.62:2181,192.168.1.63:2181</value> </property> <property> <name>hbase.master.port</name> <value>16000</value> </property> <property> <name>hbase.master.info.port</name> <value>16010</value> </property> </configuration>
4、修改/data/hbase/conf/regionservers,修改後文件如下:
192.168.1.61 192.168.1.62 192.168.1.63
5、複製Hadoop配置文件到hbase配置文件目錄下
cd /data/hbase/conf/ cp /data/hadoop/etc/hadoop/core-site.xml . cp /data/hadoop/etc/hadoop/hdfs-site.xml .
6、將Hbase安裝文件夾複製到其他服務器
scp -r /data/hbase hadoop02:/data scp -r /data/hbase hadoop03:/data
7、啓動Hbase集羣
cd /data/hbase/bin/ ./start-hbase.sh #此命令會直接啓動所有節點,只在hadoop01服務器上執行即可
8、驗證安裝
#進入shell hbase shell
通過頁面 http://192.168.1.61:16010 查看
集羣配置全部完成!