宿主机(windows)与客户机(安装在虚拟机中的linux)网络连接
1.1 host-only 宿主机与客户机单独组网
好处:网络隔离
坏处;虚拟机与其他服务器之间不通信
1.2 bridge 客户机与宿主机在同一个局域网中。
好处:都在同一个局域网,可以互相访问。
坏处:不安全
简单的linux命令
hadoop的伪分布安装步骤
使用ROOT用户登录
3.1 设置静态ip
在centos桌面右上角的图标上,右键修改。
重启网卡,执行命令service network restart
验证:执行命令ifconfig
3.2 修改主机名
查看密码 pwd
查看账户hostname
临时修改名称 hostname name 这个命令仅对当前会话有效
若要该名称需要修改配置
修改配置文件中的主机名 vi /etc/sysconfig/network
验证重启计算机 reboot
3.2.1 vi模式 三种模式:1 只读,不能写 2 编辑,能读,也能写 3 命令,需要执行命令
命令如何进入 按a就可以编辑了 ,保存 esc 然后按Shift + : 然后wq保存
把hostname 与ip进行绑定
执行命令 vi /etc/hosts 增加一行内容
192.168.1.162 dingyz
验证 ping dingyz
关闭防火墙
执行命令 service iptables stop
验证:setvice iptables status
有些防火前自己会自启,所以得得关闭自启
查看自启集合 chkconfig --list 筛选查看方式 chkconfig --list | grep iptables
关闭自启 chkconfig iptables off
验证 chkconfig --list | grep iptables
SSH(secure shell)的免密码登陆(是为了每个节点可以很好的链接)
执行命令 ssh-keygen -t rsa 产生秘钥(同时指明算法) ,文件会产生在 ~/.ssh文件夹中
执行命令 cp id_rsa.pub authorized_keys 将id_rsa.pub复制到authorized_keys中
cat id_rsa.pub>>authorized_keys 数据追加
scp -rp /path/filename [email protected]:/path #将本地文件拷贝到服务器上
scp -rp [email protected]:/path/filename /path #将远程文件从服务器下载到本地
验证:ssh localhost
安装JDK
将downloads下面的文件复制到/usr/local/下面 cp /root/Downloads/* . *代表当前目录下的所有文件,.是当前的/usr/local/文件夹(删除完成后执行)
首先进入cd /usr/local/ 然后递归删除所有文件夹 rm -rf *
解压缩jdk 为JDK增加操作权限 查看当前文件权限 ls -l 然后新增权限 chmod u+x jdk(文件名称)
./jdk 解压命令
为了方便操作可以mv a b 重命名
然后配置环境 vi /etc/profile
添加export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
然后进行生效 source /etc/profile
验证java -version
安装hadoop
执行命令 解压 tar -zxvf hadoop.tar.gz
mv重命名
将bin下面的命令设置到环境变量中
添加export HADOOP_HOME=/usr/local/hadoop
export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
别忘了source
然后开始修改hadoop配置文件,位于$HADOOP_HOME/conf 目录下的4个配置文件
分别是 hadoop-env.sh , core-site.xml,hdfs-site.xml,mapred-site.xml
hadoop-env.sh 改第九行为export JAVA_HOME=/usr/local/jdk
core-site.xml 改
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://dingyz:9000</value>(别忘了改主机名)
<description>change your own hostname</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
hdfs-site.xml 改
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
mapred-site.xml 改
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>dingyz:9001</value>
<description>change your own hostname</description>
</property>
</configuration>
在启动之前需要对hadoop进行格式化 hadoop namenode -format
启动hadoop start-all.sh
验证 jps查看java之上的进程
几种失败:NameNode进程没有启动成功?
8.1 没有格式化
8.2 配置文件只copy ,不修改
8.3 hostname 与ip没有绑定
8.4 ssh的免密码没有配置成功
多次格式化hadoop也是错误的的?
方法:删除/usr/local/hadoop/tmp 文件夹,重新格式化
9. 如若出现某个节点出现问题需要重启时:
在启动数据节点前,建议先执行bin/hadoop-daemon.sh stop datanode //关闭数据节点
bin/hadoop-daemon.sh start datanode //启动数据节点
bin/hadoop-daemon.sh start tasktracker //启动任务管理器
此时再在master上使用 ./hadoop dfsadmin -report 是