安装hadoop2.6.5集群:
1.规划设计:
JacK6:NameNode,jobtracker
JacK7:secondnode,datenode,tasktracker
JacK8:datanode,tasktracker
2.配置ssh免密钥登录
1.关闭SElinux
su root
setenforce 0
vi /etc/selinux/config
SELINUX=disabled
2.配置ssh免密钥:分别在6、7、8(需要免密钥自己)执行(pssh值得研究)
ssh-keygen -t rsa -P ''
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@JacK8
ssh JacK7
3. 系统配置:
1.关闭防火墙
service iptables stop
service iptables status
chkconfig iptables off
2.关闭透明大页
查看:cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
[always] madvise never 标识启用
关闭:echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
3.修改swappiness
Linux内核参数vm.swappiness,值的范围为0~100,表示系统什么时候开始进行物理内存 与虚拟内存的交换。
举个例子,系统总内存为64G,vm.swappiness为60,表示在系统内存使用64*0.4=25.6G 的时候开始物理内存与虚拟内存的交换,
这个动作势必会影响系统的性能。因此,Cloudera建议把这个值修改为1~10。
查看:cat /proc/sys/vm/swappiness
修改:
临时:sysctl -w vm.swappiness=10
永久生效:
echo "vm.swappiness=10" >> /etc/sysctl.conf
4.修改文件打开最大数和最大进程数:后面两个文件有待研究
查看:ulimit -a
修改可打开的最大文件数:vi /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535
hadoop soft nproc 10240
hadoop hard nofile 10240
hadoop soft nproc 10240
hadoop hard nproc 10240
重启生效,其他两个文件:
/etc/security/limits.d/90-nproc.conf文件尾添加
* soft nproc 204800
* hard nproc 204800
/etc/security/limits.d/def.conf文件尾添加
* soft nofile 204800
* hard nofile 204800
5.禁用IPv6:以后再看
vi /etc/sysconfig/network
6.屏蔽文件访问时间:以后再看
4.建立本地yum仓库:以后再建
5.NTP配置:以后
6.安装Java
7.hadoop安装
1.mkdir Hadoop_2.6.5
tar -xvf /data/tar/hadoop-2.6.5.tar.gz -C /data/hadoop/Hadoop_2.6.5/
tar -xvf hadoop-native-64-2.6.0.tar -C /data/hadoop/Hadoop_2.6.5/lib/native
vi ~/.bash_profile
#Hadoop_2.6.5
export HADOOP_HOME=/data/hadoop/Hadoop_2.6.5
export HADOOP_PREFIX=$HADOOP_HOME
export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}
export HADOOP_COMMON_HOME=${HADOOP_PREFIX}
export HADOOP_HDFS_HOME=${HADOOP_PREFIX}
export YARN_HOME=${HADOOP_PREFIX}
# Native Path
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib/native"
export PATH=$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin:
$JAVA_HOME/bin:$PATH
scp .bash_profile JacK7
scp .bash_profile JacK8
2.修改配置文件:
cd /data/hadoop/Hadoop_2.6.5/etc/hadoop
1.vi hadoop-env.sh
# 明确指定JAVA_HOME
export JAVA_HOME=/usr/software/java_1.8
# 明确指定log的存放目录,默认位置是安装目录下的logs文件夹
export HADOOP_LOG_DIR=/data/tmp_data/hadoop_data/logs
2.vi yarn-env.sh
export JAVA_HOME=/usr/software/java_1.8
#if [ "$JAVA_HOME" != "" ]; then
# #echo "run java in $JAVA_HOME"
# JAVA_HOME=$JAVA_HOME
#fi
#
#if [ "$JAVA_HOME" = "" ]; then
# echo "Error: JAVA_HOME is not set."
# exit 1
#fi
3.vi slaves 修改namenode和secondnode上的slaves文件
JacK7
JacK8
4.vi core-site.xml 配置core-site文件
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://JacK6:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/data/tmp_data/hadoop_data/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
5.vi hdfs-site.xml配置secondnamenode
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>JacK7:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/data/tmp_data/hadoop_data/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/data/tmp_data/hadoop_data/hdfs</value>
</property>
</configuration>
6.cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>JacK6:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>JacK6:19888</value>
</property>
</configuration>
7.vi yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>JacK6</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
8.复制到其他节点:
scp -r Hadoop_2.6.5/ JacK7:/data/hadoop/
scp -r Hadoop_2.6.5/ JacK8:/data/hadoop/
9.启停测试:
1 $hdfs namenode -format HDFS格式化
首次启动需要先在 Master 节点执行 NameNode 的格式化,之后的启动不需要再去进行:
2 start-dfs.sh 在主节点启动所有守护进程,通过在各节点jps来查看
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver
3. hdfs dfsadmin -report 主节点查看集群的DataNode是否启动
4. stop-yarn.sh
stop-dfs.sh
mr-jobhistory-daemon.sh stop historyserver
- 【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
Oracle 11G RAC集群安装(七) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总. ...
- kafka集群安装部署
kafka集群安装 使用的版本 系统:centos6.5 centos6.7 jdk:1.7.0_79 zookeeper:3.4.9 kafka:2.10-0.10.1.0 一.环境准备[只列,不具 ...
- CentOS下Hadoop-2.2.0集群安装配置
对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...
- Hadoop多节点集群安装配置
目录: 1.集群部署介绍 1.1 Hadoop简介 1.2 环境说明 1.3 环境配置 1.4 所需软件 2.SSH无密码验证配置 2.1 SSH基本原理和用法 2.2 配置Master无密码登录所有 ...
- codis集群安装
在网上找了很多codis的集群安装方法,看起来都是大同小异,本人结合了大多种方法完成了一套自己使用的codis的集群安装,可以供大家学习使用,如果有什么问题或者不懂的地方欢迎指正 1.集群规划: 三台 ...
- [bigdata] spark集群安装及测试
在spark安装之前,应该已经安装了hadoop原生版或者cdh,因为spark基本要基于hdfs来进行计算. 1. 下载 spark: http://mirrors.cnnic.cn/apache ...
- (原) 1.2 Zookeeper伪集群安装
本文为原创文章,转载请注明出处,谢谢 Zookeeper伪集群安装 zookeeper单机安装配置可以查看 1.1 zookeeper单机安装 1.复制三份zookeeper,分别为zookeeper ...
- 一步步教你Hadoop多节点集群安装配置
1.集群部署介绍 1.1 Hadoop简介 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台.以Hadoop分布式文件系统HDFS(Hadoop Distributed Filesys ...
- kafka 集群安装与安装测试
一.集群安装 1. Kafka下载:wget https://archive.apache.org/dist/kafka/0.8.1/kafka_2.9.2-0.8.1.tgz 解压 tar zxvf ...
随机推荐
- Servlet 的面试题
Servlet运行在Servlet容器中,其生命周期由容器来管理.Servlet的生命周期通过javax.servlet.Servlet接口中的init().service()和destroy()方法 ...
- 三、解析class文件
一.class文件 https://blog.csdn.net/tyyj90/article/details/78472986 https://blog.csdn.net/sinat_38259539 ...
- 一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式
前言 有时候我们需要在应用启动时执行一些代码片段,这些片段可能是仅仅是为了记录 log,也可能是在启动时检查与安装证书 ,诸如上述业务要求我们可能会经常碰到 Spring Boot 提供了至少 5 种 ...
- DEVOPS技术实践_13:使用Jenkins持续传送设计-CD基础
1. 分支策略 持续集成中使用的分支策略包括以下三个: The master branch The integration branch The feature branch 而CD只在Integra ...
- 从零开始のcocos2dx生活(三)Scheduler
文章目录 取模 Timer() 变量 设置定时器Timer() 一些成员函数 Scheduler() 变量 初始化 哈希表 构造函数schedule() 开启定时器Update() 析构函数~Upda ...
- $Codeforces\ 522D\ Closest\ Equals$ 线段树
正解:线段树 解题报告: 传送门$QwQ$ 题目大意是说给定一个数列,然后有若干次询问,每次询问一个区间内相同数字之间距离最近是多少$QwQ$.如果不存在相同数字输出-1就成$QwQ$ 考虑先预处理出 ...
- 组件的props属性和state状态
props属性: 我使用代码来说明React中props属性: // Profile.jsx import React from 'react' ; export default Class Prof ...
- docker-代理服务器
配置Docker以使用代理服务器 如果容器需要使用HTTP,HTTPS或FTP代理服务器,则可以通过不同方式对其进行配置: 在Docker 17.07及更高版本中,可以 将Docker客户端配置为自动 ...
- keuectl命令
Kubernetes命令行 kubectl用于运行Kubernetes集群命令的管理工具 kubectl命令行语法 kubectl [command] [TYPE] [NAME] [flags] co ...
- echo 传义序列
echo 传义序列:\a 警示字符\b 退格\c 输出中忽略最后的换行符\f 清屏\n 换行\r 回车\t 水平制表符\v 垂直制表符\\ 反斜杠字符\0ddd 将字符表示成1到3位的八进制数值