快照:
使用一段时间后,对Linux进行快照,目标,出现问题了,可以回滚
创建快照:
(1)先关机—>右键快照—>拍摄快照
(2)VMware操作
为什么要使用快照?
我们可以想像以下场景:
- 场景一:系统发生意外宕机,工程师无法快速定位问题,业务受到中断,
客户十分不满意。 - 场景二:项目会议上,就是否升级某软件到最新版本,A和B争执不断,
A认为为了保持与其他软件的兼容性不能轻易升级,
B认为升级能充分利用软件包的最新功能以及享受到新版本性能的提升 - 场景三:服务器突然无法访问了,导致业务中断,
工程师A和B因为追究责任争得不可开交,A说是B修改了某项配置导致的,
B反驳说我的配置都是正确的,不可能出错。
但是快照可以轻松帮你解决以上烦恼:
- 使用快照定期做系统备份,系统发生意外宕机可以快速回溯到之前的正常状态。
- 可以使用快照来安装/升级软件,在安装/升级前后做快照,
如果安装/升级失败,就可以快速的恢复系统到正常状态 - 大型软件项目的部署配置,快照可以帮助快速定位哪些配置文件做了改动,
帮助定位错误,并快速撤销配置文件的修改。
从0搭建完全分布环境(一)
——————————————————
1.复制伪分模式,新建完全分布模式
$>cd /home/crx/soft/hadoop/etc/
[crx@master hadoop]$ cp -r hadoop_pseudo/ hadoop_wanquan
2.删除伪分的软链接
[crx@master hadoop]$ rm -r hadoop
3.指向完全的软链接
[crx@master hadoop]$ ln -s hadoop_wanquan/ hadoop
4.然后修改hadoop里的文件
NAT模式配置
NAT是网络地址转换,是在宿主机和虚拟机之间增加一个地址转换服务,
负责外部和虚拟机之间的通讯转接和IP转换。
我们部署Hadoop集群,这里选择NAT模式,各个虚拟机通过NAT使用宿主机的IP来访问外网。
我们的要求是集群中的各个虚拟机有固定的IP、可以访问外网,所以进行如下设置:
静态IP的设置
1.VMware-->编辑-->虚拟网络编辑器-->还原默认配置-->重置网络设置
2.VMware-->编辑-->虚拟网络编辑器-->选中VM8-->关掉DHCP(windows Vmware8修改静态IP)
3.查看网络相关配置(NET设置):
子网:192.168.179.0
子网掩码:255.255.255.0
网关:192.168.179.2
4.开启虚拟机,修改相关网络文件
修改eth0文件【/etc/sysconf/network-script/ifcfg-eth0】:
$>gedit /etc/sysconfig/network-scripts/ifcfg-eth0
修改:
BOOTPROTO=static #原值为DHCP
添加:
IPADDR=192.168.14.139 #静态IP
NETMASK=255.255.255.0 #子网掩码
NETWORK=192.168.179.0 #子网IP
GATEWAY=192.168.179.2 #网关IP(G)
DNS1=192.168.179.2 #网关IP(G)
***IP地址后,注意后面不能有空格或注释
5.生效网络(root 4个oK):
$>service network restart
6.修改主机名与IP的映射
$>gedit /etc/hosts
$>reboot
关闭防火墙(namenode datanode之间通讯)
$>service iptables stop #临时关闭
$>chkconfig iptables off #永久关闭
$>service network restart
克隆虚拟机 cat /etc/udev/rules.d/70-persistent-net.rules
1.关闭虚拟机-->选项【虚拟机】-->【管理】-->【克隆】
2.【下一步】-->【下一步】-->【选项:创建完整克隆】
3.指向本地虚拟机目录{事先创建文件夹 E:\slave1}
4.制定虚拟机名称为:slave1
5.修改克隆后的虚拟机静态IP(slave1)
a.查找eth1网络配置信息
$>cat /etc/udev/rules.d/70-persistent-net.rules
获取eth1的MAC地址为:ATTR{address}=="00:0c:29:a0:93:96"
b.修改静态IP文件
$>gedit /etc/sysconfig/network-scripts/ifcfg-eth0
修改:
DEVICE="eth1"
HWADDR="00:0c:29:a0:93:96"
IPADDR="192.168.14.140"
c.重启网络
$>service network restart
6.同第5步克隆指向本地虚拟机目录{E:\slave2} (完全分布完后增加节点)
gedit /etc/sysconfig/network-scripts/ifcfg-eth0
修改:
DEVICE=“eth2”
HWADDR=“00:0c:29:a0:93:96”
IPADDR=“192.168.14.140”
c.重启网络
$>service network restart
完全分布式搭建步骤(二)
1.克隆两个节点
2.修改静态IP
3.修改主机名:/etc/sysconfig/network【master(主),slave1(从),slave2(从)】
4.修改IP和主机名的映射:【/etc/hosts】
【手动修改每个 etc/hosts(修改主机名与IP地址映射)
vim /etc/hosts
192.168.172.136 master
192.168.172.137 slave1
192.168.172.138 slave2
以上文件在master修改后 再去salve1修改同样内容(思考如果有100台文件,我们需要修改100次,是否可以通过命令拷贝文件)
1).将hosts文件分发所有从节点salve2可以用拷贝的方式(如果拷贝不了查看hosts权限 chmod 777 hosts):
$>scp /etc/hosts crx@slave1:/etc/
$>scp /etc/hosts crx@slave2:/etc/
5.SSH无密登录 : 新增节点公钥分发到其它认证库中
6.安装JDK(略)
7.安装hadoop(略)
8.配置环境变量(略)
**9.修改hadoop配置文件 * $HADOOP_HOME/etc/hadoop 重点
a.core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name> 注:tmp临时的
<value>/home/crx/tmp/</value>
</property>
b.hdfs-site.xml
<property>
<name>dfs.replication</name> 注:规定文件复制几份
<value>3</value>
</property>
对mapred-site.xml.template重新命名为mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
c.mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<description>
用于执行MapReduce作业的运行时框架可以是local,classic或yarn之一。
</description>
</property>
d.yarn-site.xml
<property>
<!-- Reducer获取数据的方式 -->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
<description>RM的主机名</description>
</property>
e.slaves $HADOOP_HOME/etc/hadoop edgit slaves
添加datanode节点名称,以行为准
master
slave1
slave2
f.hadoop-env.sh
#配置JAVA_HOME
export JAVA_HOME=/home/crx/soft/jdk
#配置HADOOP_CONF_DIR
export HADOOP_CONF_DIR=/home/crx/soft/hadoop/etc/hadoop
【注意:
1).将hosts文件分发所有从节点:
$>scp /etc/hosts crx@slave1:/etc/
$>scp /etc/hosts crx@slave2:/etc/
2).将hadoop目录分发到所有从节点(不要复制软链接哦)
$> scp -r ~/soft/hadoop-2.7.3 crx@slave1:~/soft/
$> scp -r ~/soft/hadoop-2.7.3 crx@slave2:~/soft/
创建软链接
测试 cd $HADOOP_HOME/etc/hadoop
】
注意:克隆之后,要修改主机,IP与主机的映射, udev/../70-...中的IP复制到sysconfig/../ifcfg-etho中
然后service network restart 再reboot
ssh失败的原因:可能是master的etc/hosts没有slave1、slave2
10.格式化
a. 删除hadoop.tmp.dir设置路径下的所有文件(所有节点) ~/tmp
b. 删除HADOOP_LOG_DIR设置路径下的日志文件(所有节点) $HADOOP_HOME/logs
c. 格式化:
$>hdfs namenode -format(主节点 namenode)
11.开启完全分布式
$>start-dfs.sh
$>start-yarn.sh
$>start-all.sh
8386 Jps
7642 ResourceManager
7754 NodeManager
7420 SecondaryNameNode
7229 DataNode
7119 NameNode
查看webUI nodes节点个数
chmod -R 777 ~/tmp
注意:NameNode和ResourceManger如果不是同一台机器,不能在NameNode上启动YARN,应该在ResouceManager所在的机器上启动YARN。
YARN的浏览器页面查看,如下图所示:
http://master:8088/cluster
测试HDFS 上传数据,查看数据在~/tmp/date下