Hadoop2.7.1集群搭建

菜鸟配置Hadoop2.7.1集群搭建

本文章是在虚拟机下安装Hadoop集群
1.安装虚拟机环境
电脑环境是64位操作系统,故采用64位Vmware虚拟机,64 centos6.4 操作系统,本人安装了三台虚拟机分别为:
- NameNode: 192.168.234.88 bdoc1(主机名)
- DataNode: 192.168.234.89 bdoc2(主机名)
- DataNode: 192.168.234.90 bdoc3(主机名)
2.配置环境
2.1修改主机名(3台都需要)
vim /etc/sysconfig/network

    NETWORKING=yes
    HOSTNAME=bdoc1   

    NETWORKING=yes
    HOSTNAME=bdoc2 

    NETWORKING=yes
    HOSTNAME=bdoc3
需要重启 reboot 才能生效!

2.2 修改每台虚拟机的IP(保证三台之间能够相互通信)
eg:

     vim /etc/sysconfig/network-scripts/ifcfg-eth0

        DEVICE="eth0"
        BOOTPROTO="static"               ###
        HWADDR="00:0C:29:3C:BF:E7"
        IPV6INIT="yes"
        NM_CONTROLLED="yes"
        ONBOOT="yes"
        TYPE="Ethernet"
        UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
        IPADDR="192.168.234.88"           ###
        NETMASK="255.255.255.0"           ###
        GATEWAY="192.168.234.1"           ###
        DNS1="114.114.114.114"     (大多配置8.8.8.8 也可以不用加)
        DNS2="8.8.4.4"    (可以不用加)
        “#” 代表需要修改的地方!

2.3修改主机名和IP的映射关系(每台都需要)

    vim /etc/hosts

     NameNode(bdoc1):       
     192.168.234.88  bdoc1
     192.168.234.89  bdoc2
     192.168.234.90  bdoc3

    DataNode(bdoc2):        
     192.168.234.88  bdoc1
    192.168.234.89  bdoc2

    DateaNode(bdoc3):       
     192.168.234.88  bdoc1
    192.168.234.90  bdoc3   

2.4关闭防火墙(每台)

    #关闭防火墙
    service iptables stop
    #查看防火墙状态
    service iptables status
    #查看防火墙开机启动状态
    chkconfig iptables --list
    #关闭防火墙开机启动
    chkconfig iptables off

2.5重启Linux reboot

3.安装jdk (3台都需要)

3.1上传

  可以通过securecrt 或Filezilla ,也可下载

3.2解压jdk

    #创建文件夹
    mkdir /usr/java
    #解压
    tar -zxvf jdk-7u79-linux-x64.tar.gz  -C /usr/java/

3.3将java添加到环境变量中

    vim /etc/profile
    #在文件最后添加
    export JAVA_HOME=/usr/java/jdk1.7.0_79
    export PATH=$PATH:$JAVA_HOME/bin

    #刷新配置
    source /etc/profile

4.安装hadoop2.7.1

4.1 上传或下载hadoop(64位的)
4.2 解压Hadoop (3台都需要)
   本人解压在 /root/bdoc/ 目录下
    tar -zxvf hadoop-2.7.1-x64.tar.gz -C /root/bdoc/  
4.3 配置Hadoop环境
   所有的配置都是在/root/bdoc/hadoop-2.7.1/etc/hadoop/ 下修改
  1)第一个:hadoop-env.sh
    vim hadoop-env.sh
    export JAVA_HOME=/usr/java/jdk1.7.0_79
  2)第二个:core-site.xml(这个配置三台机器都需要配置,其他的只是主服务器bdoc1配置)
    <!-- 指定HDFS的NameNode地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://bdoc1:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/bdoc/hadoop-2.7.1/tmp</value>
    </property>
    <property>
       <name>io.file.buffer.size</name>
       <value>4096</value>
    </property
   3)第三个:hdfs-site.xml
    <property>
        <name>dfs.nameservices</name>
        <value>bdoc—hadoop-cluster</value>
    </property>
    <!-- 指定HDFS副本的数量 -->
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>

  4)第四个:mapred-site.xml 
    首先 mv mapred-site.xml.template mapred-site.xml
    vim mapred-site.xml
    <!-- 指定mr运行在yarn上 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

  5)第五个:yarn-site.xml
    <!-- 指定YARN的(ResourceManager)的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>bdoc1</value>
    </property>
    <!-- reduce获取数据的方式 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
 6)第六个:slaves
      vim slaves
      bdoc2
      bdoc3

4.4 将hadoop添加到环境变量

vim /etc/proflie
    export HADOOP_HOME=/bdoc1/hadoop-2.7.1
    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  source /etc/profile

5.在bdoc1上 格式化NameNode
hdfs namenode -format (hadoop namenode -format)
6. 启动hadoop
先启动HDFS
start-dfs.sh
再启动yarn
start-yarn.sh

  1. 验证是否启动成功
    使用jps命令验证:
    bdoc1:
    27408 NameNode
    28218 Jps
    27643 SecondaryNameNode
    27803 ResourceManager

    bdoc2 bdoc3使用jps出现:
    NodeManager
    jps
    DataNode
    

    可以进入
    http:// 192.168.234.88:50070 (HDFS管理界面)查看DataNode的状态(live or dead)
    进入:http:// 192.168.234.88:8088 (MR管理界面)

注意:在第5步之前最好是要配置下ssh免登陆
因为是bdoc1启动时要访问bdoc2,bdoc3,所以在访问时会提示输入密码,为了避免麻烦,最好是配置免登陆。
bdoc1要访问bdoc2,bdoc3,则首先要在bdoc1上生成秘钥,将生成的秘钥拷贝到bdoc2,bdoc3指定的目录下,具体过程如下:

进入到bdoc1机器的home目录
cd ~/.ssh

ssh-keygen -t rsa (敲击回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
 cp id_rsa.pub authorized_keys
将公钥authorized_keys拷贝到要免登陆的机器(bdoc1,bdoc2)上
 scp authorized_keys root@192.168.234.89:/root/.ssh/ 
 scp authorized_keys root@192.168.234.90:/root/.ssh/   
ok,验证无密码登录:
 ssh root@192.168.234.90

trouble shooting:
大部分故障都是因为权限引起的, 如果互访中出现问题建议修改为如下权限: 建议修改为如下权限:
用户主目录: 755 及以下权限
.ssh目录 :700
id_rsa : 600
authorized_keys :700
id_rsa.pub : 700

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 支持向量机非线性回归通用MATLAB程序解析 #### 一、概述 本文将详细介绍一个基于MATLAB的支持向量机(SVM)非线性回归的通用程序。该程序采用支持向量机方法来实现数据的非线性回归,并通过不同的核函数设置来适应不同类型的数据分布。此外,该程序还提供了数据预处理的方法,使得用户能够更加方便地应用此程序解决实际问题。 #### 二、核心功能与原理 ##### 1. 支持向量机(SVM) 支持向量机是一种监督学习模型,主要用于分类和回归分析。对于非线性回归任务,SVM通过引入核技巧(kernel trick)将原始低维空间中的非线性问题转换为高维空间中的线性问题,从而实现有效的非线性建模。 ##### 2. 核函数 核函数的选择直接影响到模型的性能。本程序内置了三种常用的核函数: - **线性核函数**:`K(x, y) = x'y` - **多项式核函数**:`K(x, y) = (x'y + 1)^d` - **径向基函数(RBF)**:`K(x, y) = exp(-γ|x - y|^2)` 其中RBF核函数被广泛应用于非线性问题中,因为它可以处理非常复杂的非线性关系。本程序默认使用的是RBF核函数,参数`D`用于控制高斯核函数的宽度。 ##### 3. 数据预处理 虽然程序本身没有直接涉及数据预处理的过程,但在实际应用中,对数据进行适当的预处理是非常重要的。常见的预处理步骤包括归一化、缺失值处理等。 ##### 4. 模型参数 - **Epsilon**: ε-insensitive loss function的ε值,控制回归带宽。 - **C**: 松弛变量的惩罚系数,控制模型复杂度与过拟合的风险之间的平衡。 #### 三、程序实现细节 ##### 1. 函数输入与输出 - **输入**: - `X`: 输入特征矩阵,维度为(n, l),其中n是特征数量,l是样本数量。 - `Y`: 目标值向量,长度为l。 - `Epsilon`: 回归带宽。 - `C`: 松弛变量的惩罚系数。 - `D`: RBF核函数的参数。 - **输出**: - `Alpha1`: 正的拉格朗日乘子向量。 - `Alpha2`: 负的拉格朗日乘子向量。 - `Alpha`: 拉格朗日乘子向量。 - `Flag`: 标记向量,表示每个样本的类型。 - `B`: 偏置项。 ##### 2. 核心代码解析 程序首先计算所有样本间的核矩阵`K`,然后构建二次规划问题并求解得到拉格朗日乘子向量。根据拉格朗日乘子的值确定支持向量,并计算偏置项`B`。 - **核矩阵计算**:采用RBF核函数,通过`exp(-(sum((xi-xj).^2)/D))`计算任意两个样本之间的相似度。 - **二次规划**:构建目标函数和约束条件,使用`quadprog`函数求解最小化问题。 - **支持向量识别**:根据拉格朗日乘子的大小判断每个样本是否为支持向量,并据此计算偏置项`B`。 #### 四、程序扩展与优化 - **多核函数支持**:可以通过增加更多的核函数选项,提高程序的灵活性。 - **自动调参**:实现参数自动选择的功能,例如通过交叉验证选择最优的`Epsilon`和`C`值。 - **并行计算**:利用MATLAB的并行计算工具箱加速计算过程,特别是当样本量很大时。 #### 五、应用场景 该程序适用于需要进行非线性回归预测的场景,如经济预测、天气预报等领域。通过调整核函数和参数,可以有效应对各种类型的非线性问题。 ### 总结 本程序提供了一个支持向量机非线性回归的完整实现框架,通过灵活的核函数设置和参数调整,能够有效地处理非线性问题。对于需要进行回归预测的应用场景,这是一个非常实用且强大的工具。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值