1.用户操作
新建用户,并设定该用户的管理员权限
- $是普通管员
- #是系统管理员
- adduser
- 设定用户ROOT权限
- gedit /etc/sudoers
- 删除用户
- user delete 用户名
文件所属用户的操作
- sudo chown -R 用户:用户组 ()
查看文件所属用户组
- hadoop-2.7.1文件所属
Hostname
- 出于初始实验的简单性,仅仅设置一个Master,一个Slave
- 192.168.0.101 juedaiyuer(用户名) Master(主机名)
- 192.168.0.102 juedaiyuer slave
- 两个IP根据自身的实际情况即可,我虚拟机用的是桥接网络
- 修改hostname
- vi /etc/hostname
- vi操作有些纠结,所以这里选择了vim
- vim /etc/hostname
- 使用本机ip和hostname绑定
- 重启网络
- sudo /etc/init.d/networking restart
桥接模式的网络连接,IP很容易就变化了,用起来非常不方便
2.Master到Slave的SSH无密码登陆
把彼此的工钥(*.pub)放到authorized_keys里面
将Master公钥添加到远程主机Slave的 authorized_keys 文件中
- 克隆机秘钥是一样的,所以这一块目前还没有尝试
- 上述情景为在Master主机上远程登陆slave
3.配置
配置文件的时候,要注意用户名,可以根据自己的用户名,进行更改,下面的配置文件修改处,都用彩色标记,需要注意
1.hadoop-env.sh
- 设定为java所在的目录
2.yarn-env.sh
- 修改JAVA_HOME值
3.slaves
- 这个文件里面保存所有slave节点
4.core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/juedaiyuer/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.juedaiyuer.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.juedaiyuer.groups</name>
<value>*</value>
</property>
</configuration>
5.hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/juedaiyuer/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/juedaiyuer/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
6.mapred-site.xml
<configuration>
<property> <name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
7.yarn-site.xml
<configuration>
<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>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
</configuration>
4.复制到其它节点
不同的Linux之间copy文件常用有3种方法
- ftp,也就是其中一台Linux安装ftp Server,这样可以在另外一台机器使用ftp的client程序来进行文件的copy
- samba服务,类似Windows文件copy 的方式来操作,比较简洁方便
- scp命令来进行文件复制
scp [OPTIONS] file_source file_target
从本地复制到远程
节点之间传递数据