Docker-compose проект кластера с Hadoop и Spark
Команды
Сборка проекта: docker-compose build
Запуск: docker-compose up -d
Остановка: docker-compose stop
Удаление: docker-compose down -v
Для нормальной работы гиперссылок необходимо добавить в файл hosts (C:/windows/system32/drivers/etc/hosts на windows и /etc/hosts на Linux) все строчки из файла hosts в архиве.
Веб-сервисы
Доступны после запуска проекта docker-compose
- http://localhost:9870/ - информация о Hadoop кластере
- http://localhost:8088/ - менеджер ресурсов, отображающий выполняющиеся задачи (после завершения содержит ссылки на сервер истории, который уже устарел и не используется)
- http://localhost:8188/ - новый сервер истории задач Timeline server (полезно смотреть для отладки)
Команды работы с файловой системой HDFS
Папка share является общей у хоста и докер-контейнера namenode.
docker-compose exec namenode bash - запуск командной оболочки внутри докер-контейнера главного узла namenode (рабочая папка - /share)
hdfs dfs -mkdir -p /user/root - создание домашней папки пользователя в HDFS (она изначально отсутствует)
hdfs dfs -rm -r путь - удалить папку/файл
hdfs dfs -put что куда - загрузка файлов/папок в HDFS (если "куда" не указано, то загрузится в /user/root)
hdfs dfs -get что куда - скачивание файлов/папок из HDFS (если "куда" не указано, то загрузится в текущую папку)
hdfs dfs -ls путь - вывести список файлов в папке на экран
hdfs dfs -cat файл - вывести содержимое файла на экран
Работа с задачами Hadoop-кластера
yarn jar jar-файл аргументы - запуск MapReduce задачи в виде jar-файла (аналог старой команды hadoop jar)
mapred streaming -input путь -output путь -mapper mapper.py -reducer reducer.py -file mapper.py -file reducer.py - запуск MapReduce задания (вместо mapper.py и reducer.py можно указать любой исполняемый файл).
Если вам понадобятся нестандартный python-библиотеки, их нужно будет сначала установить внутри докер-контейнера nodemanager командой docker-compose exec nodemanager pip install библиотека.
yarn application -list - список запущенных заданий (первый столбец содержит идентификатор задачи)
yarn application -kill идентификатор - принудительная остановка задания (Ctrl C не останавливает MapReduce задачу)
2.9 Кбайт Изменено 26/03/25, 14:39