hadoop--环境搭建

搭建Hadoop需要的基本条件要有虚拟机,我用的时vm14pro,linux版本用的是centOS6.9。jdk版本用的是jdk1.7。

为了方便配置,我们第一步应该先配置主机名和映射,防止在配置yarn配置文件的主机名时找不到相关映射。

修改主机名和映射

查看网卡配置:

[cent@localhost etc]$ cd /etc/sysconfig/network-scripts/
[cent@localhost network-scripts]$ cd /
[cent@localhost /]$ cd /etc/sysconfig/network-scripts/
[cent@localhost network-scripts]$ ls
ifcfg-eth0   ifdown-eth   ifdown-isdn    ifdown-sit     ifup-bnep  ifup-ipv6   ifup-post    ifup-tunnel       network-functions
ifcfg-lo     ifdown-ib    ifdown-post    ifdown-tunnel  ifup-eth   ifup-isdn   ifup-ppp     ifup-wireless     network-functions-ipv6
ifdown       ifdown-ippp  ifdown-ppp     ifup           ifup-ib    ifup-plip   ifup-routes  init.ipv6-global
ifdown-bnep  ifdown-ipv6  ifdown-routes  ifup-aliases   ifup-ippp  ifup-plusb  ifup-sit     net.hotplug
[cent@localhost network-scripts]$ cat ifcfg-eth0
DEVICE="eth0"                                      名称
BOOTPROTO="dhcp"                                   代理
HWADDR="00:0C:29:D8:55:59"                         mac
IPV6INIT="yes"                                     ipv6代理
NM_CONTROLLED="yes"                                
ONBOOT="yes"
TYPE="Ethernet"
UUID="8e258042-670a-464c-9843-374b4edc56dc"

使用命令vim ifcfg-eth0对网卡进行编译,修改后如下:

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:D8:55:59"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
IPADDR="192.168.200.130"
NETMASK="255.255.255.0"
GATEWAY="192.168.200.1"
UUID="8e258042-670a-464c-9843-374b4edc56dc"

查看主机名,映射

[root@localhost sysconfig]# cat network
NETWORKING=yes
HOSTNAME=localhost
[cent@localhost sysconfig]$ cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

编译network,将localhost.domain改为cent,并修改hosts文件,添加“192.168.200.130 cent”;

使用reboot命令重启使其生效。

安装jdk

使用“tar -zxvf”解压后,在etc/profile配置JAVA_HOME环境变量。

安装hadoop

下载hadoop安装包,将其解压,移动到相应的目录中:


进入到etc/hadoop目录中修改配置文件:


1.修改hadoop-env.sh,添加变量:

export JAVA_HOME=/home/cent/jdk1.7.0_55
export HADOOP_OPTS="-Djava.library.path=/simple/soft/hadoop-2.6.4/lib/native"

2.修改core-site.xml,

<configuration>
<!--指定fs的缺省名称-->
	<property>
		<name>fs.default.name</name>
		<value>hdfs://cent:9000</value>
	</property>
<!--指定HDFS的namenode缺省路径的地址-->
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://cent:9000</value>
	</property>
<!--指定hadoop运行时产生文件的存储目录-->
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/simple/soft/hadoop-2.6.4/tmp</value>
	</property>
</configuration>

3.修改hdfs-site.xml

<configuration>
<!--指定HDFS副本的数量-->
	<property>
		<name>dfs.replication</name>
		<value>1</value>
	</property>
<!--指定hdfs的namenode存储路径-->
	<property>
		<name>dfs.name.dir</name>
		<value>/simple/soft/hadoop-2.6.4/hdfs/name</value>
	</property>
<!--指定hdfs的datanode存储路径-->
	<property>
		<name>dfs.data.dir</name>
		<value>/simple/soft/hadoop-2.6.4/hfds/data</value>
	</property>
</configuration>

4.修改mapred-site.xml(没有先将mapred-site.xml.template改名)。

<configuration>
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
</configuration>

5.修改yarn-site.xml:

<configuration>
<!--指定yarn的resourcemanager的地址以及reduce获取数据的方式
<!-- Site specific YARN configuration properties -->
	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>cent</value>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
</configuration>

6.添加环境变量


使用source etc/profile使其生效。

测试

1.格式化nameNode,执行命令hdfs namenode -format或者hadoop namenode -format,实现格式化,最后显示提示消息,则表示执行成功。

SHUTDOWN_MSG: Shutting down NameNode at localhost.localdomain/127.0.0.1

2.启动hadoop进程,执行命令start-dfs.sh,启动HDFS系统,

[root@localhost hadoop]# start-dfs.sh
18/07/15 15:46:13 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [Java HotSpot(TM) Client VM warning: You have loaded library /simple/soft/hadoop-2.6.4/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
localhost]
sed: -e expression #1, char 6: unknown option to `s'
-c: Unknown cipher type 'cd'
guard.: ssh: Could not resolve hostname guard.: Name or service not known
noexecstack'.: ssh: Could not resolve hostname noexecstack'.: Name or service not known
root@localhost's password: now.: ssh: Could not resolve hostname now.: No address associated with hostname

... ...
it: ssh: Could not resolve hostname it: Temporary failure in name resolution
18/07/15 15:47:00 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

启动yarn计算进程,执行命令start-yarn.sh

[root@localhost hadoop]# start-yarn.sh
starting yarn daemons
starting resourcemanager, logging to /simple/soft/hadoop-2.6.4/logs/yarn-cent-resourcemanager-localhost.out
Java HotSpot(TM) Client VM warning: You have loaded library /simple/soft/hadoop-2.6.4/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
root@localhost's password: 
localhost: starting nodemanager, logging to /simple/soft/hadoop-2.6.4/logs/yarn-root-nodemanager-localhost.out

使用jps查看进程,查看是否启动

[root@localhost hadoop]# jps
5366 Jps
3451 NodeManager
3175 ResourceManager
4703 NameNode
3841 SecondaryNameNode

关闭防火墙:

[root@cent hadoop]# service iptables stop
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ]

登入HDFS管理页面(http://192.168.200.130:50070):


登入MR管理页面(http://192.168.200.130:8080):


ssh免密配置

[root@localhost hadoop]# cd ~/.ssh
[root@localhost .ssh]# pwd
/root/.ssh
[root@localhost .ssh]# ls -al
total 12
drwx------. 2 root root 4096 Jul 15 15:11 .
dr-xr-x---. 3 root root 4096 Jul 15 15:54 ..
-rw-r--r--. 1 root root 1177 Jul 15 15:12 known_hosts
[root@localhost .ssh]# ssh-keygen -t rsa     生成公钥、私钥文件
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
e6:2b:d9:fc:27:28:76:50:92:63:73:45:69:9c:f6:e8 root@localhost
The key's randomart image is:
+--[ RSA 2048]----+
|         o.o     |
|          B      |
|       . + o     |
|      * o . .    |
|     . *S.       |
|      .o  E      |
|       =..       |
|      = =.. .    |
|     . +...o     |
+-----------------+
[root@localhost .ssh]# cat id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEoQIBAAKCAQEA0943Nhgrq+7sOP6q5ZbMAOubnE9D+l7EOyj1wOxi4+DYUk8k
+z6OJUC7zJDXRYIV83ps7k07T9LbHD14UtydJg1DGwSlxXhXF0O1CY+dtWoxSbdy
IjSlsLBYYuCX7aDsMvvz2kUKaRzSw+Kn1aSCdMYGBrcb81A4K8fbokzRfyO3yTHI
L/C2RPwb9xks449GzhvKSgHDXWqrvGEmu2wCh9wX9l83y9AFgMuwuZfQnUI/fg55
JYogrThOnLO6Acd0QyWEfjW8EtUZBfYgPxJAqU0w0N7x1u91vAkr1trNx8W8WiWp
LTx1/BlV5UN6jge43Be/G4vrGcQBn8hoDVUN8QIBIwKCAQA2evhBHCh8qybM08WL
fow6wD30/nCQ1oo7GSlAPMj4xMnpR40qqa+F7BMIt4fQC4H8x7WcXQCff1zqAS2R
pnGNcR/iYEfiUiUF+3eyAFvA72vCf6EBe0CMhR4KzAnPY+T3KthOEcDZM0wjvfCk
pqUz+GfzGSRxxCuzfIjvOFMgsPG7qOLtxc+TEMMDeH5tlOuZB4ym0kIVANYLcbQL
PXQkyJUR2FazBXT7q4Cf7mxDfZ4Zr2YG0P1/aAXKG6zI8HY4Y7Y8pmfl3OSUPqeL
kXDm7diZsnwKR00VNOf/dQLh4nZItyolyUgUArUy0rc/fT3FYekoVwllsesRpGXO
HcVbAoGBAPj/0ennw0Px/xiDbJQ8Cczs0ljeCZCprV6JkvP8thPzb47f+6Re5MVp
PegaWEBfiu+BQA5HqKCZOQemXPvHGsJvFZPn7NxWtH0g2+qtV2VCVX5+9H7dZIUN
QEPNSLCvsEC+k4iv2Rg1WMVtvXAD3o5iH3dbcbb7aJvvKG7uMm2FAoGBANnTJGvH
80sXESmCnx7Eezr/8zH/qhVFnZsGTOhaHEdatdOYGkJC8nkoZJuGoFz+XQWY62xR
mFDro6I5sjq7d1fcU0hVFxLMcD9rtMZy9wfk6PY1F+XuA+FcUH5Eki5UT3a5rWAj
VJrOREGVbwkFCTpBe4QjOYFZ/NOIdftvWYR9AoGADjqBBg0+W6dtqaEcJbpJs/BG
iLw7D5Sq0jO/QSRiLQaYqRQdAhQNEphMri1kIO+ESDNFfSiqjNWOOvOQSObOVEDc
qV21w3KrOlmmKqrRy0WefEHE1AymqIRqEoDCUz09RYc7oWkiWSeerDIoFQeJD3NS
QVWuuf+81bXlDac2FOMCgYBQ6AY2qVpduBxRPyUor2D4qDXCHSHqpNQjo0EjGifC
u0rZkEREf0QeX3XTXePKxOC476fmZ3MWvexSMq/p7dvezi2P5Rcy3jhSEg/x8C/e
XFaHVYyImjv0nqGN/DZLuOpQq12nXZR0A3hwIY+kQ7L4YXcFMaelEsufBsy8edDK
zwKBgQCtoNGWzU5Iofd0kbtZ5J98RW4r/lJHhC3dGLrk95mOaHsXNu5RxzMaVh3w
8AnbjUt4LhblbCQ6mNoX4ANIw8jpbsiXDxPFkoIjE2/SCwa+2+ig586GZIxTo0Fc
1TSKDOeSoITZNP1/16s4Z3cVn0XraZw9GvjbfrZg7n73sbvrYA==
-----END RSA PRIVATE KEY-----
[root@localhost .ssh]# cat id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0943Nhgrq+7sOP6q5ZbMAOubnE9D+l7EOyj1wOxi4+DYUk8k+z6OJUC7zJDXRYIV83ps7k07T9LbHD14UtydJg1DGwSlxXhXF0O1CY+dtWoxSbdyIjSlsLBYYuCX7aDsMvvz2kUKaRzSw+Kn1aSCdMYGBrcb81A4K8fbokzRfyO3yTHIL/C2RPwb9xks449GzhvKSgHDXWqrvGEmu2wCh9wX9l83y9AFgMuwuZfQnUI/fg55JYogrThOnLO6Acd0QyWEfjW8EtUZBfYgPxJAqU0w0N7x1u91vAkr1trNx8W8WiWpLTx1/BlV5UN6jge43Be/G4vrGcQBn8hoDVUN8Q== root@localhost
[root@localhost .ssh]# ssh-copy-id localhost  给自身设置免密码登陆
root@localhost's password: 
Now try logging into the machine, with "ssh 'localhost'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

[root@localhost .ssh]# cd ~/.ssh
[root@localhost .ssh]# ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts
[root@localhost .ssh]# ssh localhost 免密码直接连接
Last login: Tue Apr 24 15:20:47 2018 from 192.168.200.1
[root@localhost ~]#

猜你喜欢

转载自blog.csdn.net/yinweicheng/article/details/81053920