zoukankan      html  css  js  c++  java
  • win10-idea连接hdfs集群

    1、 创建maven项目

    2、 打开项目目录下的pom.xml文件,添加如下依赖

    <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-core</artifactId>
                <version>2.8.2</version>
            </dependency>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-common</artifactId>
                <version>2.7.2</version>
            </dependency>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-client</artifactId>
                <version>2.7.2</version>
            </dependency>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-hdfs</artifactId>
                <version>2.7.2</version>
            </dependency>
            <dependency>
                <groupId>jdk.tools</groupId>
                <artifactId>jdk.tools</artifactId>
                <version>1.8</version>
                <scope>system</scope>
                <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
            </dependency>
    </dependencies>

    如果jdk.tools依赖无法安装

      a. 可能是java_home存在空格,检查并更新路径

      b. 可以修改systempath 为绝对路径

    3、 启动集群,测试是否成功

      a.

        start-dfs.sh

        start-yarn.sh

      b. 

    public class HDFSClient {
        public static void main(String[] args) throws IOException {
            // 1 获取hdfs客户端对象
            Configuration conf = new Configuration();
            // 确定要访问的集群
            conf.set("fs.defaultFS","hdfs://hadoop102:9000");
            FileSystem fs = FileSystem.get(conf);
            // 2 在hdfs上创建路径
            fs.mkdirs(new Path("/1026/jenkindemo"));
            // 3 关闭资源
            fs.close();
            System.out.println("over");
        }
    }

      抛出异常

       解决方式

       

      在VMoption中输入:-DHADOOP_USER_NAME=linux的用户名

       

      第二种解决方式

      

    FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:9000"),conf,"jenkin");

      over 连接成功

  • 相关阅读:
    无监督学习
    监督学习
    cmd
    oj1026
    oj1025
    使用虚函数的不同模式
    hdu1166:敌兵布阵(树状数组或线段树)
    传纸条(动态规划)
    SDUT 1266 出栈序列统计(卡特兰数)
    HDU 5063 Operation the Sequence
  • 原文地址:https://www.cnblogs.com/choice7/p/14281002.html
Copyright © 2011-2022 走看看