1.SecondaryNameNode подробное объяснение
1.1. Механизм работы SecondaryNameNode
1) Первый этап: запуск namenode
- 1: Запустите namenode в первый раз, после форматирования создайте fsimage и отредактируйте файлы. Если это не первый запуск, напрямую загрузите журнал редактирования и файлы изображений в память.
- 2: клиент делает запрос на добавление, удаление, изменение и запрос метаданных.
- 3: Namenode записывает журнал операций и обновляет скользящий журнал.
- 4: Namenode добавляет, удаляет, изменяет и проверяет данные в памяти.
2) Второй этап: работает SecondaryNameNode
- 1: SecondaryNameNode спрашивает namenode, требуется ли контрольная точка. Непосредственно верните результат того, нужно ли проверять namenode.
- 2: SecondaryNameNode запрашивает выполнение Checkpoint.
- 3: namenode прокручивает записываемый журнал правок.
- 4: Скопируйте журнал редактирования и файл изображения катящихся денег в SecondaryNameNode.
- 5: SecondaryNameNode загружает журнал редактирования и файл изображения в память и объединяет их.
- 6: Создайте новый файл изображения fsimage.checkpoint
- 7: Скопируйте fsimage.checkpoint в namenode.
- 8: namenode переименовывает fsimage.checkpoint в fsimage
1.2 Разница и связь между NameNode и SecondaryNameNode
1) Разница
- 1: NameNode отвечает за управление метаданными всей файловой системы и информацией блока данных, соответствующей каждому пути (файлу).
- 2: SecondaryNameNode в основном используется для периодического объединения зеркал пространства имен и журналов редактирования пространства имен.
2) Контакт
- 1: SecondaryNameNode сохраняет файл изображения (fsimage) и журнал редактирования (edits), которые совпадают с NameNode.
- 2: В случае сбоя основного узла имени (при условии, что резервная копия данных не была вовремя сохранена), данные можно восстановить с узла SecondaryNameNode.
1.3 Шаги по вводу в эксплуатацию новых узлов данных и выводу из эксплуатации старых узлов
1) Работа узла в сети Когда новый узел данных должен быть запущен, узел данных должен быть добавлен в файл dfs.hosts.
1,关闭新增节点的防火墙
2,在NameNode节点的hosts文件中加入新增数据节点的hostname
3,在每个新增数据节点的hosts文件中加入NameNode的hostname
4,在NameNode节点增加新增节点的SSH免密码登录操作
5,在NameNode的节点上的dfs.hosts中追加上新节点的hostname
6,在其他节点上执行刷新操作:hdfs dfsadmin -refreshNodes
7,在NameNode节点上,更改slaves文件,将要上线的数据节点hostname追加到slaves文件中。
8,启动NameNode节点
9,查看NameNode的监控页面看是否有新增加的节点
2) Автономная работа узла
1,修改/conf/hdfs-site.xml文件
2,确定需要下线的机器,dfs.oste.execlude文件中配置好需要下架的机器,这个是组织下架机器去连接NameNode的
3,配置完成之后进行配置的刷新操作./bin/hadoop dfsadmin -refreshNodes,这个操作的作用是在后台进行block块的移动
。
4,当执行三的命令完成之后,需要下架的机器就可以关闭了,可以查看现在集群上连接的节点,正在执行Decommission,
会显示:Decommission Status:Decommission in progress执行完毕后,会显示:Decommission Status:Decommissioned
5,机器下线完毕,将他们从excludes文件中移除。