Один из кластеров kafka пишет свои данные в
/var/lib/kafka/, который в root. Пришла задача исправить, есть 8 дисков под программный raid. Соответственно будет делать 10-й. Подготовительные работы.
Работы проводятся поочередно на каждом брокере. Сначала отключаем брокер и переносим данные в новую временную директорию.
systemctl stop kafka
mkdir /tmp/kafka_backup
rsync -aXH --progress /var/lib/kafka/ /tmp/kafka_backup
rm -rf /var/lib/kafka/*
Далее можно воспользоваться вот этой ansible ролью для установки
mdadm. Мои переменные
mdadm_arrays:
- name: "md1"
devices:
- '/dev/nvme1n1'
- '/dev/nvme4n1'
- '/dev/nvme5n1'
- '/dev/nvme11n1'
- '/dev/nvme6n1'
- '/dev/nvme7n1'
- '/dev/nvme9n1'
- '/dev/nvme8n1'
filesystem: "xfs"
level: "10"
mountpoint: "/var/lib/kafka"
state: "present"
mdadm_force_create_filesystem: true
Это установит mdadm, создаст 10 RAID и сразу выполнит маунт в
/var/lib/kafka.Далее остается только перенести данные и включить брокер:
rsync -aXH --progress /tmp/kafka_backup/ /var/lib/kafka/
systemctl start kafka
#kafka