OpenSCG рдХреЗ рд╣рд╛ рдлреЗрд▓рдУрд╡рд░ рд╕рдорд╛рдзрд╛рди "PGHA"ред PostgreSQL 9.3 рдХреЗ рд▓рд┐рдП рдорд╛рд╕реНрдЯрд░-рджрд╛рд╕ рд╕рдорд╛рдзрд╛рди

рдиреАрдЪреЗ рд╣рдо рдПрдХ рдкреЛрд╕реНрдЯ - рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЧрд╛рдЗрдб рд╕реЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдирд┐: рд╢реБрд▓реНрдХ рдЕрдиреБрд╡рд╛рдж рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкреЛрд╕реНрдЯрдЧреНрд░реИрд╕рдХреНрдпреВрдПрд╕ рдХреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ - рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдкреНрд░рддрд┐рдХреГрддрд┐ + pgBouncer + PGHA - рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рджреЛрд╖-рд╕рд╣рд┐рд╖реНрдгреБ рдорд╛рд╕реНрдЯрд░-рд╕реНрд▓реЗрд╡ рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрднрд╡ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВрдЧреЗред



pgHA


pgHA рдкрд░реНрд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдХреЛрдб failoverd.pl рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдЙрдкрдХрд░рдг рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред рдЕрдкрдиреЗ рдХрд╛рдо рдореЗрдВ pgbouncer рдФрд░ рдЕрдкрдиреА рдЦреБрдж рдХреА PostgresSQL рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ; рдЕрдЧреНрд░рдгреА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рддрд╛ рд╣реИ рдФрд░, рдпрджрд┐ рдпрд╣ рдЕрдиреБрдкрд▓рдмреНрдз рд╣реИ, рддреЛ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╣рд╛рдпрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдЦреЛрд▓рддрд╛ рд╣реИред рд╕рдВрд╕реНрдХрд░рдг 9.3 рд╕реЗ рдХрдо рд╕реЗ рдХрдо, рдпрд╣ PostgresSQL рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ README рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ, рдЬреЛ рдХрд┐ / .9.3/pgha/doc/ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИред



рд╣рдмреНрдмрд░рдмреНрд░ рдореЗрдВ, рдкрдЧрдкреВрд▓ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд░реЗрдЬрд╝рд▓реВрд╢рди рдЯреВрд▓ рд▓рдЧрддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореМрдЬреВрджрд╛ рдПрдХрд▓ рдЕрдиреБрднрд╡ рдЗрди рджреЛ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред



рд╕рдорд╛рдпреЛрдЬрди


рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рддреАрди рдорд╢реАрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ: рдПрдХ рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░, рдПрдХ рджрд╛рд╕ рдФрд░ рдПрдХ рд╕реНрдХреЗрд▓ рдиреЛрдбред рдЖрдк рдмрд╛рдж рдХреЗ рдмрд┐рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



1. рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗрдЯрдЕрдк


рджреЗрд╢реА рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╣реА рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ, рдЗрд╕ рдмрд╣рд╛рдиреЗ рдореИрдВ рдХреБрдЫ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░реВрдВрдЧрд╛:



2. pgBouncer рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛


pgBouncer PostgreSQL рдХреЗ рд▓рд┐рдП рдПрдХ рд╣рд▓реНрдХрд╛ рдкреБрд▓рд░, рдХрдиреЗрдХреНрд╢рди рдкреНрд░рдмрдВрдзрдХ рд╣реИред рдпрд╣рд╛рдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрдирдкреБрдЯ рдПрдХреНрд╕реЗрд╕ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╕реЗрдЯрд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореБрдЦреНрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рд╕рд╣рд╛рдпрдХ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд░рддрд╛ рд╣реИред PostgresSQL 9.3 рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рддред



  1. рдЖрдкрдХреЛ рдмрд╛рдЙрдВрд╕рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб - рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдиреЛрдб, рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдорд╢реАрди рдкрд░ рдмрдирд╛рдХрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░реЗрдЧрд╛ред



  2. рдЗрд╕рдХреЗ рдмрд╛рдж, 2 рдлрд╛рдЗрд▓реЗрдВ pgbouncer.ini.orig рдФрд░ pgbouncer.ini.failover рддреИрдпрд╛рд░ рдХрд░реЗрдВред рдпреЗ pgbouncer рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдФрд░ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ IP рд╣реЛрд╕реНрдЯ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИрдВ: рд╣реЛрд╕реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ IP рдФрд░ рдкреЛрд░реНрдЯ .orig рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ .failover рдореЗрдВ рд╕рд╣рд╛рдпрдХ рдкреЛрд░реНрдЯред рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ ред

    - рдЖрдкрдХреЛ рдПрдХ рдЦрд╛рд▓реА рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

    - рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ userlist.txt рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рддрд╣рдд pgbouncer рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдЗрд╕реЗ (dif_file рдлрд╝реАрд▓реНрдб) рдХрд╛ рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рднреВрд▓рдирд╛, рдПрдХ рдЙрджрд╛рд╣рд░рдг ./9.3/share/doc/pgbouncer рдореЗрдВ рдпрд╛ рдпрд╣рд╛рдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред

    - рдмрдирд╛рдП рдЧрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ pgbouncer рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдзрд┐рдХрд╛рд░ рд╣реЛрдВрдЧреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ admin_users рдлрд╝реАрд▓реНрдб рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВрдЧреЗ

    - рдЖрдкрдХреЛ рдЙрд╕ рдкреЛрд░реНрдЯ рдХреЛ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕ рдкрд░ pgbouncer (Listen_port) рд╕реНрдерд┐рдд рд╣реЛрдЧрд╛, рдФрд░ рдлрд┐рд░, рдЕрдиреНрдп рднрд░реЗ рд╣реБрдП рдлрд╝реАрд▓реНрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЗрдЪреНрдЫрд┐рдд рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдПрдХ рдирд┐рдпрдорд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ pgbouncer рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ... рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рджред



  3. Pgbouncer.ini рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ рдФрд░ рдЙрд╕рдореЗрдВ pgbouncer.ini.orig рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред рдпрд╣ рдПрдХ рдХрд╛рдордХрд╛рдЬреА рдлрд╝рд╛рдЗрд▓ рд╣реИ рдФрд░ pgbouncer.ini.orig рдпрд╛ pgbouncer.ini.failover рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЖрдЧреЗ рдЗрд╕рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдПрдХ рдЦрд╛рд▓реА pgbouncer.ini_old рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ pgha рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред



  4. рдмрд╛рдЙрдВрд╕рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдУрд░ рд╕реЗ pgbouncer рдЪрд▓рд╛рдПрдВ:

    pgbouncer -d //pgbouncer.ini







3. рдкреАрдЬреАрдПрдЪрдП рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛


  1. pgHA рдХреБрдЫ Perl рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдкреВрд░реНрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ CPAN рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

     yum install perl-CPAN perl -MCPAN -e 'install Module::Build::Compat' perl -MCPAN -e 'install Config::IniFiles' perl -MCPAN -e 'install DBI' perl -MCPAN -e 'install DBD::Pg' perl -MCPAN -e 'install Log::Log4perl' perl -MCPAN -e 'install Proc::Daemon' perl -MCPAN -e 'install Net::Ping' perl -MCPAN -e 'install Nagios::Plugin'
          
          





    рдПрдХ рд╣рд╛рдирд┐рд░рд╣рд┐рдд рддреНрд░реБрдЯрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ: рдпрдореНрд▓ 'рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реЛрдиреЗ рд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рд╕реНрдерд┐рддрд┐ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рд╣реЛрдЧреАред рдпрджрд┐ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИ, рддреЛ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

     cpan install Bundle::CPAN reload cpan exit
          
          





  2. рдЕрдЧрд▓рд╛, pgHA рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓ рддреИрдпрд╛рд░ рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рдЙрджрд╛рд╣рд░рдг ./9.3/pgHA/cfg/ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдпрд╛ рдпрд╣рд╛рдБ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ : example.conf рдФрд░ scottmVm.conf рдлрд╝рд╛рдЗрд▓реЗрдВ, рджреВрд╕рд░реЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:

    - pidFile рдХрд╣реАрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЪрдпрдирд┐рдд рдкрде рд╕реБрд▓рдн рд╣реИред

    - logConfig/9.3/pgHA/cfg/log4perl.conf рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд▓реЙрдЧрд┐рдВрдЧ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИрдВ

    - рдЯреНрд░рд┐рдЧрд░ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ редconf

    - [рдлреЗрд▓рдУрд╡рд░] рдЕрдиреБрднрд╛рдЧ рдХреЛ рд╣рдЯрд╛рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдХрдо рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛

    - [app01] рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЖрджреЗрд╢ рд╕рд╣рд┐рдд pgbouncer рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдпрджрд┐ рдорд╛рд╕реНрдЯрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрдиреЗрдХреНрд╢рди рд╣рдЯрд╛ рджреЗрдВ рдФрд░ рдлрд┐рд░ рдирдП рдореБрдЦреНрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП pgbouncer рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ:

     # Which databases should be part of failover fence_lock_dbs=postgres # pgBouncer command to pause / fence the db's fence_lock_command=kill # pgBouncer command to reload the config file fence_move_command=reload # pgBouncer command to unlock the db's fence_unlock_command=resume dbcheck="select 1"
          
          





    - [app01] рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, pgbouncer_db_user рдлрд╝реАрд▓реНрдб рдореЗрдВ, pgbouncer.ini рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ admin_users рдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

    - рдЖрдкрдХреЛ рдЕрдиреНрдп рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП



  3. рдлрд┐рд░ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ pgHA.log рдмрдирд╛рдПрдБ / рдСрдкреНрдЯ / pgHA / рд▓реЙрдЧ /ред рдпрд╣ рд╡рд╣ рдкрде рд╣реИ рдЬреЛ pgHA рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред



  4. рдЕрдЧреНрд░рдгреА рд╕рд░реНрд╡рд░ рдкрд░, рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдПрдВ ред/9.3/pgha/cfg/status_table.sql, рдпрд╛ рдпрд╣рд╛рдБ [рдорд╛рд╕реНрдЯрд░] рдЕрдиреБрднрд╛рдЧ рдореЗрдВ dbname рдлрд╝реАрд▓реНрдб рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВред



  5. Ssh рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреБрдВрдЬреА рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП pgHA рдЪрд▓рд╛рдПрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдмрд╛рдЙрдВрд╕рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░реЗрдЧрд╛:

    ssh-keygen -t rsa



    (рдПрдХ рдЦрд╛рд▓реА рдкрд╛рд╕рд╡рд░реНрдб рдмрдирд╛рдПрдБ)

    - ~ / .ssh / id_rsa.pub рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ

    - рдЕрдкрдиреА рдУрд░ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрд╛рдЙрдВрд╕рд░ рдХреЗ рд╕рд╛рде рдорд╢реАрди рдкрд░, рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:

    mkdir ~/.ssh





    chmod 0700 .ssh





    vi authorized_keys



    (рдкреВрд░реНрд╡ рдореЗрдВ рдХреЙрдкреА рдХреА рдЧрдИ рд╕рд╛рдордЧреНрд░реА id_rsa.pub, рдмрдЪрдд рдХреЗ рд╕рд╛рде рдкрд╛рд╕)

    chmod 0600 .ssh/authorized_keys







  6. рднрд╛рдЧреЛ рдкрдЧрд╣рд╛ред

    ./failoverd.pl -c //PgHA.conf --auto





    Failoverd.pl рдлрд╝рд╛рдЗрд▓ ./9.3/pgHA/bin рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред



  7. рдпрджрд┐ рдЪрд░рдг 6 рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ pgHA рдХреЛ рд░реЛрдХреЗрдВ

    ./failoverd.pl -c //PgHA.conf --stop





    рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, pgHA рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╡рд┐рдлрд▓рддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдЖрдкрдХреЛ рдлреЗрд▓рдУрд╡рд░рдб.рдкреНрд▓ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рд▓рд╛рдЗрди рекрекрей рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рдФрд░ рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддреБрдд рдХреЛрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ рекрекреи рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ ред рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

     # Start the failoverd monitoring process elsif ( $startWorker ) { print "\n\tInitializing... \n"; . . . # Once we have verified that the system is online, we need # to set the failover 'spring'. $logger->info("==Startup==: Arming Failover mechanism"); print "\t === Arming Failover mechanism === \n"; if ( SetSpring(%Config,$logger) != 1 ) # if ( 0 ) { $logger->info("Cannot set failover configuration, exiting..."); print "Cannot set failover configuration, exiting...\n"; exit(1); } . . .
          
          





    рдЕрдм, рдпрджрд┐ рдорд╛рд╕реНрдЯрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ pgHA рдкреНрд░рддрд┐рдХреГрддрд┐ рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧреА, рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдЦреЛрд▓реЗрдВ, рдирдП рдореБрдЦреНрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рд░реЛрдмреЛрдЯ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде pgbouncer рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ рдФрд░ рдЕрдкрдирд╛ рдХрд╛рдо рдкреВрд░рд╛ рдХрд░реЗрдВред рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЗрд╕рдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рд╣реИред



  8. рднрд╛рдЧреЛ рдкрдЧрд╣рд╛ред рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ред


рдкреБрдирд╢реНрдЪ


[рдлреЗрд▓рдУрд╡рд░] рд╕реЗрдХреНрд╢рди рдлреЗрд▓рдУрд╡рд░ рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХрдорд╛рдВрдб рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрд╕рдлрд▓ рдХреЛрдб рдореЗрдВ рдХреЛрдб рдХреЛ рди рдмрджрд▓реЗрдВред рд▓реЗрдХрд┐рди рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ - рдЬреЛ рдХрд┐ рдкрдЧрд╛рдЙрдВрд╕рд░ рд╕реЗрдЯрд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрджрд▓ рджреЗрддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдкреБрдирдГ рд▓реЛрдб рдХрд░рддреА рд╣реИ - рдФрд░ рдЗрд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИред



рдпрд╣ рд╕рдорд╛рдзрд╛рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреА рдЧрддрд┐ рдХреЛ рдХрдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрдЪреНрдЫреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде, pgbouncer рдЗрд╕реЗ рдмрдврд╝рд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдкреАрдЬреАрдПрдЪрдП рдХреЛрдб рдХреА рдЦреБрд▓реЗрдкрди рдХреЛ рднреА рдПрдХ рдкреНрд▓рд╕ рдорд╛рдирддрд╛ рд╣реВрдВ - рдпрд╣ рд╕рд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░рдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣реЛрд╕реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕, рдкреНрд░рддрд┐рдХреГрддрд┐ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛, рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдлрд╝реЙрдиреНрдЯ рдмрджрд▓рдирд╛ рдЖрджрд┐ред



8.4 рдХреЗ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдкреВрд░реНрд╡реЛрдХреНрдд рдмреНрд▓реЙрдЧ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред



All Articles