远程连接Hadoop(本机win10+idea+maven)+(linux +hadoop3.1.3)

事情起因

最初我使用Hadoop的时候我想的是在linux里安装一个eclipse,可是想想这会直接把一些性能不太好的Linux搞崩溃。然后我就想远程连接Hadoop。网上好多教程说win远程连接Hadoop还要在win上安装Hadoop,但是经过我的测试,==只需要下载一个hadoop.dll放到c:\Windows\System32目录下就好。环境变量都不用配置。==这个下载的话直接在网上找就能找到。或者直接联系我我直接给你发一份都可以。

hadoop.dll+hosts文件更改

1.这里再强调一遍。把这个hadoop.dll放到它该在的位置可谓是最重要的一个步骤,首先就得先把这个下载了搞上去。

2.因为你可能有时候使用的ip的映射,所以建议还是在windows的hosts(C:\Windows\System32\drivers\etc)文件上加上映射。如我下面配置的这样写道最后面。
远程连接Hadoop(本机win10+idea+maven)+(linux +hadoop3.1.3)_第1张图片

maven配置

在上面的包已经导入到相应的目录下后就新建一个maven工程就好。然后配置pom.xml文件,这个配置看起来有点多哈,我就直接贴过来了。将里面的3.1.3全部换成自己的版本。

<dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>3.1.3</version>
            <exclusions>
                <exclusion>
                    <artifactId>jackson-annotations</artifactId>
                    <groupId>com.fasterxml.jackson.core</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jsr305</artifactId>
                    <groupId>com.google.code.findbugs</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>guava</artifactId>
                    <groupId>com.google.guava</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>nimbus-jose-jwt</artifactId>
                    <groupId>com.nimbusds</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-codec</artifactId>
                    <groupId>commons-codec</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-logging</artifactId>
                    <groupId>commons-logging</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>netty</artifactId>
                    <groupId>io.netty</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jaxb-api</artifactId>
                    <groupId>javax.xml.bind</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-compress</artifactId>
                    <groupId>org.apache.commons</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>zookeeper</artifactId>
                    <groupId>org.apache.zookeeper</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jackson-core-asl</artifactId>
                    <groupId>org.codehaus.jackson</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jackson-mapper-asl</artifactId>
                    <groupId>org.codehaus.jackson</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-collections</artifactId>
                    <groupId>commons-collections</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-hdfs -->
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-hdfs</artifactId>
            <version>3.1.3</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-mapreduce-client-core -->
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-mapreduce-client-core</artifactId>
            <version>3.1.3</version>
            <exclusions>
                <exclusion>
                    <artifactId>jackson-annotations</artifactId>
                    <groupId>com.fasterxml.jackson.core</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>guava</artifactId>
                    <groupId>com.google.guava</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>guice</artifactId>
                    <groupId>com.google.inject</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>guice-servlet</artifactId>
                    <groupId>com.google.inject.extensions</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-client -->
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-client</artifactId>
            <version>3.1.3</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-yarn-api -->
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-yarn-api</artifactId>
            <version>3.1.3</version>
        </dependency>

这个配置在2.7的版本上我也用过没有问题。

maven下载不了或者下载慢问题

如果你遇到maven不能下载或者下载很慢的话,你需要把maven的远程仓库地址改为阿里云的地址。
找到你的maven配置文件setting.xml
然后在mirrors标签里加入地址(别把地址给放到注释里)
远程连接Hadoop(本机win10+idea+maven)+(linux +hadoop3.1.3)_第2张图片
代码为

<mirror> 
<id>alimaven</id> 
<name>aliyun maven</name> 
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url> 
<mirrorOf>central</mirrorOf> 
</mirror>

如果下载还是出错,可能你需要先install一下maven然后在下载这些jar包

结语

这次远程连接遇到的问题真的不少,总结来说还是自己经验太少啊 。对于那个pom.xml配置其实可以改成引用的格式的,那样就不用写好几遍版本号了。实在是自己太菜了。。。。

你可能感兴趣的:(大数据)