原创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 场景描述:网站后台管理页面比较重要,不应该任何人都让访问,所以对后台页面做认证 ...
随机推荐
- UVa247 Calling Circles
Time Limit: 3000MS 64bit IO Format: %lld & %llu map存人名,floyd传递闭包,DFS查询. 输出答案的逗号后面还有个空格,被坑到了2 ...
- Swift开发学习-03 Swift技巧
一 两个数字交换算法 1.算法1 func swap(inout num1:int , inout num2:int){ num1 = num1 ^ num2 ; num2 = num1 ^ num2 ...
- SCU 4424(求子集排列数)
A - A Time Limit:0MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Status Practice ...
- java 线程---成员变量与局部变量
关于成员变量与局部变量: 如果一个变量是成员变量,那么多个线程对同一个对象的成员变量进行操作时,他们对该成员变量是彼此影响的(也就是说一个线程对成员变量的改变会影响到另一个线程) . 如果一个变量是局 ...
- linux经典命令学习
本文介绍Linux系统的若干经典命令的常用方法. (一)grep 主要用于搜索文件内容,查看是否跟要求的pattern相匹配. 1.grep -l 'boss' * 显示所有包含boss ...
- Python socket编程之三:模拟数据库循环发布数据
1. f1.py # -*- coding: utf-8 -*- import socket import struct import sqlalchemy import pandas ####### ...
- Centos更换yum库镜像
首先备份/etc/yum.repos.d/CentOS-Base.repo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-B ...
- 微信内置浏览器的 User Agent的判断
如何判断微信内置浏览器,首先需要获取微信内置浏览器的User Agent,经过在 iPhone 上微信的浏览器的检测,它的 User Agent 是: Mozilla/5.0 (iPhone; CPU ...
- windows下使用批处理文件调用python程序
这个随笔涉及到几个批处理脚本得知识点. windows的start命令, 启动另一个窗口运行指定的程序或命令. windows的call命令, 从批处理程序调用另一个程序, 直到被调用程序退出, 再继 ...
- sql导入默认用户解决杰奇cms无法登陆管理员账户问题
前些天下载杰奇cms来体验一下,从a5下载的杰奇1.8版,不是默认的安装程序,上传文件,手工导入sql数据库,修改了config配置文件,很快就完工了.前台可以展现,除了有些乱码显示之外,想要修改相关 ...