

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon EMR を使用してバイナリを構築する
<a name="emr-build-binaries"></a>

クラスターで使用するプログラムをコンパイルするためのビルド環境として Amazon EMR を使用できます。Amazon EMR で使用するプログラムのコンパイルは、Amazon EMR が使用しているバージョンと同じ Linux が実行されているシステムで行わなければなりません。32 ビットバージョンについては、32 ビットマシンまたは 32 ビットクロスコンパイルオプションをオンにして、コンパイルしておく必要があります。64 ビットバージョンについては、64 ビットマシンまたは 64 ビットクロスコンパイルオプションをオンにして、コンパイルしておく必要があります。EC2 インスタンスのバージョンの詳細については、「*Amazon EMR 管理ガイド*」の「[EC2 インスタンスを計画し構成する](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-ec2-instances.html)」を参照してください。C\$1\$1、Python、C\$1 などのプログラミング言語がサポートされいます。

次の表は、Amazon EMR を使用してアプリケーションを構築し、テストするステップを簡単に示しています。


**モジュール構築のプロセス**  

|  |  | 
| --- |--- |
|  1 |  クラスターのマスターノードに接続します。 | 
|  2  |  ソースファイルをマスターノードにコピーします。 | 
|  3  |  バイナリを構築し、必要に応じて最適化します。 | 
|  4 |  バイナリをマスターノードから Amazon S3 にコピーします。 | 

各ステップの詳細については、以降のセクションで説明します。

**クラスターのマスターノードに接続するには**
+ 「*Amazon EMR 管理ガイド*」の「[SSH を使用してマスターノードに接続する](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-ssh.html)」にある手順を実行してください。

**ソースファイルをマスターノードにコピーするには**

1. Amazon S3 バケットにソース ファイルを置きます。バケットを作成する方法とデータを Amazon S3 に移動する方法については、「[Amazon Simple Storage Service ユーザーガイド](https://docs.aws.amazon.com/AmazonS3/latest/userguide/)」を参照してください。

1. 以下のようなコマンドを入力して、ソースファイルを入れるフォルダーを Hadoop クラスター上に作成します:

   ```
   mkdir SourceFiles
   ```

1. 次のようなコマンドを入力して、ソースファイルを Amazon S3 からマスターノードにコピーします。

   ```
   hadoop fs -get s3://amzn-s3-demo-bucket/SourceFiles SourceFiles
   ```

**バイナリを構築し、必要に応じて最適化する**  
バイナリを構築する方法はさまざまな要因によって決まります。ご利用の構築ツールの手順に従って、環境をセットアップして設定してください。Hadoop システム仕様コマンドを使用すると、構築環境をインストールする方法を判断する際に必要なクラスター情報を入手できます。

**システム仕様を確認するには**
+ バイナリを構築する際に使用するアーキテクチャを確認するには、以下のコマンドを使用します。

  1. Debian のバージョンを確認するには、以下のコマンドを入力します:

     ```
     master$ cat /etc/issue
     ```

     出力は次の例のようになります。

     ```
     Debian GNU/Linux 5.0
     ```

  1. パブリック DNS 名とプロセッサーのサイズを確認するには、以下のコマンドを入力します。

     ```
     master$ uname -a
     ```

     出力は次の例のようになります。

     ```
     Linux domU-12-31-39-17-29-39.compute-1.internal 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:34:28 EST 2008 x86_64 GNU/Linux
     ```

  1. プロセッサー速度を確認するには、以下のコマンドを入力します:

     ```
     master$ cat /proc/cpuinfo
     ```

     出力は次の例のようになります。

     ```
     processor : 0
     vendor_id : GenuineIntel
     model name : Intel(R) Xeon(R) CPU E5430 @ 2.66GHz
     flags : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr cda lahf_lm
     ...
     ```

バイナリを構築したら、ファイルを Amazon S3 にコピーできます。

**バイナリをマスターノードから Amazon S3 にコピーするには**
+ 次のコマンドを入力して、バイナリを Amazon S3 バケットにコピーします。

  ```
  hadoop fs -put BinaryFiles s3://amzn-s3-demo-bucket/BinaryDestination
  ```