hadoop的单机配置
hadoop的单机配置
准备工作
利用vim /etc/sysconfig/network命令修改主机名称。
Ssh security shell
远程登录
登录远程服务器
$ ssh user@host
如果本地用户名与远程用户名一致,登录时可以省略用户名。
$ ssh host
提示信息
The authenticity of host 'host (12.18.429.21)' can't be established.
RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
Are you sure you want to continue connecting (yes/no)?
说明
这段话的意思是,无法确认host主机的真实性,只知道它的公钥指纹,问你还想继续连接吗?
所谓"公钥指纹",是指公钥长度较长(这里采用RSA算法,长达1024位),很难比对,所以对其进行MD5计算,将它变成一个128位的指纹。上例中是98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d,再进行比较,就容易多了。
很自然的一个问题就是,用户怎么知道远程主机的公钥指纹应该是多少?回答是没有好办法,远程主机必须在自己的网站上贴出公钥指纹,以便用户自行核对。
假定经过风险衡量以后,用户决定接受这个远程主机的公钥。
同意接受远程主机公钥
Are you sure you want to continue connecting (yes/no)? yes
系统提示认可
Warning: Permanently added 'host,12.18.429.21' (RSA) to the list of known hosts.
输入密码
Password: (enter password)
说明
当完成以上几步以后,就可以登录到远程服务器端了。当远程主机的公钥被接受以后,它就会被保存在文件$HOME/.ssh/known_hosts之中。下次再连接这台主机,系统就会认出它的公钥已经保存在本地了,从而跳过警告部分,直接提示输入密码。这样有一个缺点,就是每一次登录的时候都要输入密码,这样的操作是比较繁琐的。
公钥登录
步骤
1、 机器A发送自己的公钥到机器B,这个时候机器B有了机器A的公钥
2、 机器B发送一个随机的字符串向机器A
3、 机器A利用自己的私钥把字符串加密
4、 机器A把加密后的字符串再次发送给机器B
5、 机器B利用公钥解密字符串,如果和原来的一样,则OK。
实现
1、 生成自己的公钥和私钥
$ ssh-keygen
2、 把生成的公钥copy到远程机器上
$ ssh-copy-id user@host
3、 远程主机的authorized_keys文件
在远程主机上生成了一个authorized_keys文件,保存公钥的。
4、当再次访问的时候就不需要输入密码了。
jdk安装
上传jdk
在/home下创建一个文件夹app
jdk解压到app下
调用tar –zxvf 文件的目录 的命令把jdk解压缩在app目录下
命令解释:
tar –zxvf 文件的路径
f:指定文件的名称
z:以gz结尾的文件就是用gzip压缩的结果。与gzip相对的就是gunzip,这个参数的作用就是用来调用gzip。
X:为解开的意思
Z:详细报告处理文件的信息
转到jdk的bin目录下,输出java命令
[root@localhost bin]# ./java
Usage: java [-options] class [args...]
(to execute a class)
or java [-options] -jar jarfile [args...]
(to execute a jar file)
where options include:
-d32 use a 32-bit data model if available
-d64 use a 64-bit data model if available
-server to select the "server" VM
The default VM is server.
-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
A : separated list of directories, JAR archives,
and ZIP archives to search for class files.
当离开bin这个目录,输出java命令
[root@localhost bin]# cd ..
[root@localhost jdk1.7.0_45]# java
bash: java: command not found
[root@localhost jdk1.7.0_45]#
上述的内容很简单:不识别java这个命令
设置环境变量
export JAVA_HOME=/home/app/jdk1.7.0_45/
export PATH=$PATH:$JAVA_HOME/bin
把这两行配置放入到/etc/profile以后,要做source /etc/profile这样一个命令。
这样就设置了环境变量。
Echo命令
[root@localhost /]# echo $JAVA_HOME
/home/app/jdk1.7.0_45/
可以利用该命令看环境变量。
默认的配置文件
在hadoop-hdfs.jar包中,有一个配置文件
Hadoop-default.xml文件
在hadoop-common.jar包中,有一个配置文件
core-default.xml文件
修改hadoop-env.sh
主要是修改java_home的路径,在hadoop-env.sh的第27行。
把export JAVA_HOME=${JAVA_HOME}修改成具体的路径
[root@localhost hadoop]# vim hadoop-env.sh
export JAVA_HOME=${JAVA_HOME}àexport JAVA_HOME=/home/app/jdk1.7.0_45/
[root@localhost hadoop]# source hadoop-env.sh
如果比较难找,利用: set nu命令可以显示行数
修改core-site.xml
[root@localhost hadoop]# vim core-site.xml
原来的内容:
<configuration>
</configuration>
现在的内容:
<configuration>
<property>
<name>fs.defaultFS</name> namenode的名字
<value>hdfs://zd01:9000</value> namenode的地址
</property>
<property>
<name>hadoop.tmp.dir</name> 文件存储的名称
<value>/home/app/hadoop-2.6.0/tmp</value> 文件存储的地址
</property>
文件存储路径
data节点的路径
name节点的路径
修改hdfs-site.xml
原来的内容
<configuration>
</configuration>
现在的内容:
<configuration>
<property>
<name>dfs.replication</name> //指的是hdfs的副本的数量,包括自己。
<value>3</value>
</property>
</configuration>
修改mapred-site.xml
说明:在/etc/hadoop的目录下,只有一个mapred-site.xml.template文件,所以必须改名
[root@localhost hadoop]# mv mapred-site.xml.template mapred-site.xml
在mapred-site.xml文件中
原来的文件
<configuration>
</configuration>
现在的文件
<configuration>
<property> //指明mapreduce运行在yarn上
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
修改yarn-site.xml
原来的值:
<configuration>
<!-- Site specific YARN configuration properties -->
</configuration>
现在的值:
<configuration>
<property>
//指定resourcemanager的地址
<name>yarn.resourcemanager.hostname</name>
<value>zd01</value>
</property>
<property>
//reduce获取数据的方式
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
修改slaves
存放的是datanode节点的名称
配置hadoop的环境变量
export HADOOP_HOME=/home/app/hadoop-2.6.0/
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$ANT_HOME/bin
格式化namenode
操作
hdfs namenode –format(Hadoop namenode –format 以前的方式)
在格式化的时候,会有这样的输出:
Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted
作用
1、 清空namenode目录下的所有的文件,上图中的tmp/dfs/name下的所有的内容就是要清空的内容
2、 创建一些文件,例如:fsimage,edits文件
启动hadoop
在/home/app/hadoop-2.6.0/sbin目录下
[root@localhost sbin]# start-all.sh
hadoop的单机配置的更多相关文章
- Hadoop - 操作练习之单机配置 - Hadoop2.8.0/Ubuntu16.04
系统版本 anliven@Ubuntu1604:~$ uname -a Linux Ubuntu1604 4.8.0-36-generic #36~16.04.1-Ubuntu SMP Sun Feb ...
- Data - Hadoop单机配置 - 使用Hadoop2.8.0和Ubuntu16.04
系统版本 anliven@Ubuntu1604:~$ uname -a Linux Ubuntu1604 4.8.0-36-generic #36~16.04.1-Ubuntu SMP Sun Feb ...
- hadoop单机配置
条件: 先下载VMware1.2,然后安装. 下载ubuntu-1.4.05-desktop-amd64.iso.下载地址:http://mirrors.aliyun.com/ubuntu-relea ...
- ubuntu 单机配置hadoop
前言 因为是课程要求,所以在自己电脑上安装了hadoop,由于没有使用虚拟机,所以使用单机模拟hadoop的使用,可以上传文件,下载文件. 1.安装配置JDK Ubuntu18.04是自带Java1. ...
- Hadoop安装-单机-伪分布式简单部署配置
最近在搞大数据项目支持所以有时间写下hadoop随笔吧. 环境介绍: Linux: centos7 jdk:java version "1.8.0_181 hadoop:hadoop-3.2 ...
- [Hadoop入门] - 2 ubuntu安装与配置 hadoop安装与配置
ubuntu安装(这里我就不一一捉图了,只引用一个网址, 相信大家能力) ubuntu安装参考教程: http://jingyan.baidu.com/article/14bd256e0ca52eb ...
- hadoop安装和配置
这里只是涉及了hadoop的一些思路,所以完全分布式配置文件并没有哦!以后会把详细的配置过程和使用环境补充在另外一篇博客中 hadoop的安装: --------------------------- ...
- 五十九.大数据、Hadoop 、 Hadoop安装与配置 、 HDFS
1.安装Hadoop 单机模式安装Hadoop 安装JAVA环境 设置环境变量,启动运行 1.1 环境准备 1)配置主机名为nn01,ip为192.168.1.21,配置yum源(系统源) 备 ...
- hadoop 文件参数配置
准备环境(省略) 上传实验所需的压缩包 配置网络信息 修改主机名 配置域名解析 关闭防火墙与SELinux(在所有节点上执行)代码如下: systemctl disable --now firewal ...
随机推荐
- SparkSQL之UDAF使用
1.创建一个类继承UserDefinedAggregateFunction类. ------------------------------------------------------------ ...
- JavaScript基础之变量的自增与自减
一.自增(++) ⑴什么是自增? 通过自增运算符可以使变量在自身的基础上加一: 对于一个变量自增以后,原变量的值会立即自增一: 示例: <!DOCTYPE html> <html l ...
- BZOJ 1923: [Sdoi2010]外星千足虫 高斯消元+bitset
高斯消元求解异或方程组,可以多学一下 $bitset$ 在位运算中的各种神奇操作. #include <cstdio> #include <bitset> #define N ...
- JavaScript复制内容到剪贴板
移动端 需要复制内容到剪贴板时, clipborad.js 不支持ios微信版浏览器,可配合使用 execCommand 使其兼容, 完成一键复制淘口令的功能. 注意使用clipborad.js时,i ...
- 灰度图像--图像分割 阈值处理之P-Tile阈值
学习DIP第53天 转载请标明本文出处:***http://blog.csdn.net/tonyshengtan ***,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:http ...
- leetcode题目17.电话号码的字母组合(中等)
题目描述: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合. 给出数字到字母的映射如下(与电话按键相同).注意 1 不对应任何字母. 示例: 输入:"23"输出: ...
- Spring Boot 入门之消息中间件篇(转发)
一.前言 在消息中间件中有 2 个重要的概念:消息代理和目的地.当消息发送者发送消息后,消息就被消息代理接管,消息代理保证消息传递到指定目的地. 我们常用的消息代理有 JMS 和 AMQP 规范.对应 ...
- laravel 先orderBY再groupby,导致分组后的排序不正确
//联系过我的经纪人 $appletChats=$this->AppletChat->orderBy('created_at','desc')->where([['user_id', ...
- .NET DLL 保护措施详解(非混淆加密加壳)
为什么要保护DLL,我就不多说了,各人有各人的理由.总的来说,就是不想核心逻辑泄露及授权验证被破解两大方面的因素.市面上的混淆加密工具对.NET源码保护的效果天差地别,很多网上下到的混淆工具破解版对. ...
- JDK压缩指针
https://www.cnblogs.com/iceAeterNa/p/4877549.html