hadoop系列(一) 有更新!

  |   0 评论   |   1,423 浏览

37套精品Java架构师高并发高性能高可用分布式集群电商缓存性能调优设计项目实战视教程 置顶! 有更新!

一、环境安装配置

(一)防火墙、hostnamehost

所有机器关闭防火墙、修改hostname、配置host

[root@master ~]# service iptables stop

iptables:将链设置为政策 ACCEPT:filter                    [确定]

iptables:清除防火墙规则:                                 [确定]

iptables:正在卸载模块:                                   [确定]

[root@master ~]# service iptables status

iptables:未运行防火墙。

[root@master ~]# hostname

master

[root@master ~]# vi /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=maste

 

[root@master autossh]# vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.211.132 master

192.168.211.133 slave1

192.168.211.134 slave2

192.168.211.135 slave3

 

(二)ssh免密码登录

initSshFile.sh

#!/bin/bash

ssh-keygen -q -t rsa -N "" -f /root/.ssh/id_rsa

cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys

chmod go-rwx /root/.ssh/authorized_keys

nologinssh.ssh

#!/bin/bash

/boom/docs/autossh/autossh.sh root 123456 master

/boom/docs/autossh/autossh.sh root 123456 slave1

/boom/docs/autossh/autossh.sh root 123456 slave2

/boom/docs/autossh/autossh.sh root 123456 slave3

 

autossh.sh

#!/usr/bin/expect  

set timeout 10  

set username [lindex $argv 0]  

set password [lindex $argv 1]  

set hostname [lindex $argv 2]  

spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $username@$hostname

expect {

            #first connect, no public key in ~/.ssh/known_hosts

            "Are you sure you want to continue connecting (yes/no)?" {

            send "yes\r"

            expect "password:"

                send "$password\r"

            }

            #already has public key in ~/.ssh/known_hosts

            "password:" {

                send "$password\r"

            }

            "Now try logging into the machine" {

                #it has authorized, do nothing!

            }

        }

expect eof

 

1. 所有机器先执行initSshFile.sh 

[root@master autossh]# ./initSshFile.sh

-bash: ./initSshFile.sh: 权限不够

[root@master autossh]# chmod 777 ./*

[root@master autossh]# ./initSshFile.sh

[root@master autossh]# ll

总用量 12

-rwxrwxrwx. 1 root root 709 6月  13 2016 autossh.sh

-rwxrwxrwx. 1 root root 222 4月  28 13:17 initSshFile.sh

-rwxrwxrwx. 1 root root 209 4月  28 21:39 nologinssh.sh

2. 修改master机器上./nologinssh.sh,并复制到各个slave机器

[root@master autossh]# vi nologinssh.sh 

#!/bin/bash

/boom/docs/autossh/autossh.sh root 123456 master

/boom/docs/autossh/autossh.sh root 123456 slave1

/boom/docs/autossh/autossh.sh root 123456 slave2

/boom/docs/autossh/autossh.sh root 123456 slave3

3. 所有机器分别执行/usr/program/shell/nologinssh.sh

[root@master autossh]# ./nologinssh.sh 

./nologinssh.sh: /boom/docs/autossh/autossh.sh: /usr/bin/expect: bad interpreter: 没有那个文件或目录

./nologinssh.sh: /boom/docs/autossh/autossh.sh: /usr/bin/expect: bad interpreter: 没有那个文件或目录

./nologinssh.sh: /boom/docs/autossh/autossh.sh: /usr/bin/expect: bad interpreter: 没有那个文件或目录

./nologinssh.sh: /boom/docs/autossh/autossh.sh: /usr/bin/expect: bad interpreter: 没有那个文件或目录

[root@master autossh]# yum install expect

Loaded plugins: fastestmirror, refresh-packagekit, security

Loading mirror speeds from cached hostfile

[root@master autossh]# ./nologinssh.sh 

spawn ssh-copy-id -i /root/.ssh/id_rsa.pub root@master

The authenticity of host 'master (192.168.211.132)' can't be established.

RSA key fingerprint is 2a:30:e3:2b:c9:f6:61:30:f9:eb:ae:31:40:65:b4:cf.

Are you sure you want to continue connecting (yes/no)? yes

 

4. 所有机器相互测试免登录

[root@master autossh]# ssh slave1

Last login: Fri Apr 28 21:06:07 2017 from 192.168.211.1

[root@slave1 ~]# exit

logout

Connection to slave1 closed.

[root@master autossh]# ssh slave2

Last login: Fri Apr 28 21:06:27 2017 from 192.168.211.1

[root@slave2 ~]# exit

logout

Connection to slave2 closed.

[root@master autossh]# ssh slave3

Last login: Fri Apr 28 21:06:44 2017 from 192.168.211.1

[root@slave3 ~]# exit

logout

Connection to slave3 closed.

[root@master autossh]# 

 

(三)安装jdk

1. 下载jdk安装包

http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

2. 解压到指定目录

[root@master softs]# ll

总用量 181192

-rw-r--r--. 1 root root 185540433 4月  28 14:08 jdk-8u131-linux-x64.tar.gz

[root@master softs]# tar -zxf jdk-8u131-linux-x64.tar.gz -C /usr/program/jdk

[root@master softs]# cd /usr/program/jdk

[root@master jdk]# ll

3. 配置环境变量

export JAVA_HOME=/usr/program/jdk

export HADOOP_HOME=/usr/program/hadoop

export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH

[root@master boom]# source /etc/profile

[root@master boom]# java

用法: java [-options] class [args...]

           (执行类)

   或  java [-options] -jar jarfile [args...]

           (执行 jar 文件)

其中选项包括:

(四)安装hadoop

1. 下载hadoop安装包

http://apache.fayea.com/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz

2. 解压到指定目录

[root@master softs]# cd /boom/softs

[root@master softs]# mkdir /usr/program/hadoop

[root@master softs]# tar -zxf hadoop-2.7.3.tar.gz -C /usr/program/hadoop

3. 配置环境变量

export JAVA_HOME=/usr/program/jdk

export HADOOP_HOME=/usr/program/hadoop

export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH

4. 修改配置文件

在主节点上如下修改各个配置文件,并scp到各个从节点。

1) hadoop-env.sh

#export JAVA_HOME=${JAVA_HOME}

export JAVA_HOME=/usr/program/jdk

2) yarn-env.sh 

# export JAVA_HOME=/home/y/libexec/jdk1.6.0/

export JAVA_HOME=/usr/program/jdk

3) hdfs-site.xml

<configuration>

<property>

        <name>dfs.replication</name>

        <value>3</value>

    </property>

    <property>

        <name>dfs.permissions</name>

        <value>false</value>

    </property>

    <property>

   <name>dfs.client.block.write.replace-datanode-on-failure.enable</name>

   <value>true</value>

    </property> 

    <property>

   <name>dfs.client.block.write.replace-datanode-on-failure.policy</name>

   <value>NEVER</value>

    </property>

</configuration>

4) core-site.xml

  <configuration>

        <property>

                <name>fs.defaultFS</name>

                <value>hdfs://master:9000</value>

        </property>

        <property>

                <name>hadoop.tmp.dir</name>

                <value>/hdfs/fs1</value>

        </property>

         <property>

                 <name>fs.trash.interval</name>

                 <value>1440</value>

        </property>

</configuration>

hadoop.tmp.dir:默认namenode元数据与节点数据块都存储在该配置路径下

5) yarn-site.xml

<configuration>

<property>

    <description>The hostname of the RM.</description>

    <name>yarn.resourcemanager.hostname</name>

    <value>master</value>

   </property>

<property>

                <name>yarn.nodemanager.aux-services</name>

                <value>mapreduce_shuffle</value>

        </property>

        <property> 

                <name>yarn.log-aggregation-enable</name> 

                <value>true</value> 

        </property>

</configuration>

6) slaves

配置从节点

slave1

slave2

slave3

5. 格式化NameNode

[root@master hadoop]# hdfs namenode -format

17/04/28 23:31:31 INFO namenode.NameNode: STARTUP_MSG: 

/**********************************************************

。。。

17/04/28 23:43:26 INFO util.GSet: 0.029999999329447746% max memory 889 MB = 273.1 KB

17/04/28 23:43:26 INFO util.GSet: capacity      = 2^15 = 32768 entries

Re-format filesystem in Storage Directory /hdfs/fs1/dfs/name ? (Y or N) y

17/04/28 23:43:31 INFO namenode.FSImage: Allocated new BlockPoolId: BP-96998263-192.168.211.132-1493394211008

17/04/28 23:43:31 INFO common.Storage: Storage directory /hdfs/fs1/dfs/name has been successfully formatted.

17/04/28 23:43:31 INFO namenode.FSImageFormatProtobuf: Saving image file /hdfs/fs1/dfs/name/current/fsimage.ckpt_0000000000000000000 using no compression

17/04/28 23:43:31 INFO namenode.FSImageFormatProtobuf: Image file /hdfs/fs1/dfs/name/current/fsimage.ckpt_0000000000000000000 of size 351 bytes saved in 0 seconds.

17/04/28 23:43:31 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0

17/04/28 23:43:31 INFO util.ExitUtil: Exiting with status 0

17/04/28 23:43:31 INFO namenode.NameNode: SHUTDOWN_MSG: 

/************************************************************

SHUTDOWN_MSG: Shutting down NameNode at master/192.168.211.132

************************************************************/

6. 启动

 [root@master sbin]# ./start-all.sh 

This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh

Starting namenodes on [master]

master: starting namenode, logging to /usr/program/hadoop/logs/hadoop-root-namenode-master.out

slave1: starting datanode, logging to /usr/program/hadoop/logs/hadoop-root-datanode-slave1.out

slave2: starting datanode, logging to /usr/program/hadoop/logs/hadoop-root-datanode-slave2.out

slave3: starting datanode, logging to /usr/program/hadoop/logs/hadoop-root-datanode-slave3.out

Starting secondary namenodes [0.0.0.0]

0.0.0.0: starting secondarynamenode, logging to /usr/program/hadoop/logs/hadoop-root-secondarynamenode-master.out

starting yarn daemons

starting resourcemanager, logging to /usr/program/hadoop/logs/yarn-root-resourcemanager-master.out

slave2: starting nodemanager, logging to /usr/program/hadoop/logs/yarn-root-nodemanager-slave2.out

slave3: starting nodemanager, logging to /usr/program/hadoop/logs/yarn-root-nodemanager-slave3.out

slave1: starting nodemanager, logging to /usr/program/hadoop/logs/yarn-root-nodemanager-slave1.out

 

7. 查看运行状态

[root@master sbin]# jps

6624 ResourceManager

6888 Jps

6458 SecondaryNameNode

6254 NameNode

[root@master hadoop]# hdfs dfsadmin -report

Configured Capacity: 147757621248 (137.61 GB)

Present Capacity: 125708881920 (117.08 GB)

DFS Remaining: 125708795904 (117.08 GB)

DFS Used: 86016 (84 KB)

DFS Used%: 0.00%

Under replicated blocks: 0

Blocks with corrupt replicas: 0

Missing blocks: 0

Missing blocks (with replication factor 1): 0

 

-------------------------------------------------

Live datanodes (3):

 

Name: 192.168.211.135:50010 (slave3)

Hostname: slave3

Decommission Status : Normal

Configured Capacity: 49252540416 (45.87 GB)

DFS Used: 28672 (28 KB)

Non DFS Used: 7345811456 (6.84 GB)

DFS Remaining: 41906700288 (39.03 GB)

DFS Used%: 0.00%

DFS Remaining%: 85.09%

Configured Cache Capacity: 0 (0 B)

Cache Used: 0 (0 B)

 

8. 浏览器查看

http://192.168.211.132:50070/dfshealth.html#tab-overview

 

http://192.168.211.132:8088/cluster

 

评论

发表评论

validate