Установка и настройка отказоустойчивого кластера. — различия между версиями
| 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)

