Строительство кластера Zookeeper
предисловие
Zookeeper — один из необходимых сервисов для платформ больших данных. Например, управление Zookeeper требуется в кластерах Hadoop, Kafka и Hbase.
Подготовка
- Необходимо подготовить три хоста Linux, это могут быть Centos, Ubuntu и т. д.
- Настройте переменные среды Java на трех хостах Linux.
- Настройте вход без пароля SSH для трех хостов.
начать строить
- Загрузите установочный пакет Zookeeper, вот версия 3.1.14, просто используйте wget для его загрузки.
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
- После загрузки используйте команду tar, чтобы распаковать установочный пакет:
tar -zxvf zookeeper-3.4.14.tar.gz
- Написать файл конфигурации
# 切换到Zookeeper的conf目录下
cd zookeeper-3.4.14/conf
# 拷贝一份配置
cp zoo_sample.cfg zoo.cfg
# 使用vim打开配置文件进行编辑
vim zoo.cfg
зоопарк.cfg
tickTime=2000
initLimit=10
syncLimit=5
# 数据存储目录
dataDir=/tmp/zookeeper
# Zookeeper的端口
clientPort=2181
# 集群节点的配置
# 其中server.0的0为Zookeeper集群中的节点id
# 2888为原子广播端口,3888为选举端口
server.0=192.168.0.12:2888:3888
server.1=192.168.0.11:2888:3888
server.2=192.168.0.6:2888:3888
- Напишите файл конфигурации myid.
Содержимое файла конфигурации myid соответствует идентификатору server.id, настроенному в zoo.cfg. Например, для узла server.0 необходимо настроить «0» в файле конфигурации myid и т. д.
Расположение файла конфигурации myid — это каталог dataDir в zoo.cfg.
Запишите содержимое конфигурации в файл myid с помощью перенаправления.
echo 0 > /tmp/zookeeper/myid
- Удаленно скопируйте распакованный и настроенный каталог Zookeeper на два других компьютера.
scp -r zookeeper-3.4.14 [email protected]:/home/worker/bigdata/
Конфигурацию изменять не нужно, достаточно настроить соответствующий файл myid.
echo 2 > /tmp/zookeeper/myid
И так по третьей машине.
начать смотритель зоопарка
После настройки всех трех машин запустите Zookeeper для тестирования. Поскольку никакие переменные среды не настроены, вам нужно войти в каталог bin Zookeeper для выполнения команд.
Запустите Zookeeper командой
./zkServer.sh start
Выполните ту же команду на двух других машинах
, а затем используйте следующую команду, чтобы проверить, был ли запуск успешным:
./zkServer.sh status
Если статус отображается в режиме, конфигурация выполнена успешно. Два последователя и один лидер.
Мы также можем использовать zkClinet для тестирования, а также использовать следующий Minglin для входа в кластер Zookeeper в каталоге bin.
./zkCli.sh
Экран успешного входа:
Каталог с zookeeper на корневом узле выполнен успешно.
Если они не отображаются, могут быть некоторые проблемы.В каталоге bin также есть файл zookeeper.out, в котором хранятся журналы работы Zookeeper.Вы можете проверить журналы внутри, чтобы определить, что не так.