day41 Hadoop 安装

文章目录

  • Hadoop
    • 1、安装
    • 2、基本操作
  • 总结


I know, i know
地球另一端有你陪我




Hadoop

Hadoop是一个适合海量数据的分布式存储和分布式计算的平台

三大组件

hdfs:
是一个分布式存储框架,适合海量数据存储

mapreduce:
是一个分布式计算框架,适合海量数据计算

yarn:
是一个资源调度平台,负责给计算框架分配计算资源


1、安装

1 上传 hadoop 安装包并解压至 soft 文件夹

	tar -xvf hadoop-2.7.6.tar.gz

2 配置环境变量,退出后重启配置文件

	vim /etc/profile

	增加hadoop环境变量,将bin和sbin都配置到PATh中
	export HADOOP_HOME=/usr/local/soft/hadoop-2.7.6
	export PATH=.:$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin


	source /etc/profile

3 修改配置文件

	hadoop 配置文件在/usr/local/soft/hadoop-2.7.6/etc/hadoop/

3.1 slaves : 从节点列表(datanode)

	vim slaves
	
	//删除原对象
	//增加node1, node2 

3.2 hadoop-env.sh : Hadoop 环境配置文件

	vim hadoop-env.sh
	
	//修改JAVA_HOME
	export JAVA_HOME=/usr/local/soft/jdk1.8.0_171

3.3 core-site.xml : hadoop核心配置文件

	vim core-site.xml 
	
	//在 configuration 标签中间增加以下内容
	
	<property>
	<name>fs.defaultFS</name>
	<value>hdfs://master:9000</value>
	</property>

	<property>
	<name>hadoop.tmp.dir</name>
	<value>/usr/local/soft/hadoop-2.7.6/tmp</value>
	</property>

	<property>
	<name>fs.trash.interval</name>
	<value>1440</value>
	</property>

3.4 hdfs-site.xml : hdfs配置文件

	vim hdfs-site.xml

	//在configuration中间增加以下内容

	<property>
	<name>dfs.replication</name>
	<value>1</value>
	</property>

	<property>
	<name>dfs.permissions</name>
	<value>false</value>
	</property>

3.5 yarn-site.xml: yarn配置文件

	vim yarn-site.xml

	//在configuration中间增加以下内容

	<property>
	<name>yarn.resourcemanager.hostname</name>
	<value>master</value>
	</property>

	<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
	</property>

	<property>
	<name>yarn.log-aggregation-enable</name>
	<value>true</value>
	</property>

	<property>
	<name>yarn.log-aggregation.retain-seconds</name>
	<value>604800</value>
	</property>

	<property>  
	<name>yarn.nodemanager.resource.memory-mb</name>  
	<value>20480</value>  
	</property>  

	<property>  
	<name>yarn.scheduler.minimum-allocation-mb</name>  
	<value>2048</value>  
	</property>  

	<property>  
	<name>yarn.nodemanager.vmem-pmem-ratio</name>  
	<value>2.1</value>  
	</property>  

3.6 mapred-site.xml: mapreduce配置文件

	//重命名模板文件
	mv  mapred-site.xml.template mapred-site.xml

	vim 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> 

4 将 hadoop 安装文件分发到子节点

	scp -r /usr/local/soft/hadoop-2.7.6/ node1:/usr/local/soft/
	scp -r /usr/local/soft/hadoop-2.7.6/ node2:/usr/local/soft/

5 格式化namenode

	hdfs namenode -format

6 启动 hadoop

	start-all.sh

7 访问 hdfs 页面验证是否安装成功

	http://master:50070

8 关闭 hadoop

	stop-all.sh

附:如果安装失败

	   stop-all.sh
	   再次重启的时候
	1、需要手动将每个节点的tmp目录删除: 所有节点都要删除
	   rm -rf /usr/local/soft/hadoop-2.7.6/tmp
	   然后执行将namenode格式化
	2、在主节点执行命令:
	   hdfs namenode -format
	3、启动hadoop
	   start-all.sh

2、基本操作

由于 hadoop 是内置于 linux,并且大部分操作指令和 linux 相同
为了区分,需要在指令前加上 hadoop dfs

1、创建目录 mkdir

	hadoop dfs -mkdir
	
	//在根目录下创建a b c三个文件夹
	hadoop dfs -mkdir /a /b /c

2、递归创建目录

	hadoop dfs -mkdir -r

3、查看当前路径

	hadoop dfs -ls

4、从当前 linux 中上传文件 put 至 hadoop hdfs 数据库

	hadoop dfs -put linux中的文件 hadoop中的路径
	
	hadoop dfs -put students.txt /data/student

5、从 hadoop hdfs 数据库下载文件至当前 linux 路径

	hadoop dfs hadoop中的文件

	hadoop dfs -get /data/student/students.txt

6、复制

	hadoop dfs -cp /data/a.txt  /data/b/

7、查看文件内容(cat), 如果数据量比较大,不能使用

	hadoop dfs -cat /data/student/students.txt

8、移动 (mv),物理层面文件没有移动,只是改变了元数据(目录结构)

	 hadoop dfs -mv /a.txt /a

9、删除文件(rm)目录(rmr)

	hadoop dfs -rm /a/a.txt
	hadoop dfs -rmr /a
	并没有真正删除文件,只是将文件放到了回收站中,
	/user/root/.Trash/Current  ; 每一个用户都有一个回收站,会定期清空
		
			fs.trash.interval
			1440                 //此行即是时间
		

手动删除回收站

	Hadoop dfs -rmr /user/root/.Trash/Current 

10、强制删除,不经过回收站

	hadoop dfs -rmr -skipTrash /a

11、查看文件末尾(tail)

	 hadoop dfs -tail /data/student/students.txt
	 
	 -f : 一直等待查看

12、查看文件的大小

	hadoop dfs -du -h  /data

总结

hadoop dfsadmin -safemode get 命令是用来查看当前 hadoop 安全模式的开关状态

hadoop dfsadmin -safemode enter 命令是打开安全模式

hadoop dfsadmin -safemode leave 命令是离开安全模式

单纯修改从节点数据存储位置中的数据,是无法影响到主节点中获得的数据的
主节点存储的信息会详细到行!?

你可能感兴趣的:(redis,sql,mysql)