Hadoop2.7.3ソースコードは、Snappyをサポートする圧縮パッケージにコンパイルされ、Hadoopクラスターを構築するためにインストールされます

プロローグ

リソースの準備
注:フォルダーのアクセス許可の問題を減らすには、ルートロールのコンパイルを使用してください

apache-maven-3.6.3-bin.tar.gz
下载地址:	https://maven.apache.org/download.cgi

hadoop-2.7.3-src.tar.gz
下载地址:	https://archive.apache.org/dist/hadoop/common/

protobuf-2.5.0.tar.gz
下载地址:	https://github.com/protocolbuffers/protobuf/releases?after=v3.0.0-alpha-3.1

snappy-1.1.3.tar.gz
下载地址:	https://github.com/google/snappy/releases

Hadoop関連のリソース、これらも

1.Mavenのインストール

インストールパッケージをLinuxにアップロードし、コマンドを使用して解凍します

tar -zxvf apache-maven-3.6.3-bin.tar.gz  // 解压到当前目录下

後でインポートの依存関係が遅くなるのを避けるため

cd apache-maven-3.6.3/conf/

このディレクトリのsettings.xmlファイルを変更します

<mirrors>
    <!-- mirror
     | Specifies a repository mirror site to use instead of a given repository. The repository that
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     |
    <mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->
 	<!--修改为阿里镜像-->
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>

  </mirrors>

Mavenのデフォルトライブラリの場所は

/root/.m2/repository/

Mavenライブラリを変更する場合は、settings.xmlファイルに追加できます。

<localRepository>/usr/Software/Maven/repository</localRepository> //路径自己写

環境変数を追加する

vi /etc/profile

export MAVEN_HOME=/usr/Software/Maven/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
保存退出
source /etc/profile

環境変数が有効かどうかを確認します
mvn-version

2.コンパイル環境を準備します

yum install svn 
yum install autoconf automake libtool cmake 
yum install ncurses-devel 
yum install openssl-devel 
yum install gcc*

snappyをインストール
し、インストールパッケージをLinuxにアップロードして、解凍します

tar -zxvf snappy-1.1.3.tar.gz

cd snappy-1.1.3/

分别执行

该命令会在 /usr/local/ 下生成bin、include、lib目录
./configure 

make

make install

如果lib下生成libsnappy相关文件即为成功

protobufをインストール
し、インストールパッケージをLinuxにアップロードして、解凍します

tar -zxvf protobuf-2.5.0.tar.gz

cd protobuf-2.5.0/

分别执行

./configure 

make

make install

检测protobuf安装是否成功
执行命令
protoc --version

3.SnappyをサポートするHadoop2.7.3ソースコードをコンパイルします

同様に、hadoop-2.7.3-src.tar.gzをアップロードします

解压
tar -zxvf hadoop-2.7.3-src.tar.gz

cd hadoop-2.7.3-src/

mvn clean package -DskipTests -Pdist,native -Dtar -Dsnappy.lib=/usr/local/lib -Dbundle.snappy

该项目打包过程漫长(本人打包花了两个多小时),耐心等待即可,后面我会提供支持Snappy压缩的安装包

正常に実行されると、hadoop-2.7.3-src / hadoop-dist / target /hadoop-2.7.3.tar.gzが生成されたsnappyインストールパッケージになります。

質問を追加する

org.apache.maven.plugin.MojoExecutionException: 
protoc version is 'libprotoc x.x.x', expected version is '2.5.0' -> [Help 1

このようなエラーが発生した場合は、Hadoopのパッケージ化に必要なprotobufバージョンが2.5.0であり、現在のバージョンと矛盾していることを示しています。

4.SnappyをサポートするHadoopクラスターをインストールします

上で生成されたhadoop-2.7.3.tar.gzを解凍します

tar -zxvf hadoop-2.7.3.tar.gz

Hadoopクラスターが以前に構築されている場合

cd hadoop-2.7.3/lib/native/

将该目录下的所有文件复制到之前已经搭建好的Hadoop目录下的 lib/native/

Hadoopクラスターを開始します

注文の実行

hadoop checknative

ここに写真の説明を挿入
スナッピーが真に対応するのを見るのは成功です

Hadoopクラスターを構築していない場合は、こちらをご覧ください

HadoopHAクラスターの構築

5.SnappyをサポートするHadoopインストールパッケージ

リンク:https
://pan.baidu.com/s/101n4HOClGdJu6oNTb8Kpbg抽出コード:ta8l

おすすめ

転載: blog.csdn.net/qq_42599616/article/details/105980375