第一次写,不好之处请多多指教
虚拟机网络配置与设置主机映射
网络配置:
第一步:在window开始菜单搜索输入cmd,打开后输入ipconfig查看本地IP,网关,子网掩码及输入ipconfig /all查看DNS;
第二步:在虚拟机上输入 vi /etc/sysconfig/network-scripts/ifcfg-ethh0(快速输入可以按tab键补全)进入配置虚拟机网络;
第三步:在第二步进入的页面修改以下内容(按i可在里面输入内容):
1)将ONBOOT=no改为yes;
2)将BOOTPROTO=dhcp改为static;
第四步:在最后加上以下内容:
IPADDR= //与window的IP同网段即可
NETMASK=//与window的一样
GATEWAY=//与window的一样
DNS1=//与window的一样
最后按esc键,接着按shift键同时按:号再按wq保存退出。
第五步:输入 service network restart 重启网络
第六步:输入ifconfig查看IP为所改的即可(也可以ping一下其他网址看看能否ping得通)
设置主机映射:
输入 vi /etc/hosts,在打开的页面加入ip与主机名(注意ip与虚拟机的主机名之间要按tab键隔开),接着保存退出即可。
虚拟机jdk(sun)配置
第一步:删除虚拟机自带的openjidk:
1)输入 rpm -qa | grep java 查看虚拟机自带的openjdk
2)输入 yum -y remove (后面加上面查看出来的openjdk)
3)输入java -version查看是否没有openjdk的信息,有的话重复 2)的操作直到输入java -version没有openjdk信息为止。
第二步:上传jdk到虚拟机(可通过winscp上传,其他的亦可,但注意此处上传的jdk是Linux版本的sunjdk)
第三步:rpm包的jdk:输入rpm -ivh (此处填写上传的jdk版本)
tar包的jdk:输入tar -zxvf (jdk版本信息) -C /usr/(后面是复制到你想要放jdk的位置。后面配置jdk环境变量有用)
第四步:输入vi /etc/profile,在最下面加入以下内容:
export JAVA_HOME=(刚才安装jdk的路径)
export CLASSPATH=
J
A
V
A
H
O
M
E
/
l
i
b
/
e
x
p
o
r
t
P
A
T
H
=
JAVA_HOME/lib/ export PATH=
JAVAHOME/lib/exportPATH=PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
保存退出。
第五步:输入 source /etc/profile使文件生效。
第六步:输入java -version查看为所配置的sunjdk即可。
##hadoop配置
第一步:上传hadoop -2.6.4.tar.gz到虚拟机
第二步:输入 tar -zxvf hadoop-2.6.4(刚上传的hadoop版本信息)-C /usr(路径自己选,要copy下来,配置环境需要)
第三步:进入到刚才放hadoop的目录下配置文件:
配置Hadoop
进入目录:
cd /usr/local/hadoop-2.6.4/etc/hadoop/
依次修改下面的文件:
第一个文件: core-site.xml
老规矩输入vi core-site.xm进入修改配置:
fs.defaultFS
hdfs://master:8020//改虚拟机的主机名为自己设置的(下面所有涉及主机名的都要改为自己配置的),我用的主机名为master
hadoop.tmp.dir
/var/log/hadoop/tmp//这个文件在进入core-site.xm之前要先建(mkdir -p /var/log/hadoop/tmp)
第二个文件: hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_80
第三个文件:hdfs-site.xml
dfs.namenode.name.dir /data/hadoop/hdfs/name //进入hdfs-site.xml之前先创建 dfs.datanode.data.dir /data/hadoop/hdfs/data //进入hdfs-site.xml之前先创建 dfs.namenode.secondary.http-address master:50090// dfs.replication 3//改为1(默认的为3,但伪分布在一台机上,所以设置为1)第四个文件:mapred-site.xml //这个文件要复制(cp mapred-site.xml.template mapred-site.xml)
mapreduce.framework.name yarn mapreduce.jobhistory.address master:10020// mapreduce.jobhistory.webapp.address master:19888//第五个文件: yarn-site.xml
yarn.resourcemanager.hostname
master//
yarn.resourcemanager.address
y
a
r
n
.
r
e
s
o
u
r
c
e
m
a
n
a
g
e
r
.
h
o
s
t
n
a
m
e
:
8032
<
/
v
a
l
u
e
>
<
/
p
r
o
p
e
r
t
y
>
<
p
r
o
p
e
r
t
y
>
<
n
a
m
e
>
y
a
r
n
.
r
e
s
o
u
r
c
e
m
a
n
a
g
e
r
.
s
c
h
e
d
u
l
e
r
.
a
d
d
r
e
s
s
<
/
n
a
m
e
>
<
v
a
l
u
e
>
{yarn.resourcemanager.hostname}:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>
yarn.resourcemanager.hostname:8032</value></property><property><name>yarn.resourcemanager.scheduler.address</name><value>{yarn.resourcemanager.hostname}:8030
yarn.resourcemanager.webapp.address
y
a
r
n
.
r
e
s
o
u
r
c
e
m
a
n
a
g
e
r
.
h
o
s
t
n
a
m
e
:
8088
<
/
v
a
l
u
e
>
<
/
p
r
o
p
e
r
t
y
>
<
p
r
o
p
e
r
t
y
>
<
n
a
m
e
>
y
a
r
n
.
r
e
s
o
u
r
c
e
m
a
n
a
g
e
r
.
w
e
b
a
p
p
.
h
t
t
p
s
.
a
d
d
r
e
s
s
<
/
n
a
m
e
>
<
v
a
l
u
e
>
{yarn.resourcemanager.hostname}:8088</value> </property> <property> <name>yarn.resourcemanager.webapp.https.address</name> <value>
yarn.resourcemanager.hostname:8088</value></property><property><name>yarn.resourcemanager.webapp.https.address</name><value>{yarn.resourcemanager.hostname}:8090
yarn.resourcemanager.resource-tracker.address
y
a
r
n
.
r
e
s
o
u
r
c
e
m
a
n
a
g
e
r
.
h
o
s
t
n
a
m
e
:
8031
<
/
v
a
l
u
e
>
<
/
p
r
o
p
e
r
t
y
>
<
p
r
o
p
e
r
t
y
>
<
n
a
m
e
>
y
a
r
n
.
r
e
s
o
u
r
c
e
m
a
n
a
g
e
r
.
a
d
m
i
n
.
a
d
d
r
e
s
s
<
/
n
a
m
e
>
<
v
a
l
u
e
>
{yarn.resourcemanager.hostname}:8031</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>
yarn.resourcemanager.hostname:8031</value></property><property><name>yarn.resourcemanager.admin.address</name><value>{yarn.resourcemanager.hostname}:8033
yarn.nodemanager.local-dirs
/data/hadoop/yarn/local
yarn.log-aggregation-enable
true
yarn.nodemanager.remote-app-log-dir
/data/tmp/logs
yarn.log.server.url
http://master:19888/jobhistory/logs/
URL for job history server
yarn.nodemanager.vmem-check-enabled
false
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.nodemanager.resource.memory-mb
2048
yarn.scheduler.minimum-allocation-mb
512
yarn.scheduler.maximum-allocation-mb
4096
mapreduce.map.memory.mb
2048
mapreduce.reduce.memory.mb
2048
yarn.nodemanager.resource.cpu-vcores
1
第六个文件: yarn-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_80
第四步:.配置SSH无密码登录
使用ssh-keygen产生公钥与私钥对。
输入命令“ssh-keygen -t rsa”,接着按三次Enter键
用ssh-copy-id将公钥复制到远程机器中
ssh-copy-id -i /root/.ssh/id_rsa.pub master//依次输入yes,123456(root用户的密码
第五步:在/etc/profile添加JAVA_HOME和Hadoop路径
export HADOOP_HOME=/usr/local/hadoop-2.6.4
export PATH=
H
A
D
O
O
P
H
O
M
E
/
b
i
n
:
HADOOP_HOME/bin:
HADOOPHOME/bin:PATH:/usr/java/jdk1.7.0_80/bin
source /etc/profile使修改生效
第六步:格式化NameNode
进入hadoop安装目录
执行格式化
./hdfs namenode -format
第七步:启动集群
进入hadoop安装目录
执行启动:
sbin/start-dfs.sh
sbin/start-yarn.sh
sbin/mr-jobhistory-daemon.sh start historyserver
第八步:使用jps,查看进程
成功之后有以下内容出现:
NodeManager
DataNode
NameNode
JobHistoryServer
Jps
ResourceManager
SecondaryNameNode
至此,hadoop伪分布式配置已经完成。