Changes for page Отказоустойчивый кластер Платформы НЕЙРОСС
Last modified by superadmin on 2026/06/24 21:40
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki.a dmin1 +XWiki.pugachevskaya_elena - Content
-
... ... @@ -82,7 +82,7 @@ 82 82 83 83 Вывод команды приведён в коде ниже: 84 84 85 -{{code language="java"}}85 +{{code}} 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 language="java"}}113 +{{code}} 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 language="java"}}119 +{{code}} 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 language="java"}}162 +{{code}} 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 language="java"}}230 +{{code}} 231 231 Cluster name: HACLUSTER 232 232 233 233 WARNINGS: ... ... @@ -317,7 +317,7 @@ 317 317 318 318 Добавьте в него необходимые разрешения следующим образом: 319 319 320 -{{code language="java"}}320 +{{code}} 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 language="java"}}348 +{{code}} 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 language="java"}}501 +{{code}} 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 language="java"}}508 +{{code}} 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 language="java"}}530 +{{code}} 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 language="java"}}647 +{{code}} 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 language="java"}}692 +{{code}} 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 language="java"}}699 +{{code}} 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 language="java"}}713 +{{code}} 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 language="java"}}720 +{{code}} 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 language="java"}}727 +{{code}} 728 728 sudo crm ra list systemd 729 729 {{/code}} 730 730 731 -{{code language="java"}}731 +{{code}} 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 language="java"}}742 +{{code}} 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 language="java"}}755 +{{code}} 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 language="java"}}768 +{{code}} 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 language="java"}}781 +{{code}} 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 language="java"}}791 +{{code}} 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 language="java"}}926 +{{code}} 927 927 sudo crm 928 928 configure 929 929 primitive st-ibmrsa-1 stonith:external/ibmrsa-telnet \ ... ... @@ -1187,6 +1187,7 @@ 1187 1187 1188 1188 \\ 1189 1189 1190 +{{expand title="... возможное развитие ..."}} 1190 1190 Автоматическую синхронизацию можно выполнять посредством утилиты //lsyncd//. Данная программа позволяет средствами //rsync// делать резервное копирование сразу же по появлению нового файла в указанной директории. По-сути, выполняется односторонняя синхронизация в реальном времени с помощью Lsyncd. 1191 1191 1192 1192 //Lsyncd// просматривает дерево локальных директорий с помощью интерфейса модуля мониторинга //inotify//. Он агрегирует и комбинирует события за несколько секунд и затем запускает процесс (или несколько процессов) синхронизации изменений. По умолчанию для этих целей используется //rsync//. Таким образом, //lsyncd// представляет собой легковесное решение для зеркалирования данных, сравнительно легкое в установке, не требующее специфичных файловых систем или блочных устройств, а также не влияющее на производительность файловой системы. ... ... @@ -1342,7 +1342,7 @@ 1342 1342 nano /etc/lsyncd.exclude 1343 1343 {{/code}} 1344 1344 1345 -{{code language="java"}}1346 +{{code}} 1346 1346 *.tmp 1347 1347 *.bak 1348 1348 testfile.txt ... ... @@ -1370,6 +1370,7 @@ 1370 1370 op monitor depth="0" timeout="20s" interval="60s" 1371 1371 --group master-group 1372 1372 {{/code}} 1374 +{{/expand}} 1373 1373 1374 1374 ---- 1375 1375 ... ... @@ -1391,7 +1391,7 @@ 1391 1391 1392 1392 * Перевод узла //node1// в //standby// 1393 1393 1394 -{{code language="java"}}1396 +{{code}} 1395 1395 sudo pcs node standby node1 1396 1396 {{/code}} 1397 1397 ... ... @@ -1402,7 +1402,7 @@ 1402 1402 * Запуск узла NODE1 , в //crm_mon -Afr// состояние узла STANDBY 1403 1403 * Очистка директории СУБД и файла блокировки 1404 1404 1405 -{{code language="java"}}1407 +{{code}} 1406 1406 sudo rm /var/lib/pgsql/tmp/PGSQL.lock 1407 1407 sudo su - postgres 1408 1408 rm -rf /var/lib/postgresql/12/main/* ... ... @@ -1412,7 +1412,7 @@ 1412 1412 1413 1413 * Передача текущей копии БД с действующего узла в роли //Master// 1414 1414 1415 -{{code language="java"}}1417 +{{code}} 1416 1416 pg_basebackup -U postgres -D /var/lib/postgresql/12/main -h 10.1.30.252 -X stream -P 1417 1417 exit 1418 1418 {{/code}} ... ... @@ -1421,7 +1421,7 @@ 1421 1421 1422 1422 * Сброс ошибок ресурсов 1423 1423 1424 -{{code language="java"}}1426 +{{code}} 1425 1425 sudo pcs resource cleanup 1426 1426 {{/code}} 1427 1427 ... ... @@ -1429,7 +1429,7 @@ 1429 1429 1430 1430 * Выход узла NODE1 из standby, в //crm_mon -Afr// состояние узла //Slave//, изменение состояния реплики (параметр HA-pgsql-data-status в значении STREAMING|SYNC) 1431 1431 1432 -{{code language="java"}}1434 +{{code}} 1433 1433 sudo pcs node unstandby node1 1434 1434 {{/code}} 1435 1435 ... ... @@ -1437,7 +1437,7 @@ 1437 1437 1438 1438 * Перевод узла NODE2 в //standby// 1439 1439 1440 -{{code language="java"}}1442 +{{code}} 1441 1441 sudo pcs node standby node2 1442 1442 {{/code}} 1443 1443 ... ... @@ -1447,7 +1447,7 @@ 1447 1447 1448 1448 * Выход узла //node2// из //standby//, в //crm_mon -Afr// состояние узла //Slave//, изменение состояния реплики (параметр HA-pgsql-data-status в значении STREAMING|SYNC) 1449 1449 1450 -{{code language="java"}}1452 +{{code}} 1451 1451 sudo pcs node unstandby node2 1452 1452 {{/code}} 1453 1453