Установка и настройка отказоустойчивого кластера. — различия между версиями
Wikiadmin (обсуждение | вклад) |
Wikiadmin (обсуждение | вклад) |
||
Строка 43: | Строка 43: | ||
14) смена host на osd\\ | 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 | |
− | + | ||
== Moxa == | == 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 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | 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 | |
− | |||
− | + | добавление ноды | |
− | + | было 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) комментируем единственную строку и вписываем новую ниже: | 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> | 8) gluster peer probe <node2> | ||
− | проверить статус командой | + | |
− | 9) на каждой ноде | + | проверить статус командой |
− | 9.1) | + | |
− | mkdir -p /media/glusterfs/wbackup | + | 9) на каждой ноде |
− | 9.2 | + | |
+ | :9.1) mkdir -p /media/glusterfs/wbackup | ||
+ | :9.2) можно создать папку mbackup и добавить в /media/glusterfs для volume под название mbackup | ||
на одной из нод проделать след. 2 пункта | на одной из нод проделать след. 2 пункта | ||
+ | |||
10) gluster volume create <wbackup> replica 2 <node1>:/media/glusterfs/wbackup <node2>:/media/glusterfs/wbackup | 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: | 11) для удаления volume: | ||
− | gluster volume stop <wbackup> | + | |
− | gluster volume delete <wbackup> | + | gluster volume stop <wbackup> |
− | apt-get install attr | + | gluster volume delete <wbackup> |
− | cd /media/glusterfs/wbackup | + | apt-get install attr |
− | for i in `attr -lq .`; do setfattr -x trusted.$i .; done | + | cd /media/glusterfs/wbackup |
− | attr -lq ./(for testing, the output should pe empty) | + | for i in `attr -lq .`; do setfattr -x trusted.$i .; done |
+ | attr -lq ./(for testing, the output should pe empty) |
Версия 12:31, 24 апреля 2017
Содержание
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
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
добавление ноды было 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)