Настройте кластер Hadoop и увеличьте объем хранилища без простоев
Сегодня я обсуждаю отличную тему, где покажу вам, как мы можем увеличить наше хранилище на лету без каких-либо помех. Как вы знаете, в настоящее время почти каждая отрасль использует системы распределенного хранения, так как большие данные поступают каждый день, и они также заботятся о стоимости и производительности.
На рынке доступно множество программ, предоставляющих распределенное хранилище, таких как Hadoop, Splunk.
Hadoop — это программная платформа с открытым исходным кодом для хранения данных и запуска приложений на кластерах общедоступного оборудования. Он обеспечивает массивное хранилище для любого типа данных, огромную вычислительную мощность и возможность обрабатывать практически неограниченное количество одновременных задач или заданий.
В распределенной системе хранения есть два способа увеличить хранилище.
- Горизонтальное масштабирование
- Вертикальное масштабирование
Сначала мы создаем кластер Hadoop, в котором настраиваем главные и подчиненные узлы. Затем я говорю о части хранения.
Главный узел Hadoop
Нам нужно программное обеспечение Hadoop. Я использую Hadoop 1.2.1, которое вы можете скачать откуда угодно. Нам также нужно программное обеспечение Java, потому что оно создано поверх Java и загружает совместимую версию Java. Теперь настройте установку главного узла.
Перейдите в /etc/hadoop/ и отредактируйте файлы core-site.xml и файл hdfs-site.xml.
В hdfs-site.xml мы пишем имя папки, которое мы разделяем в ключевом слове value.
Примечание. В Hadoop главный узел также называется Namenode, а подчиненный узел называется Datanode.
Отформатируйте главный узел.
hadoop namenode -format
Запустить службы
hadoop-daemon.sh start namenode
Ведомый узел Hadoop
Как и в случае с мастером, вам снова потребуется программное обеспечение Hadoop и Java. Теперь настройте настройку ведомого узла. Почти такая же конфигурация просто изменяет некоторые значения ключевых слов.
Здесь в ключевом слове value напишите свое имя узла IP.
Теперь. Перед тем, как мы разделим наше хранилище, возникает интересная часть, мы подключаем отдельный жесткий диск и монтируем его в эту папку и делаем так, чтобы хранилище было заполнено, чтобы можно было добавить больше жесткого диска без внесения каких-либо изменений.
Мы используем концепцию LVM для выполнения вышеуказанного условия. Сначала подключите жесткий диск. Прикрепляю два жестких диска по 1 Гб
вы можете проверить с помощью команды fdisk -l
Необходимо создать PV (физический том) и VG (группа томов) для LVM (управление логическими томами). Сначала создайте PV с помощью команды pvcreate {disk name}
После этого вы можете проверить с помощью команды pvdisplay
Создайте VG из vgcreate {name}{pvname}
PV и проверьте vgdisplay {vgname}
Теперь создайте LVM любого размера, который вы хотите, но он находится между размером VG.
lvcreate --size +{size}G --name {name} {vg name}
Проверить по lvdisplay {vgname}/{lv name}
Затем отформатируйте этот lvm
mkfs.ext4 {lv path}
Теперь он готов к использованию, просто смонтируйте его в папку
mount {lv path} {folder name}
Наконец, поместите имя папки в файл конфигурации Hadoop.
Запустить службы
hadoop-daemon.sh start datanode
Теперь ваш кластер готов к использованию. Вы можете проверить детали узлов данных
hadoop dfsadmin -report
Давайте поговорим о нашей основной теме, если случайно наше хранилище заполнено и вам нужно добавить на лету без каких-либо помех, поэтому есть два способа:
- Мы можем добавить еще один узел данных, как указано выше, это называется Горизонтальное масштабирование. Но это немного длительный процесс.
- Мы можем добавить дополнительное хранилище данных в подчиненный узел Hadoop, это называется вертикальным масштабированием.
В вертикальном масштабировании также есть два способа добавления данных:
- Увеличьте размер lv, если у вас есть дополнительное хранилище в VG.
lvextend --size +{size}G {lv path} resize2fs {lv path}
2. Добавьте новый жесткий диск, создайте pv и подключите его с помощью VG. Затем увеличьте размер lv
vgextend {vg name} {pv name}
Это все …
Давайте предположим, что нам нужно срочное хранилище, поэтому мы можем также уменьшить хранилище другого lv и добавить его к другому lv, но только при условии, что оба находятся в одной и той же VG.
Спасибо за чтение!