原创centos7安装hadoop2.7(转载请注明出处)
启用ip vi /etc/sysconfig/network-scripts/ifcfg-
ONBOOT=yes
编辑DNS /etc/resolv.conf
nameserver 114.114.114.114
...
重启网络 service network restart
nmcli conn show 看下你现在启用的是哪个配置ip
查看ip(可以安装yum -y install net-tools 就有ifconfig和netstat了)
查看改动后的效果,Centois 7 不再使用 ifconfig 而是用ip addr
安装wget yum install -y wget
更新国内源
cd /etc/yum.repos.d
备份系统自带的yum源 mv CentOS-Base.repo CentOS-Base.repo.bk 下载163网易的yum源: wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
运行以下命令生成缓存
yum clean all
yum makecache
防火墙设置
1、直接关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、设置 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口50070
vi /etc/sysconfig/iptables
增加规则
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 50070 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8088 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 19888 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9000 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
最后重启系统使设置生效即可。
修改hostname
修改/etc/hosts文件,将包含当前的hostname改为新的hostname。我将shiwei改为rabbit。
修改/etc/sysconfig/network文件,将包含当前的hostname改为新的hostname。我将shiwei改为rabbit。
使用命令hosname更改一下,命令为:hostname 新的主机名,然后用hostname名称查看是否修改成功。
直接使用文本编辑器修改/etc/hostname配置文件。
使用hostnamectl命令,hostnamectl set-hostname name ,再通过hostname或者hostnamectl status命令查看更改是否生效
要查看主机名相关的设置:
# hostnamectl status
新建hadoop用户并赋权
useradd hadoop
passwd hadoop
sudoers 文件添加可写权限(hadopp赋予执行权限)
1)# chmod -v u+w /etc/sudoers
"/etc/sudoers" 的权限模式保留为0640 (rw-r-----)
2)在 sudoers 文件添加新用户信息到 ## Allow root to run any commands anywher 下,修改后的效果为
## Allow root to run any commands anywher
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
dev ALL=(ALL) ALL #新增用户信息
还有一点,sudo命令默认是不能在后台运行的,如果需要在后台运行(比如nagios的被监控服务器端),就需要将/etc/sudoers文件中以下一行注释掉。
Defaults requiretty
3)取消 sudoers 文件可写权限
# chmod -v u-w /etc/sudoers
mode of "/etc/sudoers" changed from 0640 (rw-r-----) to 0440 (r--r-----)
将hadoop用户加入到hadoop组(如果没有hadoop组就新建sudo groupadd hadoop)
sudo usermod -a -G 'hadoop' 'hadoop'
安装ssh和rsync(免密钥登陆)
查看有没有ssh和rsync和openssh 如果没有就安装
rpm -aq|grep ssh
安装openssh-server
yum install openssh-server
rpm –qa | grep openssh
rpm –qa | grep rsync
如果没有安装使用以下命令安装
yum install ssh 安装SSH协议yum install -y rsync
配置免密码登录
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
切换到root用户,修改ssh配置文件
# vim /etc/ssh/sshd_config
修改其中部分内容(去掉原来的注释符号)
RSAAuthentication yes
RSA 认证PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
退出root用户,验证是否可以免密码登陆
$ ssh localhost/Last login: Thu Sep 10 07:38:10 2015 from localhost
出现这样的信息,表示SSH免密码登录配置成功。
提示:第一次连接的时候可能会提示是否要连接,输入yes即可。
配置JDK
a、rpm -qa|grep jdk 查看当前的jdk情况。
b、如果有则-> yum -y remove java java-1.7.0-openjdk* 卸载openjdk,这个过程中因为依赖原因可能会卸载一些额外的软件
c、去Oracle官网下载官方jdk,我下载的是tar.gz格式的。
d、解压jdk安装包tar -zxvf jdk-7u51-linux-x64.tar.gz 复制到自己的软件文件夹,我的软件一般放到opt下,所以 mv jdk1.7.0_51/ /opt/
e、配置环境变量vi /etc/profile 后在倒数第三行处输入下面的内容
export JAVA_HOME=/opt/jdk1.7.0_01
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
f、让环境变量生效 source /etc/profile
g、java -version
安装hadoop
解压hadoop到/usr/local
进入/usr/local/hadoop/etc/hadoop/修改hadoop-env.sh
export JAVA_HOME=/opt/jdk1.7.0_01
export HADOOP_PREFIX=/usr/local/hadoop
配置/etc/profile加入$HADOOP_HOME环境变量
export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin
=============以上独立的就配置完了,可进行一下测试====================
$ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output 'dfs[a-z.]+'
$ cat output/*
-----------------伪分布式配置-------------------
进入/usr/local/hadoop/etc/hadoop/
core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.233.132:9000</value>
</property>
</configuration>
hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>http://192.168.233.132:50070/</value>
</property>
</configuration>
hdfs namenode -format
start-dfs.sh
http://192.168.233.132:50070 (可以访问了,如果有问题自己看日志解决,基本是权限问题)
测试请访问官网示例
---------------YARN on Single Node-------------------
mapred-site.xml:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
$ sbin/start-yarn.sh
http://localhost:8088/(可以访问了)
=====================伪集群============================
1、修改/usr/local/hadoop/etc/hadoop/hdfs-site.xml:dfs.replication为实际个数
2、复制机器,修改ip和新的机器名,/etc/hosts加入ip
3、master机器 /usr/local/hadoop/etc/hadoop/slaves(删除Localhost,增加集群ip),slave机器只留Localhost或删除
4、互相复制authorized_keys到集群上(注意修改hadoop@hadoopmaster)
5、start-dfs.sh jps测试是否成功,如果报错就看日志
=======================================
注意:hadoop datanode启动不起来:
这个问题一般是由于两次或两次以上的格式化NameNode造成的,有两种方法可以解决,第一种方法是删除DataNode的所有资料(及将集群中每个datanode的/hdfs/data/current中的VERSION删掉,然后执行hadoop namenode -format重启集群,错误消失。<推荐>);第二种方法是修改每个DataNode的namespaceID(位于/hdfs/data/current/VERSION文件中)<优先>或修改NameNode的namespaceID(位于/hdfs/name/current/VERSION文件中),使其一致。
原创centos7安装hadoop2.7(转载请注明出处)的更多相关文章
- Java程序员面试宝典1 ---Java基础部分(该博文为原创,转载请注明出处)
(该博文为原创,转载请注明出处 http://www.cnblogs.com/luyijoy/ by白手伊凡) 1. 基本概念 1) Java为解释性语言,运行过程:程序源 ...
- 转载请注明出处: https://github.com/qiu-deqing/FE-interview
转载请注明出处: https://github.com/qiu-deqing/FE-interview Table of Contents generated with DocToc FE-inter ...
- 移动端H5页面遇到的问题总结(转载请注明出处)
最近刚做完一个移动端的项目,产品之无敌,过程之艰辛,我就不多说了,记录下在这个项目中遇到的问题,以防万一,虽然这些可能都是已经被N多前辈解决掉了的问题,也放在这里,算是为自己漫漫前端路铺了一颗小石子儿 ...
- Discuz的安装 (原创帖,转载请注明出处)
========================写在前面的话========================= 1.LAMP环境搭建请查看这篇日志:http://www.cnblogs.com/yic ...
- Apache2.4权限配置(原创帖-转载请注明出处)
==================说在前面的话================= 1:这次实验使用的php项目是Discuz,Discuz的安装请参照:http://www.cnblogs.com/ ...
- LAMP环境搭建 (原创帖,转载请注明出处)
=============================说在前面的话==========================第一安装Mysql第二安装Apache-httpd第三安装PHP 第四配置PH ...
- 阿里云服务器SQLSERVER 2019 远程服务器环境搭建【原创】【转载请注明出处】
之前做过本地服务器SQLSERVER环境搭建.局域网环境SQLSERVER搭建.一直没有尝试自己完成一个云端服务器的环境搭建.今天就根据一个成功的例子给大家分享一下. 一.云端数据库安装与搭建 我的服 ...
- Apache开启状态查看页面(原创贴-转载请注明出处)
=================写在前面的话================== 场景描述:有时候我们需要查看apache的运行状态,只需要开启apache的status功能就可以实现,但是stat ...
- Apache设置页面认证(原创贴-转载请注明出处)
================写在前面的话============== 1.本试验使用的apache版本是2.4.24 场景描述:网站后台管理页面比较重要,不应该任何人都让访问,所以对后台页面做认证 ...
随机推荐
- ethtool使用记录
网卡出现很诡异的问题,把电脑连到一些交换机上是工作的,连到另外一些就不行...交换机上的link灯还时不时的闪一下,看起来像是在尝试连接. 用dmesg查看,看到下面的信息: [ 1112.92211 ...
- KindEditor上传本地图片在ASP.NET MVC的配置
http://www.cnblogs.com/upupto/archive/2010/08/24/1807202.html 本文解决KindEditor上传本地图片在ASP.NET MVC中的配置. ...
- 类,抽象基类,接口类三者间的区别与联系(C++)
结构上的区别: 普通类:数据+方法+实现 抽象类:数据+方法(一定包含虚方法n>=1)+部分方法的实现 接口类:方法(纯虚方法) http://www.cnblogs.com/Tris-wu/p ...
- WEB开发中的页面跳转方法总结
PHP header()函数跳转 PHP的header()函数非常强大,其中在页面url跳转方面也调用简单,使用header()直接跳转到指定url页面,这时页面跳转是302重定向: $url = & ...
- sleep()
经常看到线程中用sleep(),到底是什么用处,下面讲的比较通俗: 我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间.那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题: ...
- photon mapping阶段性总结
PM算法看了这么久,也该是到了总结的时候了.自己实现的是PPPM(Probabilistic progressive photon mapping)的一个简化形式.之所以是简化形式是由于我的光子搜集时 ...
- dedecms首页调用栏目内容和单页内容的方法
常用的需要调到首页来的单页内容,比如企业简介.联系我们等等内容,我们在首页可能都要进行体现.通过常规的方式,包括查阅dede官方论坛资料,都找不到比较合适的答案.今天我们就提供两种方式进行调用. 我们 ...
- Java中数据类型及其之间的转换
Java中数据类型及其之间的转换 基本的数据类型 基本类型有以下四种:1)int长度数据类型有:byte(8bits).short(16bits).int(32bits).long(64bits).2 ...
- 《JAVA与模式》之享元模式
<JAVA与模式>之享元模式 在阎宏博士的<JAVA与模式>一书中开头是这样描述享元(Flyweight)模式的: Flyweight在拳击比赛中指最轻量级,即“蝇量级”或“雨 ...
- linux tail命令的使用方法详解(转)
本文介绍Linux下tail命令的使用方法.linux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新 ...