Установка и настройка отказоустойчивого кластера.
Содержание
[убрать]Proxmox
1) при установке дать имя ipenode1.integra-s.com
2) Первое, что нам нужно сделать, это поменять платный репозиторий ProxMox, требующий подписки, на бесплатный:
#nano /etc/apt/sources.list.d/pve-enterprise.list
3) комментируем единственную строку и вписываем новую ниже:
deb http://download.proxmox.com/debian jessie pve-no-subscription
4) Далее обновляем наш ProxMox:
#apt update && apt dist-upgrade
4.1) прописываем в /etc/hosts на каждой ноде ip и hostname нод будущего кластера создаем кластер и прописывает на главной ноде
#pvecm create <clustername>
проверяем, что все нормально и смотрим список нод
#pvecm status
на второстепенных нодах пишем
#pvecm add ipenode1
проверяем, что все нормально и смотрим список нод в кластере
#pvecm status
CEPH
5) Устанавливаем пакеты для работы с Ceph:
#pveceph install -version jewel
6) добавить внутреннюю сеть 10.10.10.0/24 → ребут через веб морду (2 раза)
public net=cluster net
7) подготовка диска для последующего создания OSD
#cfdisk /dev/sdb (new OSD)
8)на каждой ноде
#pveceph init --network 10.10.10.0/24
9) создание первого монитора через веб морду или консоль
#pveceph createmon
10) переходим в веб морду и удаляем pool, далее создаем новый c pg_num=128 2/2 (2 nodes), 3/2 (3 nodes), чем больше OSD, тем больше pg_num
PG_total = (OSD_count*100)/max_replication_count PGPs=PGs
11) создать OSDs (/dev/sdb, /dev/sdc) через вебморду
12) создать RBD хранилище в datacentr'е (monitor: 10.10.10.1)
13) для rbd на client node
# cd /etc/pve/priv/ # mkdir ceph # cp /etc/ceph/ceph.client.admin.keyring ceph/my-ceph-storage.keyring
14) смена host на osd\\
# ceph osd getcrushmap -o crushmapdump # crushtool -d crushmapdump -o crushmapdump-decompiled # nano crushmapdump-decompiled #rules step chooseleaf firstn 0 type host → step chooseleaf firstn 0 type osd # crushtool -c crushmapdump-decompiled -o crushmapdump-compiled # ceph osd setcrushmap -i crushmapdump-compiled
получить ответ
set crush map --> all ok
15) \\
Moxa
1) choose kernel 3.x \\ 2) edit mxloadsvr.c \\
…................................. else if (os == "debian") → “debain11” { system("grep -v mxloadsvr /etc/init.d/npreals > /tmp/nprtmp_rclocal"); ….................................
3) ./mxinst \\ 4) rm -f /etc/rc0-6.d/S02npreals \\ 5) cp npreals /root/moxa \\ 6) chmod +x /etc/moxa/npreals.sh \\ 7) cp npreals /etc/init.d/ \\ 8) chmod +x /etc/init.d/npreals\\ 9) update -rc.d npreals defaults\\ 10)
Добавление ноды\\ было 2 стало 3 \\
1) все как обычно + правка конфига /etc/pve/storage.cfg\\ добавить ip третьего mon'a\\
2) ceph – pool – create с тем же именем, но с 3/2\\ либо создать другой pool и развернуть dump кластера с двух нод\\
СМЕНА IP\\ node → system → network → reboot\\ nano /etc/hosts поменять там ip → reboot через веб морду\\
Glusterfs
1) при установке дать имя ipenode1.integra-s.com\\ 2) Первое, что нам нужно сделать, это поменять платный репозиторий ProxMox, требующий подписки, на бесплатный:
#nano /etc/apt/sources.list.d/pve-enterprise.list
3) комментируем единственную строку и вписываем новую ниже:
deb http://download.proxmox.com/debian jessie pve-no-subscription
4) Далее обновляем наш ProxMox:
#apt update && apt dist-upgrade
5) pvecm create glcluster — на основной ноде pvecm add <node2> - добавить вторую ноду в кластер, прописывается на второй ноде \\ 6) добавить в /etc/hosts ноды, которые будут участвовать в кластере glusterfs \\ 7) apt install glusterfs-server \\ 8) gluster peer probe <node2> проверить статус командой \\ 9) на каждой ноде 9.1) mkdir -p /media/glusterfs/wbackup 9.2*) можно создать папку mbackup и добавить в /media/glusterfs для volume под название mbackup на одной из нод проделать след. 2 пункта 10) gluster volume create <wbackup> replica 2 <node1>:/media/glusterfs/wbackup <node2>:/media/glusterfs/wbackup 11) gluster volume start <wbackup> на каждой проверить все ли верно сделано зайти на первую ноду, создать файл в директории /mnt/pve/wbackup/images/ и проверить его наличие на другой ноде по тому же пути; gluster volume info
11) для удаления volume: gluster volume stop <wbackup> gluster volume delete <wbackup> apt-get install attr cd /media/glusterfs/wbackup for i in `attr -lq .`; do setfattr -x trusted.$i .; done attr -lq ./(for testing, the output should pe empty)