IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 关于Hadoop搭建经验 -> 正文阅读

[系统运维]关于Hadoop搭建经验

??????????

步骤一:vi? /etc/sysconfig/network-scripts/ifcfg-ens33 修改虚拟机IP地址

vi /etc/hosts

192.168.10.10 master

192.168.10.11 slave1

192.168.10.12 slave2??? 记录各虚拟机IP地址,

vi? /etc/hostname

master slave1 slave2

互相ping,使可以互相连接。

reboot

步骤二:systemctl stop firewalld? 关闭防火墙 reboot

#ssh-keygen -t rsa生成密钥对

cd .ssh

cat id_rsa.pub

查看密钥

在.ssh下编辑.

vi? authorized_keys

将密钥复制

保存退出

scp? authorized_keys? root@slave1:/root/.ssh/

scp? authorized_keys? root@slave2:/root/.ssh/

三台虚拟机互相连接

步骤三:

拖拽压缩包

# tar -xvf jdk-8u161-linux-x64.tar.gz

# mv jdk1.8.0_161/ /usr/local/jdk1.8

#?cd? /usr/local

在local目录下编辑

#vi? /etc/profile? 在末尾添加以下的内容:

export JAVA_HOME=/usr/local/jdk1.8/

export JRE_HOME=/usr/local/jdk1.8/jre

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

之后执行命令:#source /etc/profile

  1. master虚拟机拷贝jdk到slave1和slave2;

参考命令:

#scp? -r? /usr/local/jdk1.8? root@slave1:/usr/local/

?其中-r参数表示递归复制该目录下的所有目录和文件。

#scp? -r? /usr/local/jdk1.8? root@slave2:/usr/local/

#scp? /etc/profile? root@slave1:/etc/profile

#scp? /etc/profile? root@slave2:/etc/profile 从master虚拟机拷贝/etc/profile到slave1和slave2并执行

#source? /etc/profile

步骤四、安装hadoop完全分布式集群

  1. 下载hadoop软件包解压到master虚拟机/usr/local/hadoop;

# tar -zxvf hadoop-2.6.0.tar.gz

移动Hadoop

mv hadoop-2.6.0/ /usr/local/hadoop注:在普通用户下移动

cd /usr/local/hadoop

mkdir tmp

vi? /etc/profile

export HADOOP_INSTALL=/usr/local/hadoop

export PATH=${HADOOP_INSTALL}/bin:${HADOOP_INSTALL}/sbin:${PATH}

export HADOOP_MAPRED_HOME=${HADOOP_INSTALL}

export HADOOP_COMMON_HOME=${HADOOP_INSTALL}

export HADOOP_HDFS_HOME=${HADOOP_INSTALL}

export YARN_HOME=${HADOOP_INSTALLL}

cd ?/usr/local/hadoop/etc/hadoop

  1. vim? hadoop-env.sh

注意这里写的路径要对应实际的路径,下同

  1. vim? yarn-env.sh

  1. vim? mapred-env.sh

  1. vim? core-site.xml

注意这两个value的值,路径要修改为实际的路径,hdfs://master主机的主机名。

<configuration>

?<property><!--hadoop临时文件的存放目录-->

? <name>hadoop.tmp.dir</name>

? <value>/usr/local/hadoop/tmp</value>

?</property>

?<property><!--NameNode 的URI默认端口为8020-->

? <name>fs.default.name</name>

? <value>hdfs://master</value>

?</property>

</configuration>

  1. vim? hdfs-site.xml

注意这里的value要改成实际情况中的路径,数据需要备份的数量不能大于集群的机器数量,默认为3,由于只准备了两台slave虚拟机,所以已经改成2了。

<configuration>

?<property><!--namenode持久存储名字空间及事务日志的本地文件系统路径-->

? <name>dfs.name.dir</name>

? <value>/usr/local/hadoop/dfs/name</value>

?</property>

?<property><!--DataNode存放块数据的本地文件系统路径-->

? <name>dfs.data.dir</name>

? <value>/usr/local/hadoop/dfs/data</value>

?</property>

?<property><!--数据需要备份的数量,不能大于集群的机器数量,默认为3-->

? <name>dfs.replication</name>

? <value>2</value>

?</property>

</configuration>

  1. vim? yarn-site.xml

注意这里需要修改主机名为master虚拟机的主机名,其它的用默认的就行了。

<configuration>

<!-- Site specific YARN configuration properties -->

<property><!--NodeManager上运行的附属服务,用于运行mapreduce-->

? <name>yarn.nodemanager.aux-services</name>

? <value>mapreduce_shuffle</value>

</property>

<property> <!--ResourceManager 对客户端暴露的地址-->

? <name>yarn.resourcemanager.address</name>

? <value>master:8032</value>

</property>

<property><!--ResourceManager 对ApplicationMaster暴露的地址-->

<name>yarn.resourcemanager.scheduler.address</name>

? <value>master:8030</value>

</property>

<property><!--ResourceManager 对NodeManager暴露的地址-->

<name>yarn.resourcemanager.resource-tracker.address</name>

<value>master:8031</value>

</property>

<property><!--ResourceManager 对管理员暴露的地址-->

<name>yarn.resourcemanager.master.address</name>

?<value>master:8033</value>

</property>

<property><!--ResourceManager 对外web暴露的地址,可在浏览器查看-->

<name>yarn.resourcemanager.webapp.address</name>

<value>master:8088</value>

</property>

</configuration>

(7)vim? mapred-site.xml ?(拷贝 mapred-site.xml.template)

#cp? mapred-site.xml.template? mapred-site.xml

#vim? mapred-site.xml

<configuration>

?<property>

? <name>mapreduce.framework.name</name>

? <value>yarn</value>

?</property>

</configuration>

(8) vi slaves

Slave1

Slave2

#scp? -r? /usr/local/hadoop? root@slave1:/usr/local/

#scp? -r? /usr/local/hadoop? root@slave2:/usr/local/

scp? /etc/profile? root@slave1:/etc/profile

#source? /etc/profile

步骤五、初始化hdfs启动hadoop集群(20

查看防火墙systemctl status firewalld

  1. master虚拟机上执行hdfs初始化;

首先在进入相应的目录,例如:cd /usr/local/hadoop/bin

执行命令:./hadoop? namenode? -format

不报错的话,即执行成功,如图:? ? ??

格式化成功后,可以在看到在hadoop/dfs/name/目录多了一个current目录

  1. master虚拟机使用脚本启动hadoop集群;

可以先进入相应的目录,例如:cd /usr/local/hadoop/sbin/

脚本启动hadoop集群: ./start-all.sh

在slave1和slave2中用jps检查是否成功启动。

这时可以用浏览器访问网页内容

停止集群 ./stop-all.sh

步骤六:#hdfs dfs -ls? /? 可以查看hdfs的根目录。

# hdfs dfs -mkdir /input????????? 在根目录建立input目录

hdfs dfs -put ?/root/anaconda-ks.cfg? ?/input

注意关闭防火墙

  1. master虚拟机运行hadoop例程中自带的wordcount程序

参考示例:注意路径可能不同,要写实际的路径。

# hadoop jar hadoop-mapreduce-examples-2.6.0.jar wordcount /input/*? ?/output

使用hdfs dfs -ls 命令查看wordcount程序运行结果目录

#hdfs dfs -ls / output

使用hdfs dfs -cat命令查看wordcount程序运行结果内容

# hdfs dfs -cat /output/part-r-00000

总结:

在学习中,遇到了各种错误,第一步可能会发生编辑的错误导致在xshell连接失败

还有net 桥连接要配置成功

第二步中容易将authorized_keys建立在其他目录,导致连接的失败

第三步中解压jdk1.8,我在操作的几遍中基本正确

第四步vi编辑要记住指令与

master虚拟机拷贝hadoop到slave1和slave2中步骤要按部就班

第五步要关闭防火墙,在第二遍中因为防火墙没关导致在网页无法连接

第六步基本无错误

查看防火墙systemctl status firewalld

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-11-16 19:14:17  更:2021-11-16 19:16:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 1:56:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码