步骤总览:

a、安装jdk

b、安装hadoop,配置hadoop环境变量,修改hadoop配置文件

c、克隆虚拟机 

d、修改ip地址为固定ip,编写hosts与hostname

e、配置无密登录ssh,编写xcall,xsync

f、hadoop格式化,启动守护进程。

 

--------------------------------------------------------

  1. 安装jdk
  1. 卸载原有的openjdk
  1. 查看CentOS自带JDK是否已安装。

◆输入:yum list installed |grep java。

  1. 若有自带安装的JDK,如何卸载CentOS系统自带Java环境?

◆卸载JDK相关文件输入:yum -y remove java-1.7.0-openjdk*。

◆卸载tzdata-java输入:yum -y remove tzdata-java.noarch。

  1.   当结果显示为Complete!即卸载完毕。

hadoop卸载是否可以直接删除_大数据

  1. 安装jdk
  1. 下载jdk ,并解压到soft目录下

hadoop卸载是否可以直接删除_运维_02

$> sudo tar zxvf jdk-8u65-linux-x64.tar.gz -C /soft
1. 编写source /etc/profile,输入已下内容
#java environment
export JAVA_HOME=/soft/jdk1.8.0_65
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
1. 刷新资源 $>source /etc/profile
2. 查看版本

hadoop卸载是否可以直接删除_hadoop_03

 

  1. 安装hadoop,并配置完全分布式
  2. 解压到/soft目录下

hadoop卸载是否可以直接删除_hadoop_04

b、    复制/soft/hadoop/erc/hadoop文件,其中full为完全分布式的配置文件,presu为委分布,local为本地。删除hadoop文件夹,创建hadoop链接

           配置hadoop环境变量,并检查是否成功

$>sudo nano /etc/profile
           ...
           export JAVA_HOME=/soft/jdk
           exprot PATH=$PATH:$JAVA_HOME/bin
           export HADOOP_HOME=/soft/hadoop
                    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

使配置生效:

$>source /etc/profile

检查是否成功

$> hadoop version

 

hadoop卸载是否可以直接删除_java_05

hadoop卸载是否可以直接删除_hadoop_06

hadoop卸载是否可以直接删除_大数据_07

C、 创建几个文件夹,尽量创建在home下,省得权限问题

hadoop卸载是否可以直接删除_hadoop卸载是否可以直接删除_08

D、 修改/soft/hadoop/etc/full的配置文件

【core-site.xml】

<configuration>
 <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/zhangdada/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
   </property>
   <property>
        <name>fs.default.name</name>
        <value>hdfs://s200:9000</value>
   </property>
</configuration>

【hadoop-env.sh】

修改java的地址将export   JAVA_HOME=${JAVA_HOME}

         修改为:export JAVA_HOME=/soft/jdk1.8.0_65

【hdfs-site.xml】

<property>
   <name>dfs.name.dir</name>
   <value>/home/zhangdada /hadoop/dfs/name</value>
   <description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
   <name>dfs.data.dir</name>
   <value>/home/zhangdada /hadoop/dfs/data</value>
   <description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
   <name>dfs.replication</name>
   <value>1</value>
<description> replication  count</description>
</property>
<property>
      <name>dfs.permissions</name>
      <value>false</value>
      <description>need not permissions</description>
</property>

说明:dfs.permissions配置为false后,可以允许不要检查权限就生成dfs上的文件,方便倒是方便了,但是你需要防止误删除,请将它设置为true,或者直接将该property节点删除,因为默认就是true

【mapred-site.xml】这个文件是由sudo cp mapred-site.xml.template mapred-site.xml得来的。

<property>
   <name>mapred.job.tracker</name>
   <value>s200:49001</value>
</property>
<property>
      <name>mapred.local.dir</name>
       <value>/home/zhangdada /hadoop/var</value>
</property>
<property>
       <name>mapreduce.framework.name</name>
       <value>yarn</value>
</property>

【slaves】

S201

【yarn-site.xml】

<property>
        <name>yarn.resourcemanager.hostname</name>
        <value>s200</value>
   </property>
   <property>
       <description>The address of the applications manager interface in the RM.</description>
        <name>yarn.resourcemanager.address</name>
        <value>${yarn.resourcemanager.hostname}:8032</value>
   </property>
   <property>
        <description>The address of the scheduler interface.</description>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>${yarn.resourcemanager.hostname}:8030</value>
   </property>
   <property>
        <description>The http address of the RM web application.</description>
        <name>yarn.resourcemanager.webapp.address</name>
       <value>${yarn.resourcemanager.hostname}:8088</value>
   </property>
   <property>
        <description>The https adddress of the RM web application.</description>
        <name>yarn.resourcemanager.webapp.https.address</name>
        <value>${yarn.resourcemanager.hostname}:8090</value>
   </property>
   <property>
       <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>${yarn.resourcemanager.hostname}:8031</value>
   </property>
   <property>
        <description>The address of the RM admin interface.</description>
        <name>yarn.resourcemanager.admin.address</name>
        <value>${yarn.resourcemanager.hostname}:8033</value>
   </property>
   <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
   </property>
   <property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>2048</value>
        <discription>每个节点可用内存,单位MB,默认8182MB</discription>
   </property>
   <property>
        <name>yarn.nodemanager.vmem-pmem-ratio</name>
        <value>2.1</value>
   </property>
   <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>2048</value>
</property>
   <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
</property>

       说明:yarn.nodemanager.vmem-check-enabled这个的意思是忽略虚拟内存的检查,如果你是安装在虚拟机上,这个配置很有用,配上去之后后续操作不容易出问题。如果是实体机上,并且内存够多,可以将这个配置去掉。

 

 

  1. 克隆虚拟机 ,

 

  1. 修改ip地址为固定ip,编写hosts与hostname

/etc/sysconfig/network-scripts/ifcfg-xxxx文件中的ip地址

 

  1. 配置无密登录ssh,编写xcall,xsync

【配置ssh】:

1)检查是否安装了ssh相关软件包(openssh-server + openssh-clients + openssh)

                             $yum list installed | grep ssh

2)检查是否启动了sshd进程

                             $>ps -Af | grep sshd

3)在client侧生成公私秘钥对。

                             $>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

4)生成~/.ssh文件夹,里面有id_rsa(私钥) + id_rsa.pub(公钥)

5)追加公钥到~/.ssh/authorized_keys文件中(文件名、位置固定)

                             $>cd ~/.ssh

                             $>cat id_rsa.pub >> authorized_keys

6)将s201的公钥文件id_rsa.pub远程复制到202 ~ 204主机上。

  并放置/home/centos/.ssh/authorized_keys

           $>scp id_rsa.pub centos@s201:/home/centos/.ssh/authorized_keys

7)修改authorized_keys的权限为644.

                             $>chmod 644 authorized_keys

8)测试

                             $>ssh localhost

 如果ssh不成功的话,要查看目标机器的日志

$>cat /var/log/secure

hadoop卸载是否可以直接删除_hadoop_09

修改目标机器的权限:

·sshd为了安全,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免密码登陆不生效。

  • 用户目录权限为 755 或者 700,就是不能是77x。
  • .ssh目录权限一般为755或者700。
  • rsa_id.pub 及authorized_keys权限一般为644
  • rsa_id权限必须为600

【xcall.sh与xsync.sh】

  • 将两个文件放到 /bin 目录下,添加可执行的权限

$>mv xcall.sh /bin

$>chmod o+w xcall.sh

  • 使用xcall.sh在所有节点上创建jps符号连接,指向/soft/jdk/bin/jps

------------------------------------------------------------------

     1.切换到root用户

              $>su root

     2.创建符号连接

              $>xcall.sh "ln -sfT /soft/jdk1.8.0_65/bin/jps /usr/local/bin/jps"

     3.修改jps符号连接的owner

              $>xcall.sh "chown -h zhangdada:zhangdada /usr/local/bin/jps"

     4.查看所有主机上的java进程

              $>xcall.sh jps

  1. 格式化,

 $>hdfs namenode –format

启动,

$>start-dfs.sh

$>start-yarn.sh

查看(启动成功)

hadoop卸载是否可以直接删除_大数据_10

查看启用的线程 netstat –ntlp

hadoop卸载是否可以直接删除_java_11

在主机上查看hdfs:http://192.168.209.200:50070

  1. hdfs的一些操作

hadoop卸载是否可以直接删除_java_12

 

hadoop卸载是否可以直接删除_hadoop_13

hadoop卸载是否可以直接删除_大数据_14