Hadoop 重新安装时的一些配置没有很好地记录下来, 很难找到, 注意一下, 与您分享, 如果有错误, 指示正确 。 因为没有 Word 的截图副本, 它可以从下面的链接下载到原始 Word 。 没有博客写作习惯, 有些会稍后分享 。
用于重新安装 Hadoop 的一些配置没有很好地记录, 并且很难找到这个时间, 与您共享它, 如果它有错误, 指示正确 。 因为没有从 Word 复制图像, 它们可以从下面的链接下载到原始的 Word 。 之前没有博客写作习惯, 前面的一些笔记稍后会共享 。
http://pan.baidu.com/s/1gdKdEcb
住在水里的人在他的博客上收集了许多信息,他的地址也张贴在这里。 许多文章写得很好,他们建议感兴趣的朋友看看。
http://www.superwu.cn/author/admin/
1.2.1.1.1. 查看主机名
[root@hadoop1 ~]# hostname
hadoop1
?
1.2.1.2. 修改主机名
[root@hadoop1 ~]# vi /etc/sysconfig/network
?
NETWORKING=yes
HOSTNAME=hadoop1
使用 ifconfig 命令查看当前网络配置
看看目前的主机和目标主机能否相互连接
Telnet ip 端口, 以查看当前主机主机能否进入目标机器的港口端
Wget? http://www.baidu.comwget 下载文件的命令。 直接 wget? 100%的地址可以测试当前主机是否访问外联网, 因为当前机器在编译 Hadoop 源代码时必须访问外联网 。
1.3.1.1. 使用虚拟机器的网络
选择桥模式, 并选择桥选择当前物理机器的网卡, 我用它来无线访问, 我的有线网络配置关闭, 所以这里只有一个选项 。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
配置如下,建议说明所有与IPV6有关的配置。
DEVICE="eth0"
软件软件=静态#静态IP
#IPV6INIT="yes"
NM_CONTROLLED="yes"
OOBOOT ="是"吗?
TYPE="Ethernet"
#UUID="2d678a8b-6c40-4ebc-8f4e-245ef6b7a969"
NETMASK = 255.55.255.0# 网络面具?
GATEWAY=192.168.1.1# Gateip与物理机器相同
IPADDD= 同一节中的192168.1201#ip地址和物理机器
PREFIX=24
DNS1 = 101.226.4.6? #NDS 服务地址?与物理机器相同。
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
#IPV6_AUTOCONF=yes
#IPV6_DEFROUTE=yes
#IPV6_FAILURE_FATAL=no
NAME="System eth0"
HWADR = 00:0C:29:92:E5:B7?##MAC 地址必需且符合/etc/udev/rules.d/70-peristent-net.rules?
#IPV6_PEERDNS=yes
#IPV6_PEERROUTES=yes
LAST_CONNECT=1397965330
?
Sodo 服务网络重新启动吗? (如果 sudo 命令无法使用设置方法, 详情见附录 1 )
1.3.4.4.1. 解决办法1
删除rm/etc/udev/rules.d/70-持久性-net。
然后我们重开虚拟机器 重开网络卡
1.3.4.4.2. 解决办法2
查看/ etc/ udev/ rules.d/70- peristent- net.rules 文件的内容,有时使用两个 ApplyYSTEM 配置,删除 NAME = “ eth* ”, 只保留 NAME = “eth0 ” 配置, 然后重新启动网页卡 。
1.3.4.3. 解决办法 3
view/etc/udev/rules.d/70-peristent-net.rues 文件,即使只有一个配置?NAME=ETH1和/etc/sysconfig/net-scripts/iffcg-eth0
mv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1
然后重开网卡
Ps:我遇到了很多问题。如果我做不到更多,我做不到。
此文件包含IP 地址和主机名的映射, 需要包含集中所有机器的 ip 和主机名地图 。
生成公用和私用钥匙
ssh-keygen -t rsa
输入~/.sh?
cat id_rsa.pub >> authorized_keys
然后使用 ssh 本地主机命令测试 ssh 配置是否正确 。
有时,空降着陆失败,可按以下方法处理。
sudo chmod 644 ~/.ssh/authorized_keys
sudo chmod 700 ~/.ssh
在 Ubuntu Ubuntu 下测试 ssh 时使用 ssh 时使用 ssh
本地主机吗? 命令, 错误提示
refused
? 错误可能是由于 ssh-server 尚未安装或启动。
11.10? 默认安装开开切切切片,但木材安装服务器
运行ps -e grep ssh, 看看是否有一个shd进程
如果不是,请表明服务器 没有开始通过/etc/init.d/shh
如果 Ssh 不存在, 启动服务器进程 。
那你没有安装服务器
由 sudo appet-get 安装 开关- 服务器命令安装
从 Oracle 网络下载最新版本的 JDK 时, 需要选择 linux 版本( 注意根据服务器选择 64 和 32 版本 )
Jdk 下载地址
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
个人习惯安装为 tar.gz 软件包
下载和上传 jdk 文件到服务器或直接下载到服务器上
Wget?http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-x64.tar.gz
1.6.2.1.1. 降压
tar –zxvfjdk-8u5-linux-x64.tar.gz
1.6.2.2. 配置环境变量
(因为在实际离线环境中有许多用户, 每个用户可能需要使用不同的 jdk 版本, 所以jdk 配置只需要当前用户才能有效)
vi ~/.bashrc
export JAVA_HOME=/home/hadoop/software/jdk1.7.0_51
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin: $PATH
1.6.2.3. 成功安装的验证
Java –version
如果版本号正确显示在下图中,则安装成功 :
官方提醒 Maven 的版本应该超过 3. 0 才能尽可能安装最新版本 。 (这是用于编译 Hadoop 的软件配置 。 )
JDK 1.6+
* Maven 3.0 or later
* Findbugs 1.3.9 (if running findbugs)
* ProtocolBuffer 2.5.0
* CMake 2.6 or newer
下载马文
Wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.2.1/binaries/apache-maven-3.2.1-bin.tar.gz
1.7.2.1.1. 修改仓库地址
在 ${MAVEN_HOME}/ conf/ seconds. xml 文件中, 找到中间的镜像节点吗? 在红部分配置下( 如果未修改的话, 国外的中央仓库会默认使用。 Hadoop 在编译时下载了大量罐子文件。 国外的中央仓库会使用中国开放源码提供的 Maven 仓库更快地下载) 。
?nexus-osc
?*
?Nexus osc
?http://maven.oschina.net/content/groups/public/
1.7.2.2.2. 在设置. xml 中修改本地仓库目录地址
查找本地仓库节点中间的地址, 并将其更改为存储 mavne 下载的文件所在的目录地址( 如果未配置此目录, 需要提前创建此目录) 。 默认当前文件存储在当前用户的主目录中吗?
localRepository>/home/Hadoop/repo
1.7.2.3. 配置环境变量
在.bashrc 中添加以下配置?
export MAVEN_HOME=/home/hadoop/software/apache-maven-3.1.1
export PATH=$MAVEN_HOME/bin:$PATH
1.7.2.4. 成功安装的验证
mvn –version
如果版本号正确显示在下图中,则安装成功 :
1.8.1.1.. 下下载压低
下载地址 https://code.google.com/p/protobuf/ downloads/list
Wget?https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz
Tar –zxvf protobuf-2.5.0.tar.gz
1.8.1.2. 安装
https://www.php.cn/configure --prefix=/home/hadoop/software/protobuf
前缀? 指定安装路径的参数
make
ake install
1.8.1.3. 配置环境变量
export PROTOC_HOME=/home/hadoop/software/protobuf
PATH=$PROTOC_HOME/bin:$PATH
1.8.1.4. 成功安装的验证
protoc –version
如果下图正确显示版本号,则安装成功
下载地址:http://www.cmake.org/cmake/resources/software.html
wget http://221.178.162.232/data4/06/f1/4c/96/df/b6/c5/4e/70/41/4c/48/c4/05/aa/88/cmake-2.8.12.2.tar.gz
~ zxvf cmake-2.8.12.2.tar.gz (千兆赫)
https://www.php.cn/bootstrap –prefix=/home/hadoop/software/cmake
make
make?install
1.9.2.1.1.1. 配置环境变量
export CMAKE_HOME=/home/hadoop/software/cmake
PATH=$ CMAKE_HOME/bin:$PATH
1.9.2.2. 成功安装的验证
cmake –version
如果下图正确显示版本号,则安装成功
yum install openssl-devel
yum install ncurses-devel
?
下载地址:http://apache.fayea.com/apache-mirror/hadop/common/hadop-2.4.0。
Wget http://apache.fayea.com/apache-mirror/hadoop/common/hadoop-2.4.0/hadoop-2.4.0-src.tar.gz
抑郁症
Tar –zxvf hadoop-2.4.0-src.tar.gz
在目录/用户/ 本地/ hadoop-2. 4. 0- src 中执行命令
mvn package -DskipTests -Pdist,native
经过长时间的等待,见证奇迹的时刻(Mavan成功完成了提醒),代码汇编在/usr/local/hadop-2.2.0-src/hadoop-dist/目标之下。
我的虚拟机器有32个位子, 所以在安装后,它显示有32个位子。
file lib/native/libh
Cd hadop-2.4.0/etc/hadop/
添加可执行文件到 all.sh 吗?
Chmod +x *.sh
vi hadoop-env.sh
找到它了 发现它了 Found it.
export JAVA_HOME=${JAVA_HOME}
修改为
export JAVA_HOME=/home/hadoop/software/jdk1.7.0_51
添加到配置节点
property>
?name>fs.defaultFSname>
?value>hdfs://hadoop1:9000value>
property>
?
property>
?name>hadoop.tmp.dirname>
?value>/home/hadoop/hadoop/hadoop-2.4.0/data/tmpvalue>
property>
mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
添加到配置节点
property>
name>mapreduce.framework.namename>
value>yarnvalue>
property>
添加到配置节点
property>
name>dfs.replicationname>
value>1value>
property>
添加到配置节点
property>
name>yarn.nodemanager.aux-servicesname>
value>mapreduce_shufflevalue>
property>
?
property>
name>yarn.resourcemanager.addressname>
value>hadoop1:8032value>
property>
?
property>
name>yarn.resourcemanager.resource-tracker.addressname>
value>hadoop1:8031value>
property>
?
property>
name>yarn.resourcemanager.admin.addressname>
value>hadoop1:8033value>
property>
?
property>
name>yarn.resourcemanager.scheduler.addressname>
value>hadoop1:8030value>
property>
?
property>
name>yarn.web-proxy.addressname>
value>hadoop1:8888value>
property>
?
property>
name>yarn.nodemanager.aux-services.mapreduce.shuffle.classname>
value>org.apache.hadoop.mapred.ShuffleHandlervalue>
property>
1.13.7.1. 格式化名称节
bin/hadoop namenode –format
1.13.7.2. 开始使用伪分销集群群
sbin/start-all.sh
查看启动成功与否
jps
1.13.7.3. 执行常用壳牌壳牌壳牌指挥测试组
bin/hadoop fs –ls /
…
1.137.4. 使用浏览器访问查看群集状态
http://hadoop1:50070
其中Hasshoop1 被命名为主机名或直接使用 ip
查看分组活动状态的资源管理器
http://hadoop1:8088/cluster
其中, Hadop1 是当前机器的主机名, 或直接使用 ip 。 (这是被称为“ 节点” 和“ 资源管理者” 的伪分配模式, 全部运行在同一机器上, 以便使用虚拟机器当前的主机名直接访问 。 )
Hadoop 中的节点与人的心脏一样重要,不能停止工作。 在 Hadoop1 中,只有一个节点。 如果节点数据丢失或无法工作, 整个组群无法恢复。 这是Hadoop1 中唯一的问题, 以及Hadoop 1 的不可靠性能, 如图1所示。
图1 图1
?
Hadoop2 解决问题。 Hadoop 2. 0。 HDFS 的高度可靠性意味着两个名称节点可以同时激活。 一个处于工作状态, 另一个处于待命状态。 这样, 当安装一个名称节点的服务器时, 服务可以手动或自动转换为另一个名称节点, 而不丢失数据 。
?
这些名称的节点共享数据, 以保持数据的一致性 。 多Name 节点通过网络共享数据 。
文件系统或 Quorum Journal 节点。 第一个是 Linux 共享的文件系统, 它为操作系统配置; 第二个是为软件配置的 hashoop 本身 。
?
我们谈论的是使用法定人数。
Journal 节点由手动开关配置 。
?
当组开始时, 您可以同时启动两个名称节点 。 这些名称节点只是活跃的, 而另一个则处于待命状态 。 如图2所示, 活跃状态是指提供服务, 常备状态指休眠, 数据同步仅指数据同步, 并准备提供服务 。
图2 图2
?
在典型的 HA 组群中, 每个名称的节点都是独立的服务器。 在任何特定的时间, 只有一个名称的节点处于活动状态, 另一个处于待命状态。 其中, 活动名称的节点负责所有客户业务, 而备用国名称的节点处于从属地位, 保持数据状态并准备切换 。
?
两个名节点通过名为 JournalNdes 的独立进程为数据同步而相互连接数据同步。 当活动状态的名称节命名空间发生任何变化时, 大多数日记节点进程都会被通知。 备用状态NameNode 能够读取 JNs 的更改, 并一直在监测编辑结果 。
日志更改, 将更改应用到您自己的命名空间 。 如图3所示, 待命确保当发生组群错误时, 命名空间状态会完全同步 。
图3 图3
?
为了确保快速开关,待命状态中的名称节点需要知道组群中所有数据区块的位置。 为此,所有数据节点必须配置名称节点的两个地址,并发送数据区块位置信息和心跳。
?
对于HA组别,必须确保只有一个名称节点同时处于活跃状态。 否则,两个名称节点的数据状态会分裂,可能会丢失数据,或者产生错误的结果。 为确保这一点,JN必须确保只有一个名称节点能够同时写出数据。
主机名
Ip
NameNode
ResourceManager
JournalNode
DataNode
NodeManager
Hadoop1
192.168.1.201
对
是 是
对
对
对
?
Hadoop2
192.168.1.202
对
是 是
对
对
对
?
Hadoop3
192.168.1.203
是 是
对
对
对
对
?
vi hadoop-env.sh
找到它了 发现它了 Found it.
export JAVA_HOME=${JAVA_HOME}
修改为
export JAVA_HOME=/home/hadoop/software/jdk1.7.0_51
添加到配置节点
这种方法简单,建议使用。
fs. defaultFS? 当客户端连接到 HDFS 时默认路径前缀。 如果在前面配置了名称观测
ID 值为 My Group, 您可以在此配置它作为授权信息的一部分 。
以下可配置为核心位置. xml 。
?fs.defaultFS
hdfs://mycluster
?hadoop.tmp.dir
?/home/hadoop/hadoop/hadoop-2.4.0/data/tmp
dfs. journalnode. edits. dir? 这是日记节进程维持逻辑状态的路径。 这是 Linux 服务器文件的绝对路径 。
?dfs.journalnode.edits.dir
?/home/hadoop/hadoop/hadoop-2.4.0/data/journal
mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
添加到配置节点
property>
name>mapreduce.framework.namename>
value>yarnvalue>
property>
添加到配置节点
配置组组组内副本份数
dfs.replication
2
dfs. nameserveries? 命名空间的逻辑名称 。
联邦,您可以配置多个命名空格的名称,用逗号将其分隔开来。
dfs.nameservices
mycluster
dfs.ha. namenodes. [nameservation ID]? 名称空间是所有名称节点的唯一名称。 名称空间可以多重配置, 并用逗号分隔。 该名称可用于让 DataNode 了解每个组群名称节点的全部。 目前, 每个组群只能包含两个名称节点 。
?
?dfs.ha.namenodes.mycluster
?hadoop1,hadoop2
?
dfs. namenode. rpc- address. [nameservation ID]. [name node ID]? 每一个收听 RPC 地址的名称节点 。
?
?dfs.namenode.rpc-address.mycluster.hadoop1
?hadoop1:8020
?
?
?dfs.namenode.rpc-address.mycluster.hadoop2
?hadoop2:8020
?
dfs. namenode. http- address. [nameservation ID]. [name node ID]? http http: 每一个命名节听的地址 。
?
?dfs.namenode.http-address.mycluster.hadoop1
?hadoop1:50070
?
?
?dfs.namenode.http-address.mycluster.hadoop2
?hadoop2:50070
?
dfs. namenode. 共享. edits. dir 的 dfs. 这是 JNs 的 uri。 NameNode 读写组。 通过此 uri, NameNodes 可以读写编辑 。
日志内容 URL 格式“ qjournal://host1:port1; host2:port2; host3:port3/journalId”。 这里的主机1, host2, host3 指的是 Journal
节点的地址, 一定是奇怪的, 至少三个; 其中日记Id是集的唯一标识符, 同一个日记Id 用于多个联邦命名空间 。
?
?dfs.namenode.shared.edits.dir
?qjournal://hadoop1:8485;hadoop2:8485;hadoop3:8485/mycluster
?
dfs.client.failover.proxy.provider.[nameservice
这是 HDFS 客户端连接到活动器的配置
节点中的 Java 类Name
?
?dfs.client.failover.proxy.provider.mycluster
?org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider
?
?
?dfs.ha.automatic-failover.enabled.mycluster
?false
?
你什么意思,Dfs.ha. farfings. 方法?
错误时命名node 的处理类别。 错误时, 活动命名节通常要关闭进程。 进程可以是 ssh 或 shell 。
如果使用 ssh, 配置如下
?
?dfs.ha.fencing.methods
?sshfence
?
?
?dfs.ha.fencing.ssh.private-key-files
?/home/hadoop/.ssh/id_dsa
?
添加到配置节点
yarn.nodemanager.aux-services
?mapreduce_shuffle
?yarn.resourcemanager.hostname
hadoop3
以下是我写的一些脚本, 可以帮助集集快速启动。
Initmy group.sh 主要实现了该组的初始化功能(将Hadoop1节点的配置与Hadoop2和Hadoop3的配置合并到Hadoop2和Hadoop3,删除日志文件、命名元数据、删除数据注释块数据、格式化两个名称节,然后启动该组以更加危险的谨慎)
Startmy croup.sh 主要是按顺序开始按组提供服务。
停止组群。 sh主要停止组群中的所有服务 。
序号群集简介的详情
# 同步Hadoop1 上的档案到 Hadoop2 和 Hadoop3 。
ssh hadoop1 'scp /home/hadoop/hadoop/hadoop-2.4.0/etc/hadoop/*hadoop2:/home/hadoop/hadoop/hadoop-2.4.0/etc/hadoop/'
ssh hadoop1 'scp /home/hadoop/hadoop/hadoop-2.4.0/etc/hadoop/*hadoop3:/home/hadoop/hadoop/hadoop-2.4.0/etc/hadoop/'
?
# 空的初始和日志文件
ssh hadoop1 'rm -rf /home/hadoop/hadoop/hadoop-2.4.0/data/tmp/*'
ssh hadoop2 'rm -rf /home/hadoop/hadoop/hadoop-2.4.0/data/tmp/*'
ssh hadoop3 'rm -rf /home/hadoop/hadoop/hadoop-2.4.0/data/tmp/*'
ssh hadoop1 'rm -rf /home/hadoop/hadoop/hadoop-2.4.0/logs/*'
ssh hadoop2 'rm -rf /home/hadoop/hadoop/hadoop-2.4.0/logs/*'
ssh hadoop3 'rm -rf /home/hadoop/hadoop/hadoop-2.4.0/logs/*'
?
# 启动集群?
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/hadoop-daemon.sh start journalnode'
ssh hadoop2 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/hadoop-daemon.sh start journalnode'
ssh hadoop3 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/hadoop-daemon.sh start journalnode'
# 开始于 Hadoo1? Namenode1
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/bin/hdfs namenode -format -clusterId mycluster'
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/hadoop-daemon.sh start namenode'
{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0}赛门曲2
ssh hadoop2 '/home/hadoop/hadoop/hadoop-2.4.0/bin/hdfs namenode -bootstrapStandby'
sleep 10
ssh hadoop2 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/hadoop-daemon.sh start namenode'
sleep 10
# Hadoop1 上的地名节点作为活动
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/bin/hdfs haadmin -failover --forceactive hadoop2 hadoop1'
开始? 数据节点
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/hadoop-daemons.sh start datanode'
{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0}开始 {\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0}开始 {\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0}
ssh hadoop3 '/home/hadoop/hadoop/hadoop-2.4.0/sbin/start-yarn.sh'
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/bin/hdfs haadmin -failover --forceactive hadoop2 hadoop1'
可以吗 代号节点切换为活动状态
结束Hadooop1的命名吗?
ssh hadoop1 '/home/hadoop/hadoop/hadoop-2.4.0/bin/hdfs haadmin -failover --forceactive hadoop1 hadoop2'
可以吗 代号节点切换为活动状态
然后重开Hadoop1的命名点? 或者你可以自动加入集束吗?
visudo -f /etc/sudoers
在 root ALL=(ALL) 全部 之后添加吗?
HadoopALL=(ALL) ALL
# hadoop 是一个需要 sudo 命令的用户名
Defaults:hadoop?timestamp_timeout=-1,runaspw
// 添加普通账户 Tom sudo 权限
/ 时间戳_ 时间戳=1? 只要检查一次密码, 系统就会自动记住 。
/ runaspw 需要 root 密码,如果不是默认的,则需要 root 密码来输入普通账户的密码。
Ubuntu 用户可以添加到需要使用 sudo 命令的sudo 组用户
sudo adduser hadoop sudo
useradd -d /home/hadoop -s /bin/bash -m hadoop
passwd hadoop
Chmod +x *.sh
%s/vivian/sky/(相当于: g/vivian/s/sky/)? 替换每一行的第一个?vivivian?
%s/vivian/sky/g(相当于:g/vivian/s/sky/g)? 替换每行的全部?%vivivian?
一. 执行命令?
vim-common
二、执行命令?
install vim
?
#/sbin/iptables?-I?INPUT?-p?tcp?--dport?80?-j?ACCEPT
#/sbin/iptables?-I?INPUT?-p?tcp?--dport?22?-j?ACCEPT
#/etc/rc.d/init.d/iptables?save?
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
发表评论