环境搭建及hadoop安装

环境配置

目标配置三台虚拟机(CentOS7.6版本),网络配置已完成,JDK已安装并配置环境变量,防火墙已关闭

hostnamectl set-hostname num04

域名映射

【必选操作】
首先配置当前主机名

可以执行hostname查看到当前主机名,为进行配置的话可以看到一个IP地址
执行hostnamectl set-hostname 主机名,为主机设置主机名,这里三台主机就分别命名为num04 num05 num06

hostnamectl set-hostname num04
hostnamectl set-hostname num05
hostnamectl set-hostname num06

主机名配置成功后,下一步在配置文件中配置域名映射

以下操作可以三台虚拟机同步进行,Xshell工具可以右键选择发送键输入到所有会话,Xmoba可以点击顶部的MultiExec

编辑域名映射文件,vi /etc/hosts
进入编辑器后可以看到上面已有的两行内容,不需要改动,在后面添加
在这里插入图片描述
格式为ip地址 主机名
完成后保存退出即可

免密登录

【必选操作】
以下命令也在三台虚拟机同步执行
生成密钥:ssh-keygen -t rsa -P “”
一路回车或者选择yes即可,可以看到生成了密钥和对应的密钥图形
在这里插入图片描述
从提示信息可以看到,此时的密钥保存在当前用户(root)目录下.ssh/id_rsa.pub文件中
将密钥保存到另一个文件中:cat .ssh/id_rsa.pub > .ssh/authorized_keys

接下来要互相分发密钥,先将所有密钥发送到一台虚拟机上,所以目标虚拟机暂时不进行操作,对剩余几台虚拟机进行密钥分发指令:ssh-copy-id -i .ssh/id_rsa.pub root@num04

以上操作执行后,可以到num04查看是否操作成功(仅num04执行操作):cat .ssh/authorized_keys
在这里插入图片描述
可以看到,三台虚拟机的密钥都已发送到num04虚拟机上,接下来只需要num04虚拟机将密钥文件发送到剩余虚拟机上即可,执行以下操作指令:
scp .ssh/authorized_keys root@num05:/root/.ssh/
scp .ssh/authorized_keys root@num06:/root/.ssh/

到此,就以实现三台虚拟机之间的免密登录,可以到剩余两台虚拟机查看是否同样保存了三台虚拟机的密钥,然后使用ssh 主机名 指令登录其他虚拟机,查看是否需要密码,能免密登录到所有虚拟机就说明设置成功了

说明:
1、使用root用户执行操作,且工作目录为root文件夹
2、操作执行成功后,登录其他虚拟机时可能会被询问是否需要连接,输入yes即可,对后续操作没有影响
3、需要从头开始执行时,可以重新生成密钥,系统会询问是否覆盖原有密钥,输入yes即可

关闭SELinux

【可选操作】
SELinux是Linux系统自带的安全软件,可以认为是Linux系统的电脑管家,该软件会为系统提供安全防护,但是由于其安全政策,可能会影响后续操作,所以可以选择将其关闭

SELinux有三种工作模式:
enforcing 强制模式
permissive 宽容模式
disable 关闭

三台虚拟机同步操作,vi /etc/selinux/config
在这里插入图片描述
可以看到,selinux默认是强制模式,将enforcing改为disabled,然后保存退出即可

时钟同步

【推荐操作】
三台虚拟机同时操作:
安装ntp:yum -y install ntp
编辑进程任务:crontab -e
编辑任务:

*/1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com; 

任务目标:每分钟将系统时间同步为阿里云网站上的时间

软件安装

将安装文件放到/opt目录下

环境变量配置

vi /etc/profile #修改配置文件
export HADOOP_HOME=/opt/hadoop260 #配置到hadoop安装目录
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin # 这部分加到原有的PATH路径后面
source /etc/profile # 配置生效

配置文件

vi hadoop-env.sh
在这里插入图片描述
vi core-site.xml

<configuration>
	<!--配置hadoop主机,可以直接写IP地址也可以直接写配置的主机名-->
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://num02:9000</value>
	</property>
	<!--指定hadoop临时文件存放地址,需要自行指定-->
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/opt/hadoop/tmp</value>
	</property>
	<!--如果不搭建集群下面两项配置可以不写-->
	<!--指定用户访问权限,value为*说明所有用户可以访问-->
	<property>
		<name>hadoop.proxyuser.root.hosts</name>
		<value>*</value>
	</property>
	<!--指定组访问权限,value为*说明所有组可以访问-->
	<property>
		<name>hadoop.proxyuser.root.groups</name>
		<value>*</value>
	</property>
</configuration>

vi hdfs-site.xml

<configuration>
	<!--
	这里指定的是文件分片数量,
	如果是本地模式运行,该属性不配置
	如果是伪分布式,值配置为1
	如果是完全分不知,值配置为节点个数
	-->
	<property>
		<name>dfs.replication</name>
		<value>1</value>
	</property>
</configuration>

vi mapred-site.xml.template(修改完成后重命名为mapred-site.xml)

<configuration>
	<!--这里指定的是管理mapreduce的工具,指定yarn-->
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
</configuration>

vi 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>
	<!--配置yarn的resourcemanager主机-->
	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>num02</value>
	</property>
</configuration>

执行格式化 hdfs namenode -format
在这里插入图片描述
打印信息中有以上两个提示说明初始化成功,可以看到自动生成了tmp文件夹
在这里插入图片描述
在hadoop家目录下,调用start-all.sh启动服务(逐个启动hdfs yarn也可以)
启动完成后,调用jps命令可以看到以下几个进程执行
在这里插入图片描述
开启成功(前面启动失败的在家目录下的logs文件夹查看日志,保存了失败原因)
这时就能打开对应的网页了,地址为虚拟机IP地址,端口号为50070
在这里插入图片描述
这里是hdfs的情况总览,打开图中所示标签可以看到hdfs文件系统
还有另外两个搭配IP地址打开的端口是8088和19888(这个需要提前开启历史服务)

上面完成了Hadoop安装伪分布式架构的最基本搭建,更多的配置信息将在后续博文补全

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值