Upload
rusbase
View
611
Download
2
Embed Size (px)
Citation preview
Как сделать свой кластер Hadoop/Spark
Андрей Созыкин
Заведующий кафедрой высокопроизводительных компьютерных технологийИнститут математики и компьютерных наук УрФУ
Заведующий отделом вычислительной техники ИММ УРО РАН
2
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Архитектура кластера
Сеть Ethernet/10G Ethernet
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
Узел кластера Узел кластера Узел кластера Узел кластера
HDFS
3
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Отличия кластераМного пользователейПакетный режим работы
4
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Менеджер ресурсов
Сеть Ethernet/10G Ethernet
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
HDFS
Очередь задач…
5
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Отличия кластераМного пользователейПакетный режим работыМенеджеры ресурсов:
• Hadoop YARN (Yet Another Resource Negotiator)• Apache Mesos• Встроенный менеджер ресурсов в Apache Spark
6
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Что нам нужно для кластераМенеджер ресурсовРаспределенная файловая система HDFSСлужбы запуска приложений:
• Hadoop MapReduce• Apache Spark
Дополнительные продукты из экосистем:• Apache Hive• Apache Pig• Apache Zookeeper• Spark SQL• MLlib
7
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Как устанавливатьОтдельные компоненты:
• Hadoop - hadoop.apache.org• Spark - spark.apache.org• Hive - hive.apache.org• Mesos - mesos.apache.org
8
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Как устанавливатьОтдельные компоненты:
• Hadoop - hadoop.apache.org• Spark - spark.apache.org• Hive - hive.apache.org• Mesos - mesos.apache.org
Готовые дистрибутивы:• Cloudera - www.cloudera.com• Hortonworks - hortonworks.com• MapR- www.mapr.com
9
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Cloudera Distribution for Hadoop (CDH)
10
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
ОборудованиеСерверы 1-2U
• Персональные компьютеры, ноутбуки и т.п.Процессоры:
• Intel 4-16 ядер• «Средний» уровень
Жесткие диски:• 2 для ОС (зеркало)• 2-24 для данных (JBOD)• Желательно одинаковой емкости
Сеть Ethernet:• 1 Гб/с – сервер с 4-8 дисками• 10 Гб/с – сервер с 10 и более дисками
11
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Перед установкойРазрешение полных имен хостов (FQDN) на всех узлах кластера
• DNS• /etc/hosts
Одинаковое время на всех узлах:• ntp
12
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Способы установки CDHАвтоматическая установка с помощью GUI Cloudera Manager:
• Oracle JDK• Cloudera Manager Server и Agents• База данных сервисов Cloudera embedded PostgreSQL• Cloudera Distribution for Hadoop• Сервисы на узлах кластера• Роли узлов кластера (HDFS Name Node и Data Node, Resource Manager,
Node Manager и т.п.)• Автоматическая настройка и конфигурирование базы данных Cloudera• Кластеры для разработчиков и демонстрационные
Ручная установка c помощью пакетов Cloudera Manager:• Для продуктивных кластеров
13
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
УстановкаУстановить Cloudera Manager на компьютер, который будет выполнять роль Cloudera Manager Server:
• http://www.cloudera.com/downloads/manager
14
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Cloudera Manager ConsoleЗапуск Cloudera Manager Console
• http://cmserver-host:7180• admin:admin
15
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Установка на узлы кластера
16
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Установка на узлы кластера
17
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Установка на узлы кластера
18
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Установка на узлы кластера
19
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Мониторинг в Cloudera Manager
20
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Кластер в облакеAmazon Elastic Map Reduce
• https://aws.amazon.com/emr/ Google Cloud Dataproc
• https://cloud.google.com/dataproc/Microsoft HDInsight
• https://azure.microsoft.com/en-us/services/hdinsight/
21
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Кластер не продуктивный!Безопасность
• Получить доступ ко всем данным в HDFS:export HADOOP_USER_NAME=hdfs
• Решение – использовать KerberosОптимизация производительности:
• Параметры ядра ОС• Параметры файловой системы• Параметры Hadoop/MapReduce/HDFS
ОтказоустойчивостьРезервное копированиеАвтоматизация администрирования:
• Chef• Puppet• Ansible
22
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Кластер не продуктивный!Безопасность
• Получить доступ ко всем данным в HDFS:export HADOOP_USER_NAME=hdfs
• Решение – использовать KerberosОптимизация производительности:
• Параметры ядра ОС• Параметры файловой системы• Параметры Hadoop/MapReduce/HDFS
ОтказоустойчивостьРезервное копированиеАвтоматизация администрирования:
• Chef• Puppet• Ansible
Первое издание – 2012Второе издание – октябрь 2018
23
Как сделать свой кластер Hadoop/Spark Андрей Созыкин
Спасибо за внимание!
КонтактыАндрей Созыкин[email protected] www.asozykin.ru