GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 20.04 Hadoop

Apache Hadoopは、ビッグデータの分散ストレージと分散処理のために連携して動作する複数のオープンソースソフトウェアパッケージで構成されています。 Hadoopには4つの主要なコンポーネントがあります:

  • Hadoop Common –Hadoopが実行に依存するさまざまなソフトウェアライブラリ
  • Hadoop分散ファイルシステム(HDFS) –コンピューターのクラスター全体でビッグデータを効率的に分散および保存できるファイルシステム
  • Hadoop MapReduce –データの処理に使用されます
  • Hadoop YARN –クラスター全体のコンピューティングリソースの割り当てを管理するAPI

このチュートリアルでは、Ubuntu20.04にHadoopバージョン3をインストールする手順について説明します。これには、HDFS(NamenodeおよびDatanode)、YARN、およびMapReduceを、単一のマシンで分散シミュレーションである疑似分散モードで構成された単一ノードクラスターにインストールすることが含まれます。 Hadoopの各コンポーネント(HDFS、YARN、MapReduce)は、個別のJavaプロセスとしてノード上で実行されます。

このチュートリアルでは、次のことを学びます。

  • Hadoop環境のユーザーを追加する方法
  • Javaの前提条件をインストールする方法
  • パスワードなしのSSHを構成する方法
  • Hadoopをインストールし、必要な関連XMLファイルを構成する方法
  • Hadoopクラスターを開始する方法
  • NameNodeおよびResourceManagerWebUIにアクセスする方法

Ubuntu20.04でのApacheHadoopFocal Fossaシステム ソフトウェア その他 規約
ソフトウェア要件とLinuxコマンドライン規則
カテゴリ 使用する要件、規則、またはソフトウェアバージョン
Ubuntu20.04をインストールまたはUbuntu20.04FocalFossaをアップグレード
Apache Hadoop、Java
rootまたはsudoを介したLinuxシステムへの特権アクセス コマンド。
–指定されたLinuxコマンドは、rootユーザーとして直接、またはsudoを使用して、root権限で実行する必要があります。 コマンド
$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります

Hadoop環境のユーザーを作成する

Hadoopには、システムに専用のユーザーアカウントが必要です。ターミナルを作成するには、ターミナルを開いて次のコマンドを入力します。アカウントのパスワードを作成するように求められます。

$ sudo adduser hadoop

新しいHadoopユーザーを作成する

Java前提条件をインストールする

HadoopはJavaに基づいているため、Hadoopを使用する前に、システムにインストールする必要があります。この記事の執筆時点では、現在のHadoopバージョン3.1.3にはJava 8が必要であるため、これをシステムにインストールします。

次の2つのコマンドを使用して、aptの最新のパッケージリストを取得します。 Java 8をインストールします:

$ sudo apt update
$ sudo apt install openjdk-8-jdk openjdk-8-jre

パスワードなしのSSHを構成する

HadoopはSSHに依存してノードにアクセスします。 SSHを介してリモートマシンに接続し、Hadoopを実行している場合はローカルマシンに接続します。したがって、このチュートリアルではローカルマシンにHadoopをセットアップするだけですが、SSHをインストールする必要があります。また、パスワードなしのSSHを構成して、
Hadoopがバックグラウンドでサイレントに接続を確立できるようにする必要があります。

  1. OpenSSHサーバーとOpenSSHクライアントの両方のパッケージが必要です。次のコマンドでインストールします:
    $ sudo apt install openssh-server openssh-client
    
  2. 先に進む前に、hadoopにログインすることをお勧めします 以前に作成したユーザーアカウント。現在の端末のユーザーを変更するには、次のコマンドを使用します:
    $ su hadoop
    
  3. これらのパッケージをインストールしたら、次のコマンドを使用して公開鍵と秘密鍵のペアを生成します。ターミナルから何度かプロンプトが表示されますが、必要なのはENTERを押し続けることだけです。 続行します。
    $ ssh-keygen -t rsa
    

    パスワードなしのSSH用のRSAキーの生成
  4. 次に、新しく生成されたRSAキーをid_rsa.pubにコピーします authorized_keysに移動します :
    $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
  5. ローカルホストにSSHで接続することにより、構成が成功したことを確認できます。パスワードの入力を求められることなくそれを実行できる場合は、問題ありません。

    パスワードの入力を求められずにシステムにSSHで接続すると、システムが機能したことを意味します

Hadoopをインストールして関連するXMLファイルを構成する

ApacheのWebサイトにアクセスして、Hadoopをダウンロードします。 Hadoopバージョン3.1.3バイナリを直接ダウンロードする場合は、次のコマンドを使用することもできます。

$ wget https://downloads.apache.org/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz

ダウンロードをhadoopに抽出します 次のコマンドを使用したユーザーのホームディレクトリ:

$ tar -xzvf hadoop-3.1.3.tar.gz -C /home/hadoop

環境変数の設定

次のexport コマンドは、システムに必要なHadoop環境変数を構成します。これらすべてをコピーして端末に貼り付けることができます(Hadoopのバージョンが異なる場合は、1行目を変更する必要がある場合があります):

export HADOOP_HOME=/home/hadoop/hadoop-3.1.3
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

.bashrcを入手する 現在のログインセッションのファイル:

$ source ~/.bashrc

次に、hadoop-env.shにいくつかの変更を加えます ファイル。Hadoopインストールディレクトリの/etc/hadoopにあります。 。 nanoまたはお気に入りのテキストエディタを使用して開きます:

$ nano ~/hadoop-3.1.3/etc/hadoop/hadoop-env.sh

JAVA_HOMEを変更します Javaがインストールされている場所への変数。私たちのシステム(そしておそらくあなたもUbuntu 20.04を実行していて、これまで私たちと一緒にフォローしている場合)では、その行を次のように変更します:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

JAVA_HOME環境変数を変更します

ここで行う必要がある変更はこれだけです。ファイルへの変更を保存して閉じることができます。

core-site.xmlファイルの構成変更

次に行う必要のある変更は、core-site.xml内です。 ファイル。次のコマンドで開きます:

$ nano ~/hadoop-3.1.3/etc/hadoop/core-site.xml

次の構成を入力します。これは、HDFSにローカルホストポート9000で実行するように指示し、一時データ用のディレクトリを設定します。



fs.defaultFS
hdfs://localhost:9000


hadoop.tmp.dir
/home/hadoop/hadooptmpdata

core-site.xml構成ファイルの変更

変更を保存して、このファイルを閉じます。次に、一時データが保存されるディレクトリを作成します。

$ mkdir ~/hadooptmpdata

hdfs-site.xmlファイルの構成変更

NamenodeとDatanodeの情報を保存するためにHadoop用に2つの新しいディレクトリを作成します。

$ mkdir -p ~/hdfs/namenode ~/hdfs/datanode

次に、次のファイルを編集して、これらのディレクトリの場所をHadoopに指示します。

$ nano ~/hadoop-3.1.3/etc/hadoop/hdfs-site.xml

hdfs-site.xmlに次の変更を加えます ファイルを保存して閉じる前に:



dfs.replication
1
dfs.name.dir
file:///home/hadoop/hdfs/namenode
dfs.data.dir
file:///home/hadoop/hdfs/datanode

hdfs-site.xml構成ファイルの変更

mapred-site.xmlファイルの構成変更

次のコマンドを使用して、MapReduceXML構成ファイルを開きます。

$ nano ~/hadoop-3.1.3/etc/hadoop/mapred-site.xml

また、ファイルを保存して閉じる前に、次の変更を加えてください。



mapreduce.framework.name
yarn

mapred-site.xml構成ファイルの変更

yarn-site.xmlファイルの構成変更

次のコマンドでYARN構成ファイルを開きます。

$ nano ~/hadoop-3.1.3/etc/hadoop/yarn-site.xml

変更を保存して閉じる前に、このファイルに次のエントリを追加してください。



mapreduceyarn.nodemanager.aux-services
mapreduce_shuffle

ヤーンサイト構成ファイルの変更

Hadoopクラスターの開始

クラスターを初めて使用する前に、namenodeをフォーマットする必要があります。次のコマンドでそれを行うことができます:

$ hdfs namenode -format

HDFSNameNodeのフォーマット

あなたの端末はたくさんの情報を吐き出します。エラーメッセージが表示されない限り、機能したと見なすことができます。

次に、start-dfs.shを使用してHDFSを開始します スクリプト:

$ start-dfs.sh

start-dfs.shスクリプトを実行します

次に、start-yarn.shを介してYARNサービスを開始します。 スクリプト:

$ start-yarn.sh

start-yarn.shスクリプトを実行します

すべてのHadoopサービス/デーモンが正常に開始されたことを確認するには、jpsを使用できます。 指図。これにより、システムで実行されている、現在Javaを使用しているすべてのプロセスが表示されます。

$ jps

jpsを実行して、Javaに依存するすべてのプロセスを確認し、Hadoopコンポーネントが実行されていることを確認します

これで、次のコマンドのいずれかを使用して、現在のHadoopバージョンを確認できます。

$ hadoop version

または

$ hdfs version

Hadoopのインストールと現在のバージョンの確認

HDFSコマンドラインインターフェイス

HDFSコマンドラインは、HDFSにアクセスし、ディレクトリを作成したり、ファイルやディレクトリを操作するための他のコマンドを発行したりするために使用されます。次のコマンド構文を使用して、いくつかのディレクトリを作成し、それらを一覧表示します。

$ hdfs dfs -mkdir /test
$ hdfs dfs -mkdir /hadooponubuntu
$ hdfs dfs -ls /

HDFSコマンドラインとの対話

ブラウザからNamenodeとYARNにアクセスします

NameNodeのWebUIとYARNResourceManagerの両方に、MozillaFirefoxやGoogleChromeなどの任意のブラウザを介してアクセスできます。

NameNode Web UIの場合は、http://HADOOP-HOSTNAME-OR-IP:50070に移動します。

Hadoop用のDataNodeWebインターフェイス

Hadoopクラスターで現在実行中のすべてのジョブを表示するYARNResourceManager Webインターフェースにアクセスするには、http://HADOOP-HOSTNAME-OR-IP:8088に移動します。

Hadoop用のYARNResourceManagerWebインターフェース

結論

この記事では、Ubuntu 20.04FocalFossaの単一ノードクラスターにHadoopをインストールする方法を説明しました。 Hadoopは、ビッグデータを処理するための便利なソリューションを提供し、データの保存と処理にクラスターを利用できるようにします。柔軟な構成と便利なWebインターフェイスにより、大量のデータを処理する際の作業が楽になります。


Ubuntu
  1. Ubuntu13.04にVirtualBox4.2をインストールします

  2. Ubuntu14.04にVirtualBox4.3をインストールします

  3. Ubuntu16.04にuTorrentをインストールします

  1. UbuntuにPodmanをインストールする

  2. Ubuntu18.04または20.04にHadoopをインストールする方法

  3. Ubuntu20.04にインストールするもの

  1. Ubuntu20.04にRをインストールする方法

  2. Ubuntu18.04にGoをインストールする方法

  3. Ubuntu18.04にRをインストールする方法