Changes for page Отказоустойчивый кластер Платформы НЕЙРОСС
Last modified by superadmin on 2026/06/24 21:40
From version 1.1
edited by pugachevskaya_elena
on 2025/10/02 15:46
on 2025/10/02 15:46
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. pugachevskaya_elena1 +XWiki.admin - Content
-
... ... @@ -1,6 +4,3 @@ 1 -{{layout}} 2 -{{layout-section ac:type="two_right_sidebar"}} 3 -{{layout-cell}} 4 4 (% style="font-size: 14.0px;letter-spacing: 0.0px;" %)В данном разделе приведена пошаговая инструкция по развёртыванию кластера «с нуля», обеспечивающего базовую функциональность горячего резервирования сервера Платформы НЕЙРОСС с нативным типом установки (в среде ОС). 5 5 6 6 {{info}} ... ... @@ -10,17 +10,11 @@ 10 10 {{error}} 11 11 При необходимости горячего резервирования контейнеризированной версии Платформы НЕЙРОСС рекомендуем обратиться к специалистам компании ИТРИУМ. 12 12 {{/error}} 13 -{{/layout-cell}} 14 14 15 -{{layout-cell}} 16 16 [[image:attach:ui.Параметры узла.WebHome@content.png||thumbnail="true" height="10"]] Содержание: 17 17 18 18 {{toc depth="2"/}} 19 -{{/layout-cell}} 20 -{{/layout-section}} 21 21 22 -{{layout-section ac:type="single"}} 23 -{{layout-cell}} 24 24 == {{id name="ОтказоустойчивыйкластерПлатформыНЕЙРОСС-Общиесведения"/}}(% style="font-size: 20.0px;letter-spacing: -0.008em;" %)Общие сведения(%%) == 25 25 26 26 Отказоустойчивый кластер обеспечивает высокий уровень готовности резервного сервера для максимальной доступности сервисов системы. (% style="letter-spacing: 0.0px;" %)Самый простой кластер состоит из 2-х узлов (компьютеров, серверов), образующих его, настроенных на мониторинг друг друга и управление соответствующими ресурсами кластера. ... ... @@ -82,7 +82,7 @@ 82 82 83 83 Вывод команды приведён в коде ниже: 84 84 85 -{{code}} 76 +{{code language="java"}} 86 86 hacluster:x:113:117::/var/lib/pacemaker:/usr/sbin/nologin 87 87 {{/code}} 88 88 ... ... @@ -110,13 +110,13 @@ 110 110 111 111 Найдите строку: 112 112 113 -{{code}} 104 +{{code language="java"}} 114 114 receiver_parent_pids=`ps -ef | tr -s " " | grep "[w]al receiver process" | cut -d " " -f 3` 115 115 {{/code}} 116 116 117 117 И замените её на: 118 118 119 -{{code}} 110 +{{code language="java"}} 120 120 receiver_parent_pids=`ps -ef | tr -s " " | grep "[w]al\s*receiver" | cut -d " " -f 3` 121 121 {{/code}} 122 122 ... ... @@ -159,7 +159,7 @@ 159 159 160 160 При необходимости проверить конфигурацию (на всех серверах должен быть файл с одинаковым содержимым) выполните: 161 161 162 -{{code}} 153 +{{code language="java"}} 163 163 cat /etc/corosync/corosync.conf 164 164 totem { 165 165 version: 2 ... ... @@ -227,7 +227,7 @@ 227 227 228 228 В случае //stonith-enabled=true// вы увидите: 229 229 230 -{{code}} 221 +{{code language="java"}} 231 231 Cluster name: HACLUSTER 232 232 233 233 WARNINGS: ... ... @@ -317,7 +317,7 @@ 317 317 318 318 Добавьте в него необходимые разрешения следующим образом: 319 319 320 -{{code}} 311 +{{code language="java"}} 321 321 # TYPE DATABASE USER ADDRESS METHOD 322 322 # "local" is for Unix domain socket connections only 323 323 local all all trust ... ... @@ -345,7 +345,7 @@ 345 345 346 346 Добавьте (или расскомментируйте) следующие строки: 347 347 348 -{{code}} 339 +{{code language="java"}} 349 349 listen_addresses = '*' 350 350 wal_level = replica 351 351 logging_collector = on ... ... @@ -498,7 +498,7 @@ 498 498 Для защиты разделяемых ресурсов и изоляции узла кластера при его неисправности существует механизм фенсинга (изоляции). 499 499 Чтобы вывести список доступных агентов изоляции //fence-agents// используйте команду: 500 500 501 -{{code}} 492 +{{code language="java"}} 502 502 sudo pcs stonith list 503 503 {{/code}} 504 504 ... ... @@ -505,7 +505,7 @@ 505 505 506 506 Для тестовых целей можно использовать следующую конфигурацию с агентом //external/ssh//: 507 507 508 -{{code}} 499 +{{code language="java"}} 509 509 sudo crm 510 510 configure 511 511 primitive st-ssh stonith:external/ssh params hostlist="node1 node2" ... ... @@ -527,7 +527,7 @@ 527 527 528 528 выглядит следующим образом: 529 529 530 -{{code}} 521 +{{code language="java"}} 531 531 Cluster Summary: 532 532 * Stack: corosync 533 533 * Current DC: node1 (version 2.0.3-4b1f869f0f) - partition with quorum ... ... @@ -644,7 +644,7 @@ 644 644 645 645 При отсутствии ошибок: 646 646 647 -{{code}} 638 +{{code language="java"}} 648 648 (unpack_config) notice: On loss of quorum: Ignore 649 649 {{/code}} 650 650 ... ... @@ -689,7 +689,7 @@ 689 689 |((( 690 690 (% class="content-wrapper" %) 691 691 ((( 692 -{{code}} 683 +{{code language="java"}} 693 693 sudo crm_resource --list-standards 694 694 {{/code}} 695 695 ))) ... ... @@ -696,7 +696,7 @@ 696 696 )))|((( 697 697 (% class="content-wrapper" %) 698 698 ((( 699 -{{code}} 690 +{{code language="java"}} 700 700 sudo crm ra classes 701 701 {{/code}} 702 702 ))) ... ... @@ -710,7 +710,7 @@ 710 710 (% style="text-align: left;" %) 711 711 доступные systemd агенты 712 712 713 -{{code}} 704 +{{code language="java"}} 714 714 sudo crm_resource --list-agents systemd 715 715 {{/code}} 716 716 ... ... @@ -717,7 +717,7 @@ 717 717 (% style="text-align: left;" %) 718 718 доступные lsb агенты 719 719 720 -{{code}} 711 +{{code language="java"}} 721 721 sudo crm_resource --list-agents lsb 722 722 {{/code}} 723 723 ))) ... ... @@ -724,11 +724,11 @@ 724 724 )))|((( 725 725 (% class="content-wrapper" %) 726 726 ((( 727 -{{code}} 718 +{{code language="java"}} 728 728 sudo crm ra list systemd 729 729 {{/code}} 730 730 731 -{{code}} 722 +{{code language="java"}} 732 732 sudo crm ra list lsb 733 733 {{/code}} 734 734 ))) ... ... @@ -739,7 +739,7 @@ 739 739 (% style="text-align: left;" %) 740 740 доступные OCF провайдеры 741 741 742 -{{code}} 733 +{{code language="java"}} 743 743 sudo crm_resource --list-ocf-providers 744 744 {{/code}} 745 745 ))) ... ... @@ -752,7 +752,7 @@ 752 752 (% style="text-align: left;" %) 753 753 доступные OCF агенты из проекта linux-ha провайдер heartbeat 754 754 755 -{{code}} 746 +{{code language="java"}} 756 756 sudo crm_resource --list-agents ocf:heartbeat 757 757 {{/code}} 758 758 ))) ... ... @@ -765,7 +765,7 @@ 765 765 (% style="text-align: left;" %) 766 766 доступный OCF провайдер для агента pgsql 767 767 768 -{{code}} 759 +{{code language="java"}} 769 769 sudo crm_resource --list-ocf-alternatives pgsql 770 770 {{/code}} 771 771 ))) ... ... @@ -778,7 +778,7 @@ 778 778 (% style="text-align: left;" %) 779 779 метаданные для класс:провайдер:агент 780 780 781 -{{code}} 772 +{{code language="java"}} 782 782 sudo crm_resource --show-metadata ocf:heartbeat:pgsql 783 783 {{/code}} 784 784 ))) ... ... @@ -788,7 +788,7 @@ 788 788 789 789 Логи работы компонентов кластера 790 790 791 -{{code}} 782 +{{code language="java"}} 792 792 sudo tail /var/log/pcsd/pcsd.log 793 793 sudo tail /var/log/corosync/corosync.log 794 794 sudo cat /var/log/pacemaker/pacemaker.log ... ... @@ -923,7 +923,7 @@ 923 923 924 924 Реальная конфигурация не сильно отличается от тестовой, хотя для некоторых фенсинг устройств может потребоваться больше атрибутов. Например, устройство отключения IBM RSA (например, с адресами 10.1.31.101 и 10.1.31.102) может быть настроено следующим образом: 925 925 926 -{{code}} 917 +{{code language="java"}} 927 927 sudo crm 928 928 configure 929 929 primitive st-ibmrsa-1 stonith:external/ibmrsa-telnet \ ... ... @@ -1187,7 +1187,6 @@ 1187 1187 1188 1188 \\ 1189 1189 1190 -{{expand title="... возможное развитие ..."}} 1191 1191 Автоматическую синхронизацию можно выполнять посредством утилиты //lsyncd//. Данная программа позволяет средствами //rsync// делать резервное копирование сразу же по появлению нового файла в указанной директории. По-сути, выполняется односторонняя синхронизация в реальном времени с помощью Lsyncd. 1192 1192 1193 1193 //Lsyncd// просматривает дерево локальных директорий с помощью интерфейса модуля мониторинга //inotify//. Он агрегирует и комбинирует события за несколько секунд и затем запускает процесс (или несколько процессов) синхронизации изменений. По умолчанию для этих целей используется //rsync//. Таким образом, //lsyncd// представляет собой легковесное решение для зеркалирования данных, сравнительно легкое в установке, не требующее специфичных файловых систем или блочных устройств, а также не влияющее на производительность файловой системы. ... ... @@ -1343,7 +1343,7 @@ 1343 1343 nano /etc/lsyncd.exclude 1344 1344 {{/code}} 1345 1345 1346 -{{code}} 1336 +{{code language="java"}} 1347 1347 *.tmp 1348 1348 *.bak 1349 1349 testfile.txt ... ... @@ -1371,7 +1371,6 @@ 1371 1371 op monitor depth="0" timeout="20s" interval="60s" 1372 1372 --group master-group 1373 1373 {{/code}} 1374 -{{/expand}} 1375 1375 1376 1376 ---- 1377 1377 ... ... @@ -1393,7 +1393,7 @@ 1393 1393 1394 1394 * Перевод узла //node1// в //standby// 1395 1395 1396 -{{code}} 1385 +{{code language="java"}} 1397 1397 sudo pcs node standby node1 1398 1398 {{/code}} 1399 1399 ... ... @@ -1404,7 +1404,7 @@ 1404 1404 * Запуск узла NODE1 , в //crm_mon -Afr// состояние узла STANDBY 1405 1405 * Очистка директории СУБД и файла блокировки 1406 1406 1407 -{{code}} 1396 +{{code language="java"}} 1408 1408 sudo rm /var/lib/pgsql/tmp/PGSQL.lock 1409 1409 sudo su - postgres 1410 1410 rm -rf /var/lib/postgresql/12/main/* ... ... @@ -1414,7 +1414,7 @@ 1414 1414 1415 1415 * Передача текущей копии БД с действующего узла в роли //Master// 1416 1416 1417 -{{code}} 1406 +{{code language="java"}} 1418 1418 pg_basebackup -U postgres -D /var/lib/postgresql/12/main -h 10.1.30.252 -X stream -P 1419 1419 exit 1420 1420 {{/code}} ... ... @@ -1423,7 +1423,7 @@ 1423 1423 1424 1424 * Сброс ошибок ресурсов 1425 1425 1426 -{{code}} 1415 +{{code language="java"}} 1427 1427 sudo pcs resource cleanup 1428 1428 {{/code}} 1429 1429 ... ... @@ -1431,7 +1431,7 @@ 1431 1431 1432 1432 * Выход узла NODE1 из standby, в //crm_mon -Afr// состояние узла //Slave//, изменение состояния реплики (параметр HA-pgsql-data-status в значении STREAMING|SYNC) 1433 1433 1434 -{{code}} 1423 +{{code language="java"}} 1435 1435 sudo pcs node unstandby node1 1436 1436 {{/code}} 1437 1437 ... ... @@ -1439,7 +1439,7 @@ 1439 1439 1440 1440 * Перевод узла NODE2 в //standby// 1441 1441 1442 -{{code}} 1431 +{{code language="java"}} 1443 1443 sudo pcs node standby node2 1444 1444 {{/code}} 1445 1445 ... ... @@ -1449,12 +1449,9 @@ 1449 1449 1450 1450 * Выход узла //node2// из //standby//, в //crm_mon -Afr// состояние узла //Slave//, изменение состояния реплики (параметр HA-pgsql-data-status в значении STREAMING|SYNC) 1451 1451 1452 -{{code}} 1441 +{{code language="java"}} 1453 1453 sudo pcs node unstandby node2 1454 1454 {{/code}} 1455 1455 1456 1456 1457 1457 \\ 1458 -{{/layout-cell}} 1459 -{{/layout-section}} 1460 -{{/layout}}