Информация об окружающей среде
- Операционная система: macOS Мохаве 10.14.6
- JDK: 1.8.0211 (место установки: /Library/Java/JavaVirtualMachines/jdk1.8.0211.jdk/Contents/Home)
- Хауп: 3.2.1
включить ssh
В «Системных настройках» -> «Общий доступ» настройки следующие:
Вход без пароля
- Выполните следующую команду, чтобы создать секретный ключ:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
Вплоть до следующего идентификатор будет сгенерирован в каталоге ~/.ssh.rsa и идентификаторфайл rsa.pub
- Выполните следующую команду, чтобы поместить свой секретный ключ в каталог авторизации ssh, чтобы вам не нужно было вводить пароль для самого входа в ssh:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- Попробуйте войти по ssh, на этот раз пароль не требуется:
Last login: Sun Oct 13 21:44:17 on ttys000
(base) zhaoqindeMBP:~ zhaoqin$ ssh localhost
Last login: Sun Oct 13 21:48:57 2019
(base) zhaoqindeMBP:~ zhaoqin$
скачать хауп
- Загрузите hadoop, адрес: http://hadoop.apache.org/releases.html
- Разархивируйте загруженный файл hadoop-3.2.1.tar.gz, адрес, который я распаковал здесь: ~/software/hadoop-3.2.1/
Если вам нужен только автономный режим Hadoop, вы можете сделать это сейчас, но в автономном режиме нет hdfs, поэтому следующим шагом будет установка режима псевдораспределения;
Настройки режима псевдораздачи
Войдите в каталог hadoop-3.2.1/etc/hadoop и выполните следующие настройки:
- Откройте файл hadoop-env.sh и добавьте параметр пути JAVA:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home
- Откройте файл core-site.xml и измените узел конфигурации на следующий:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
- Откройте файл hdfs-site.xml и измените узел конфигурации на следующий:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
- Откройте файл mapred-site.xml и измените узел конфигурации на следующий:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
- Откройте файл yarn-site.xml и измените узел конфигурации на следующий:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
</configuration>
- Выполните следующую команду в каталоге hadoop-3.2.1/bin для инициализации hdfs:
./hdfs namenode -format
После успешной инициализации можно увидеть следующую информацию:
2019-10-13 22:13:32,468 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
2019-10-13 22:13:32,473 INFO namenode.FSImage: FSImageSaver clean checkpoint: txid=0 when meet shutdown.
2019-10-13 22:13:32,474 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at zhaoqindeMBP/192.168.50.12
************************************************************/
запускать
- Войдите в каталог hadoop-3.2.1/sbin и выполните ./start-dfs.sh, чтобы запустить hdfs:
(base) zhaoqindeMBP:sbin zhaoqin$ ./start-dfs.sh
Starting namenodes on [localhost]
Starting datanodes
Starting secondary namenodes [zhaoqindeMBP]
zhaoqindeMBP: Warning: Permanently added 'zhaoqindembp,192.168.50.12' (ECDSA) to the list of known hosts.
2019-10-13 22:28:30,597 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Вышеупомянутое предупреждение не повлияет на использование;
- Адрес доступа к браузеру: localhost:9870, веб-страницу hadoop можно увидеть следующим образом:
- Войдите в каталог hadoop-3.2.1/sbin и выполните ./start-yarn.sh, чтобы запустить пряжу:
base) zhaoqindeMBP:sbin zhaoqin$ ./start-yarn.sh
Starting resourcemanager
Starting nodemanagers
- Адрес доступа к браузеру: localhost:8088, веб-страницу пряжи можно увидеть следующим образом:
- Выполните команду jps, чтобы просмотреть все процессы Java. В обычных условиях вы можете увидеть следующие процессы:
(base) zhaoqindeMBP:sbin zhaoqin$ jps
2161 NodeManager
1825 SecondaryNameNode
2065 ResourceManager
1591 NameNode
2234 Jps
1691 DataNode
На данный момент завершены развертывание, настройка и запуск псевдораспределенной среды hadoop3.
Остановите службу Hadoop
Войдите в каталог hadoop-3.2.1/sbin и выполните ./stop-all.sh, чтобы закрыть все службы hadoop:
(base) zhaoqindeMBP:sbin zhaoqin$ ./stop-all.sh
WARNING: Stopping all Apache Hadoop daemons as zhaoqin in 10 seconds.
WARNING: Use CTRL-C to abort.
Stopping namenodes on [localhost]
Stopping datanodes
Stopping secondary namenodes [zhaoqindeMBP]
2019-10-13 22:49:00,941 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Stopping nodemanagers
Stopping resourcemanager
Выше описан весь процесс развертывания hadoop3 в среде Mac, надеюсь, он поможет вам в этом.