1. Siapkan ssh
Instal paket perangkat lunak terkait ssh:
Salin kode sebagai berikut: sudo apt-get install openssh-client openssh-server
Kemudian mulai/matikan sshd menggunakan salah satu dari dua perintah berikut:
Salin kode sebagai berikut: sudo /etc/init.d/ssh start|stop
layanan sudo ssh mulai|berhenti
Jika sshd berhasil dimulai, kita dapat melihat hasil seperti berikut:
Copy kodenya sebagai berikut: $ps -e |.grep ssh
2766 ? 00:00:00 ssh-agen
10558 ?
Saat ini, jika Anda menjalankan perintah ssh berikut untuk masuk ke mesin, Anda akan diminta memasukkan kata sandi:
Salin kode seperti berikut: ssh localhost
Sekarang yang harus kita lakukan adalah membuatnya tidak memerlukan kata sandi:
Copy kodenya sebagai berikut: $ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa #SSH key password kosong
$ kucing ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Itu saja. Jika masih tidak berhasil, izin pada file kunci mungkin tidak diatur dengan benar.
2. Konfigurasikan hadoop
Buka zip hadoop-1.2.1 ke ~/, dan buat direktori hadoop-env di bawah ~/. Lanjutkan untuk membuat struktur direktori berikut di bawah hadoop-env:
├── dfs
│ ├── pos pemeriksaan1
│ ├── data1
│ ├── data2
│ └── nama1
└── tes
└── masukan
File konfigurasi hadoop-1.2.1/conf/core-site.xml:
Copy kode kodenya sebagai berikut:
<?xml versi="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Letakkan penggantian properti khusus situs di file ini -->
<konfigurasi>
<properti>
<nama>fs.default.nama</nama>
<nilai>hdfs://localhost:9000</nilai>
<final>benar</final>
</properti>
</konfigurasi>
fs.default.name menentukan uri HDFS. Jika tidak ada port yang diberikan nilainya, defaultnya adalah 8020.
File konfigurasi hadoop-1.2.1/conf/hdfs-site.xml:
Copy kode kodenya sebagai berikut:
<?xml versi="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Letakkan penggantian properti khusus situs di file ini -->
<konfigurasi>
<properti>
<nama>dfs.nama.dir</nama>
<nilai>~/hadoop-env/dfs/nama1</nilai>
<final>benar</final>
</properti>
<properti>
<nama>dfs.data.dir</nama>
<nilai>~/hadoop-env/dfs/data1,~/hadoop-env/dfs/data2</nilai>
<final>benar</final>
</properti>
<properti>
<nama>fs.checkpoint.dir</nama>
<nilai>~/hadoop-env/dfs/checkpoint1</nilai>
<final>benar</final>
</properti>
</konfigurasi>
dfs.name.dir menentukan direktori tempat namenode menyimpan metadata. Beberapa direktori dapat ditentukan. Direktori ini harus dipisahkan dengan koma; dfs.data.dir menentukan direktori tempat datanode disimpan. checkpoint.dir menentukan Direktori tempat namenode tambahan menyimpan pos pemeriksaan.
File konfigurasi hadoop-1.2.1/conf/mapred-site.xml:
Copy kode kodenya sebagai berikut:
<?xml versi="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Letakkan penggantian properti khusus situs di file ini -->
<konfigurasi>
<properti>
<nama>mapred.job.tracker</nama>
<nilai>host lokal:9001</nilai>
<final>benar</final>
</properti>
</konfigurasi>
3. Tes
HDFS format pertama:
Copy kode sebagai berikut: ./hadoop-1.2.1/bin/hadoop namenode -format
Mulai proses HDFS dan MapReduce:
Copy kode kodenya sebagai berikut:
$./hadoop-1.2.1/bin/start-dfs.sh
$./hadoop-1.2.1/bin/start-mapred.sh
Jika kesalahan dilaporkan saat startup, seperti localhost: Error: JAVA_HOME is not set., Anda perlu mengekspor JAVA_HOME di file ./hadoop-1.2.1/conf/hadoop-env.sh, misalnya:
ekspor JAVA_HOME=~/jdk1.7.0_25
Cara memeriksa apakah berhasil dimulai: Cara pertama adalah dengan menggunakan perintah jps (Alat Status Proses Mesin Virtual Java). Seharusnya ada keluaran seperti berikut:
Copy kode kodenya sebagai berikut:
$jps
13592 DataNode
13728 Nama SekunderNode
13837 Pelacak Pekerjaan
12864 NamaNode
13955 Pelacak Tugas
16069Jps
Cara kedua adalah dengan login ke browser di http://localhost:50030 untuk melihat jobtracker dan http://localhost:50070 untuk melihat namenode. Jika Anda menggunakan perangkat lunak pengelakan, Anda mungkin mendapatkan kesalahan saat mengakses. Solusi paling sederhana adalah dengan mematikan perangkat lunak pengelakan. Cara lain adalah dengan melihat file log.
Sekarang kita membuat dua file di direktori ~/hadoop-env/test/input:
Copy kode kodenya sebagai berikut:
$ echo "halo dunia" > test1.txt
$ echo "hai, dunia" > test2.txt
Impor kedua file ini ke HDFS:
Copy kode kodenya sebagai berikut:
./hadoop-1.2.1/bin/hadoop dfs -letakkan hadoop-env/test/input/output/
Memeriksa:
Copy kode kodenya sebagai berikut:
$ ./hadoop-1.2.1/bin/hadoop dfs -ls /
Ditemukan 2 item
drwxr-xr-x - supergrup pengguna 0 22-10-2013 22:07 /test
drwxr-xr-x - supergrup pengguna 0 22-10-2013 21:58 /tmp
$ ./hadoop-1.2.1/bin/hadoop dfs -ls /test
Ditemukan 2 item
-rw-r--r-- 3 pengguna supergrup 12 22-10-2013 22:07 /test/test1.txt
-rw-r--r-- 3 pengguna supergrup 9 22-10-2013 22:07 /test/test2.txt
Oke, konfigurasi sudah selesai.
Catatan: Sistem yang digunakan pada artikel ini adalah linux mint 15 64bit, dan hadoop menggunakan versi 1.2.1.