แกแขแแขแแแจแ แแแขแงแแแ, แ แแแแ แแแแฃแแแฅแแ PostgreSQL แจแแชแแแแแแแก แขแแแแ แแแขแแแแก แกแแแแแฎแก, แ แแขแแ แแแฎแแ แฉแแแแแแแก แแแแจแแแแแแแแแ แแ แ แ แแแฎแแ แกแแแแแแแ.
แฉแแแ แแแแฅแแก แซแแแแแ แแแขแแแ แแฃแแ แกแแ แแแกแ: 2,5 แแแแแแแ แแแแฎแแแ แแแแแ แแแแแก แแกแแคแแแแจแ, 50K+ แแฅแขแแฃแ แ แแแแฎแแแ แแแแแ แงแแแแแแฆแแฃแ แแ. แกแแ แแแ แแแ แแแแแแแแแฃแแแ แแแแแแแจแ, แแ แแแแแแแก แแ แ แ แแแแแแจแ: แแฃแแแแแแ แแฃแจแแแแก 100+ แกแฎแแแแแกแฎแแ แกแแ แแแ แ, แ แแแแแแแแแ แแแแฅแแแก 50 แแ แแก แแแแแชแแแแ แแแแแแแ.
แแแแแ แฃแแแแ แแแฌแแแ แแ แแก แแแแ แแแแแแแแฃแ แ แกแแฎแแแแฌแแคแ Java แแ แแแ แแแ, แ แแแแแแช แแแแ แฉแฃแแแแก แแฃแแแแ แแแแกแแแแขแฃแ แแแแจแแ แก แแแแแแขแแแ. แ แแแแกแแช แ แแแแแแแแ แแแแฎแแแ แแแแแ แแฃแจแแแแก แแแแแ แแแคแแแ แแ แแแ แแฃแแแ, แแกแแแ แงแแแแ แฎแแแแแแ แชแแแแแแแแแก แ แแแแฃแ แแ แแจแ, แ แแแแแ แฉแแแ แแแแแแฃแ แชแแแแแแแแก แแฌแแ แ แแแแแชแแแแ แแแแแจแ. แฉแแแ แแแแฅแแก แแแแฎแแแแแแ 10 แแแแกแ แแแแฎแแแแ แฌแแแจแ แฉแแแแก แแแแแชแแแแ แแแแแแแ. แ แแแแกแจแ แแแฅแกแแแแแฃแ แ แแแขแแแ แแแแก แแ แแก แฉแแแ แแฌแแ แ 80-100K แแแแฎแแแแแก แฌแแแจแ.
แ แแขแแ แแแแแแแแแ Redis-แแแ PostgreSQL-แแ
แแแแแแแแ แแแแแ, แฉแแแแ แกแแ แแแกแ แแฃแจแแแแแ Redis-แแแ, แแแกแแฆแแแแก แฆแแ แแแฃแแแแแก แแแฆแแแแแกแแแ, แ แแแแแแช แแแแฎแแแก แงแแแแ แแแแแชแแแก แกแแ แแแ แแก RAM-แจแ.
Redis-แแก แแแแแแแแ แแฎแแ แแแแ:
- แแแฆแแแ แ แแแแแ แแแแก แกแแฉแฅแแ แ, แ แแแแแ แงแแแแแคแแ แ แแแแฎแแแ แแแฎแกแแแ แแแแจแ;
- แกแแ แแแแ แแ แแ แ แแแแแแแชแแแก แกแแแแ แขแแแ.
Redis-แแก แฃแแ แงแแคแแแ แแฎแแ แแแแ แฉแแแแแแแก:
- แ แแแแฃแ แ แแแ แแแแแแแ แแ แแ แแก. แฉแแแ แแชแแแแ แแแแ แกแแแฃแแแชแแ แฉแแแแ แแแแแแแชแแแก แแแแแแ. แกแแแฌแฃแฎแแ แแ, แแก แงแแแแแแแแก แแ แแฃแจแแแแแ แแแ แแแ แแ แแแแแฎแแแแ แซแแแแแ แ แแฃแแ แแแแแก แแแฌแแ แแก.
- แแแแแชแแแแ แ แแแแแแแแ แจแแแฆแฃแแฃแแแ แแแฎแกแแแ แแแแก แ แแแแแแแแแ. แแแแแชแแแแ แแแแแแแแก แแแแ แแแ, แแแฎแกแแแ แแแ แแแแแ แแแแ แแ, แกแแแแแแแ, แฉแแแ แแแแแแแฌแงแแแแแ แแ แฉแแฃแแ แแแกแขแแแชแแแก แแแฎแแกแแแแแแแแแก, แ แแช AWS-แจแ แแแแแฎแแแก แฉแแแแ แกแแ แแแกแแก แจแแฉแแ แแแแก แแแกแขแแแชแแแก แขแแแแก แจแแกแแชแแแแแแ.
- แแฃแชแแแแแแแแ แแฃแแแแแแ แจแแแแ แฉแฃแแแแก แแแแแแ แจแแงแแแแแแแก แแแแ, แ แแแแแ. แฉแแแ แแแแฅแแก แซแแแแแ แแแแ แ แแแแแแแแแก แแแแฎแแแแ. แฉแแแแแแแก แแแงแแแแแแแก แแแขแแแแแฃแ แ แแแแแ 17-20 ms. 30-40 ms แแแแแแ, แฉแแแ แแแฆแแแ แฎแแแแ แซแแแ แแแกแฃแฎแแแก แฉแแแแ แแแแแแแชแแแก แแแแฎแแแแแแแ แแ แกแแ แแแกแแก แแแแ แแแแชแแแแ. แกแแแฌแฃแฎแแ แแ, แแก แแแฎแแ แฉแแแแแแ 2018 แฌแแแก แกแแฅแขแแแแแ แจแ, แ แแแแกแแช Redis-แแก แแ แ-แแ แแแ แจแแแแฎแแแแแ แ แแแแ แแแแแแแ แแแแฆแ แจแแงแแแแแแ แฉแแแฃแแแแ แแแแ 2-แฏแแ แแแขแ. แแ แแแแแแแก แแแแแกแแญแ แแแแ, แฉแแแ แจแแแแฉแแ แแ แกแแ แแแกแ แจแฃแแแฆแแกแแก แแแฃแแแแแแแ แขแแฅแแแแฃแ แ แแแแกแแฎแฃแ แแแแก แแแแ แแ แจแแแชแแแแแ แแ แแแแแแฃแ แ Redis แแแแแแแแแ แ.
- แแแ แขแแแแ แแแแแชแแแแ แจแแฃแกแแแแแแแแก แแแฆแแแ แแแแจแ แแชแแ แ แจแแชแแแแแแแก แจแแแแฎแแแแแจแแช แแ แแ แจแแแแแ แแแแ แแ แ แแแฎแแ แฏแแแก แแแแแก แแแฌแแ แแก แแ แแแแแชแแแแแแก แแแแแกแแกแฌแแ แแแแแ.
แแแแแแแแแแกแฌแแแแ แแแแฃแกแแแ แแ แแแแฎแแแแ, แ แแ แแแญแแ แแแแแแ แฃแคแ แ แแแกแแฎแแ แฎแแแแแแ แแแแแกแแแ, แแแ แแแแฃแ แ แขแ แแแแแฅแชแแแแแ แแ แแแแแแแ แแแแแแแแแแฃแแแแแ แแแขแแแขแฃแ แแแแแ. แฉแแแขแแ แ แแแแแแ, แแแแแแแแแแ แแ แแแแแ แแแ แแแแขแ แแ แแแ แฉแแ PostgreSQL.
แฉแแแ แฃแแแ 1,5 แฌแแแแ แแแแแแแแแแ แ แแฎแแ แแแแแชแแแแ แแแแแจแ แแ แแแแแแแขแแแแ แแแแแชแแแแแแก แแฎแแแแ แแชแแ แ แแแฌแแแ, แแแแขแแ แแฎแแ แแแฃแจแแแแ แแ แแแ แแฃแแแ Redis-แแแ แแ PostgreSQL-แแแ. แแแขแ แแแคแแ แแแชแแ แแแแแชแแแแ แแแแแแก แจแแ แแก แแแแแขแแแแกแ แแ แแแแแ แแแแก แแขแแแแแแก แจแแกแแฎแแ แแฌแแ แแแ
แ แแแแกแแช แแแ แแแแแ แแแแแฌแงแแ แแแซแ แแแแ, แฉแแแแ แแแแแแแชแแ แแฃแจแแแแแ แฃแจแฃแแแแ แแแแแชแแแแ แแแแแกแแแ แแ แฌแแแแแ แแแแฆแ Master Redis-แกแ แแ PostgreSQL-แแ. PostgreSQL แแแแกแขแแ แ แจแแแแแแแแ แแแแแกแขแ แแกแ แแ แแกแแแฅแ แแแฃแแ แ แแแแแแแชแแแก แแฅแแแ แ แแแแแแแกแแแ. แแกแ แแแแแแงแฃแ แแแแแ แแแแแชแแแแ แแแแแก แกแฅแแแ:
PgBouncer-แแก แแแแแ แแแ
แกแแแแ แฉแแแ แแแแซแ แแแแแแ, แแ แแแฃแฅแขแแช แแแแแ แแแแแแ: แแแแฎแแแ แแแแแแแก แ แแแแแแแแ แแ แกแแ แแแ แแแแก แ แแแแแแแแ, แ แแแแแแแช แแฃแจแแแแแแแ PostgreSQL-แแแ, แแแแแแ แแ แแ แฉแแแ แแแแแฌแงแแ แแแแจแแ แแแแก แแแแแแแแแ. PostgreSQL แฅแแแแก แชแแแแ แแ แแชแแกแก แแแแแแฃแแ แแแแจแแ แแกแแแแก แแ แแแแฎแแแ แก แ แแกแฃแ แกแแแก. แแฅแแแ แจแแแแซแแแแ แแแแแ แแแ แแแแจแแ แแแแก แ แแแแแแแแ แแแ แแแแฃแ แแแแแแขแแแแ, แฌแแแแแฆแแแแ แจแแแแฎแแแแแจแ แแ แแก แจแแกแแซแแแแแแแ แแแแฆแแ แแแแแชแแแแ แแแแแก แแ แแแแขแแแแแฃแ แ แจแแกแ แฃแแแแ. แแกแแ แกแแขแฃแแชแแแจแ แแแแแแฃแ แ แแแ แแแแขแ แแฅแแแแ แแแแจแแ แแก แแแแแฏแแ แแก แแ แฉแแแ, แ แแแแแแช แแแแแแแ แแแแแก แฌแแ.
แฉแแแ แแแฅแแแแ แแ แ แแแ แแแแขแ แแแแจแแ แแก แแแแแฏแแ แแกแแแแก: Pgpool แแ PgBouncer. แแแแ แแ แแแ แแแแก แแ แแฅแแก แแแแแชแแแแ แแแแแกแแแ แแฃแจแแแแแก แขแ แแแแแฅแชแแแก แ แแแแแ, แแแแขแแ แแแแ แฉแแแ PgBouncer.
แฉแแแ แแแแแงแแแแ แแฃแจแแแแแก แจแแแแแแ แกแฅแแแ: แฉแแแแ แแแแแแแชแแ แฌแแแแแ แแ แ PgBouncer-แก, แ แแแแแก แฃแแแ แแแแก PostgreSQL แแแกแขแแ แแแ แแ แงแแแแแ แแแกแขแแ แแก แฃแแแ แแ แแก แแกแแแฅแ แแแฃแแ แ แแแแแแแชแแแ แแ แแ แ แแแแแแ.
แแแแแแ แแฃแแแ, PostgreSQL-แจแ แแแแแชแแแแแแก แแแแแแ แ แแแแแแแแแก แแแ แจแแแแแแฎแแแแแ แแ แแแแแชแแแแ แแแแแกแแแ แแฃแจแแแแแก แกแแฉแฅแแ แ แฉแแแแแแแก แแแแจแแแแแแแแแ แแงแ, แแแแขแแ แแแแแฌแงแแ PostgreSQL-แแก แแแแแฌแแแแแ แแแแแแแชแแแก แแแแแแ. แแแแแ แแฆแฌแแ แแแ แกแฅแแแ แแแแกแแแแก แจแแแแ แแแแ แแแกแแฎแแ แฎแแแแแแ: แแฎแแแ PostgreSQL แคแ แแแแแแขแแก แแแแแขแแแแกแแก แกแแแแแ แแกแแ PgBouncer-แแก แแแแคแแแฃแ แแชแแแก แแแแแฎแแแแ แแ แแแแแแแชแแแก แจแแฃแซแแแ แแแฃแงแแแแแแแแ แแแฃแจแแแก แแฎแแ แคแ แแแแแแขแแแ.
PgBouncer-แแก แฌแแ แฃแแแขแแแแแแ
แแก แกแฅแแแ แแฃแจแแแแแ แแ แแแแแแขแแแแ, แ แแแแกแแช แแ แแแแแ แแ PgBouncer แแแกแขแแแชแแ แแแ แแแแชแแแแ. แฉแแแ แแแ แ AWS-แจแ, แกแแแแช แงแแแแ แแแกแขแแแชแแ แแฃแจแแแแก แแแแ แแขแฃแ แแแ, แ แแแแแแช แแแ แแแแฃแแแ แแแแแแ. แแกแแ แจแแแแฎแแแแแแจแ, แแแกแขแแแชแแ แฃแแ แแแแ แแแแแแแก แแฎแแ แแแแ แแขแฃแ แแแ แแ แแกแแ แแฃแจแแแแก. แแก แแแฎแแ PgBouncer-แแแ, แแแแ แแ แแก แแแฃแฌแแแแแแแ แแแฎแแ. แแ แแแชแแแแก แจแแแแแ แแงแ แฉแแแแ แกแแ แแแกแแก แแแฃแฌแแแแแแแแ 25 แฌแฃแแแก แแแแแแแแแแแจแ. AWS แ แแแแแแแแแชแแแก แฃแฌแแแก แแแแฎแแแ แแแแแก แแฎแ แแแแ แแแแแแขแแแแก แแแแแงแแแแแแก แแกแแแ แกแแขแฃแแชแแแแแกแแแแก, แ แแช แแ แแ แแแกแแแแก แฉแแแแก แฅแแแงแแแแจแ แแ แแงแ แแแแแ แแแแ.
แแแแก แจแแแแแ, แฉแแแ แกแแ แแแแฃแแแ แแแคแแฅแ แแ PgBouncer แแ PostgreSQL แแแแกแขแแ แแแแก แจแแชแแแแแก แขแแแแ แแแขแแแแแ, แ แแแแแ แแกแแแแกแ แกแแขแฃแแชแแ แจแแแซแแแแ แแแฎแแแก แแแแแกแแแแ แแแแแแแแแ แฉแแแแก AWS แแแแแ แแจแแ.
แฉแแแ แจแแแฅแแแแแ PgBouncer แจแแชแแแแแก แขแแแแ แแแขแแแแก แกแฅแแแ แจแแแแแแแแแ แแ: แงแแแแ แแแแแแแชแแแก แกแแ แแแ แ แฌแแแแแ Network Load Balancer-แก, แ แแแแแก แฃแแแ แแ แแก แแ แ PgBouncer. แแแแแแฃแแ PgBouncer แฃแงแฃแ แแแก แแแแแแฃแแ แคแ แแแแแแขแแก แแ แแกแ แแ แแแแแ PostgreSQL แแแกแขแแ แก. แแฃ AWS แแแกแขแแแชแแแก แแแแ แแ แแแแแแแ แแแแ, แแแแแ แขแ แแคแแแ แแแแแแแกแแแแ แแแแแ แกแฎแแ PgBouncer-แแก แแแจแแแแแแ. Network Load Balancer-แแก แแแฃแแแ แแแแแ แแแฌแแแแแฃแแแ AWS-แแก แแแแ .
แแก แกแฅแแแ แแแแแแแแแก แแฎแแแ PgBouncer แกแแ แแแ แแแแก แแแแแขแแแแก.
แจแแฅแแแแแ PostgreSQL Failover แแแแกแขแแ แ
แแ แแ แแแแแแแก แแแแแญแ แแกแแก แแแแแแฎแแแแ แกแฎแแแแแกแฎแแ แแแ แแแแขแแแ: แแแแแแแฌแแ แ failover, repmgr, AWS RDS, Patroni.
แแแแแแแฌแแ แ แกแแ แแแขแแแ
แแแ แจแแฃแซแแแแ แแแแแแแ แแแแ แแแกแขแแ แแก แแฃแจแแแแแก แแ, แแฃ แแก แแแ แแแฎแแ แฎแแ, แแแแฌแแแแฃแ แแ แ แแแแแแ แแแกแขแแ แแ แแ แแแแแแฎแแแ PgBouncer แแแแคแแแฃแ แแชแแ.
แแ แแแแแแแแก แฃแแแ แแขแแกแแแ แแ แแก แแแฅแกแแแแแฃแ แ แกแแแแ แขแแแ, แ แแแแแ แแฅแแแ แแแแแ แฌแแ แ แกแแ แแแขแแแก แแ แแฃแกแขแแ แแแกแแแ, แ แแแแ แแฃแจแแแแก แแกแแแ.
Cons:
- แจแแกแแซแแแ, แแกแขแแขแ แแ แแแแแแแแ แแงแ, แกแแแแแแแ แแ, แฅแกแแแแก แฃแแแแ แแกแแแ แจแแแซแแแแ แแแแฎแแแ แแงแ. Failover, แ แแแแแแช แแ แแชแแแ แแแแก แจแแกแแฎแแ, แแแแฃแแฏแแแแกแแแก แ แแแแแแแก แแแกแขแแ แแ, แฎแแแ แซแแแแ แแกแขแแขแ แแแแแ แซแแแแแก แแฃแจแแแแแก. แจแแแแแแ, แฉแแแ แแแแแฆแแแ แแ แกแแ แแแ แก แแแกแขแแ แแก แ แแแจแ แแ แแ แแแชแแ, แ แแแแ แแแแแแแก แแฅแแก แฃแแฎแแแกแ แแแแแชแแแแแ. แแ แกแแขแฃแแชแแแก แแกแแแ แฃแฌแแแแแแ แแแงแแคแแ แขแแแแก;
- แฃแแแกแฃแฎแแ แแแแ แฉแแ. แฉแแแแก แแแแคแแแฃแ แแชแแแจแ, แแแกแขแแ แ แแ แแ แแ แ แแแแแแ, แแแแแ แแแแก แจแแแแแ, แ แแแแแแ แแแแแแแก แแแกแขแแ แแ แแ แแฆแแ แแแแฅแแก แ แแแแแแ, แแแแขแแ แฎแแแแ แฃแแแ แแแแแแแขแแ แแฎแแแ แ แแแแแแ;
- แฉแแแ แแแญแแ แแแแ แแแแแขแแแแแ แแแแแขแแ แแแแ failover แแแแ แแชแแแแ, แฎแแแ แฉแแแ แแแแฅแแก 12 PostgreSQL shards, แ แแช แแแจแแแแก, แ แแ แฉแแแ แฃแแแ แแแแแแแแ แแแ 12 แแแแกแขแแ แก. แคแ แแแแแแขแแแแก แ แแแแแแแแแก แแแขแแแแกแแแ แแ แแแ, แแฅแแแ แแกแแแ แฃแแแ แแแฎแกแแแแแ แคแแแแแแแ แแก แแแแแฎแแแแ.
แแแแแแแฌแแ แ แแแ แชแฎแ แซแแแแแ แ แแฃแแแ แแแแแแงแฃแ แแแ แแ แแ แ แขแ แแแแแแฃแ แแฎแแ แแแญแแ แแก แแแแแฎแแแก. แแ แแ PostgreSQL แแแแกแขแแ แแ, แแก แแฅแแแแ แฃแแแ แขแแแแกแ แแแ แแแแขแ, แแแแ แแ แแก แแ แแแกแจแขแแแแ แแแก, แแแแขแแ แฉแแแแแแแก แแ แแ แแก แจแแกแแคแแ แแกแ.
Repmgr
Replication Manager PostgreSQL แแแแกแขแแ แแแแกแแแแก, แ แแแแแกแแช แจแแฃแซแแแ แแแ แแแก PostgreSQL แแแแกแขแแ แแก แแแฅแแแแแแ. แแแแแแ แแฃแแแ, แแแก แแ แแฅแแก แแแขแแแแขแฃแ แ แฃแแแแ แแกแแแ แงแฃแแแแแ, แแแแขแแ แกแแแฃแจแแแกแแแแก แแฅแแแ แฃแแแ แแแฌแแ แแ แกแแแฃแแแ แ "แจแแคแฃแแแ" แแแ แฎแกแแแ แแก แแแแแ. แแกแ แ แแ, แงแแแแแคแแ แ แจแแแซแแแแ แแแแแ แฃแคแ แ แ แแฃแแ แแฆแแแฉแแแแก, แแแแ แ แแแแแแแฌแแ แ แกแแ แแแขแแแ, แแกแ แ แแ, แฉแแแ แแ แช แแ แแชแแแแ Repmgr.
AWS RDS
แแฎแแ แก แฃแญแแ แก แงแแแแแคแแ แก, แ แแช แฉแแแ แแแญแแ แแแแ, แแชแแก แ แแแแ แแแแแแแแก แกแแ แแแแ แแ แแกแแแแ แแ แแแแ แฉแฃแแแแก แแแแจแแ แแแแก แแฃแแก. แแแก แแฅแแก แแแขแแแแขแฃแ แ แแแแแ แแแ: แ แแแแกแแช แแแกแขแแ แ แแแแแแ, แ แแแแแแ แฎแแแแ แแฎแแแ แแแกแขแแ แ แแ AWS แชแแแแก dns แฉแแแแฌแแ แก แแฎแแ แแแกแขแแ แแ, แฎแแแ แ แแแแแแ แจแแแซแแแแ แแแแแแแกแแแก แกแฎแแแแแกแฎแแ AZ-แจแ.
แแแแแแแแแแแแแ แแแแชแแแก แฏแแ แแแแก แแแ แแฅแขแแ แแแแก แแแแแแแแแแก. แ แแแแ แช แแแฎแแแฌแแแ แแแ แแแฃแแแ แแแแก แแแแแแแแ: แฉแแแแก แแแกแขแแแชแแแแก แแฅแแ แจแแแฆแฃแแแแแ tcp แแแแจแแ แแแแกแแแแก, แ แแช, แกแแแฌแฃแฎแแ แแ, แจแแฃแซแแแแแแแ RDS-แจแ:
net.ipv4.tcp_keepalive_time=10
net.ipv4.tcp_keepalive_intvl=1
net.ipv4.tcp_keepalive_probes=5
net.ipv4.tcp_retries2=3
แแแ แแ แแแแกแ, AWS RDS แแแแฅแแแก แแ แฏแแ แซแแแ แแ, แแแแ แ แฉแแแฃแแแแ แแแ แแแกแขแแแชแแแก แคแแกแ, แ แแช แแ แแแแแฌแงแแแขแแก แแแขแแแแแแก แแแแแแ แ แแแแแแ แแงแ.
แแแขแ แแแ
แแก แแ แแก แแแแแแแก แจแแแแแแ PostgreSQL-แแก แกแแแแ แแแแแ แแแ แแ แแแแฃแแแแขแแชแแแ, แแแขแแแแขแฃแ แ แจแแชแแแแแ แแ แฌแงแแ แ แแแแแ github-แแ.
แแแขแ แแแแก แแแแแแแแ แแฎแแ แแแแ:
- แแแแแแฃแแ แแแแคแแแฃแ แแชแแแก แแแ แแแแขแ แ แแฆแฌแแ แแแแ, แแแกแแแแแแ, แ แแแแ แแฃแจแแแแก;
- แแแขแแแแขแฃแ แ แจแแคแแ แฎแแแ แแฃแจแแแแก แงแฃแแแแแ;
- แแแฌแแ แแแ แแแแแแจแ แแ แ แแแแแ แฉแแแ แแแแแแ แแฌแแ แ แแแแ แก แแแแแแจแ, แแแแแแแแแแแแแแ แแ แแแแแแแแแก แแแแแแ แแแ แแ, แจแแกแแซแแแ, แแ แแแฅแขแแก แแแแแแแแ แแแแจแแช แแแแแฎแแแ แแ;
- แกแ แฃแแแ แแแ แแแแก PostgreSQL, แกแแจแฃแแแแแแก แแแซแแแแ แแ แแแ แแฃแแแ แจแแชแแแแแ แแแแคแแแฃแ แแชแแ แแแแกแขแแ แแก แงแแแแ แแแแแซแแ แแ แแฃ แกแแญแแ แแ แแแแกแขแแ แแก แแแแแขแแแ แแแ แแฎแแแ แแแแคแแแฃแ แแชแแแก แแแแแกแแงแแแแแแแ, แแแจแแ แแก แจแแแซแแแแ แแแแแแแ แแแก Patroni-แแก แแแแแงแแแแแแ.
Cons:
- แแแแฃแแแแขแแชแแแแแ แแ แแ แแก แแแแแแ, แแฃ แ แแแแ แฃแแแ แแแฃแจแแแ PgBouncer-แแแ แกแฌแแ แแ. แแฃแแชแ แซแแแแแ แแแแก แแแแฃแก แแฃแฌแแแ, แ แแแแแ แแแขแ แแแแก แแแแชแแแแ PostgreSQL-แแก แแแ แแแ แแ แ แแแแ แฌแแแ แแแขแ แแแแแ แแแแจแแ แแแ, แแก แฃแแแ แฉแแแแ แแ แแแแแแแ;
- แแแขแ แแแแก แแแ แแแชแฃแแแแแแแ แแแแฎแแ แชแแแแแแแก แ แแแแแแแแ แแแแแแแแแ, แแแจแแ แ แแชแ แแฃแแแแแ แแแแฎแแ แชแแแแแแแก แแแแ แ แแแแแแแแแ.
แจแแแแแแ, แฉแแแ แแแแ แฉแแแ Patroni, แ แแแ แจแแแแแฅแแแ failover แแแแกแขแแ แ.
แแแขแ แแแแก แแแแฎแแ แชแแแแแแแก แแ แแชแแกแ
Patroni-แแแ แแแฅแแแแ 12 PostgreSQL แคแ แแแแแแขแ แแ แแ แซแแ แแแแแ แแ แแ แแ แแกแแแฅแ แแแฃแแ แ แแแแแแแชแแแก แแแแคแแแฃแ แแชแแแจแ. แแแแแแแชแแแก แกแแ แแแ แแแ แจแแแแแแแแ แแแแแชแแแแ แแแแแแแ Network Load Balancer-แแก แกแแจแฃแแแแแแ, แ แแแแแก แฃแแแ แแงแ แแ แ แแแกแขแแแชแแ PgBouncer-แแ แแ แแแ แฃแแแ แงแแแแ PostgreSQL แกแแ แแแ แ.
Patroni-แแก แแแแกแแฎแแ แชแแแแแแแแ แแแแแญแแ แแ แแแแแฌแแแแแฃแแ แกแแชแแแแก แแแแกแขแแ แแก แแแแคแแแฃแ แแชแแแก แจแแ แฉแแแ. แแแขแ แแแ แแฃแจแแแแก แแแแแฌแแแแแฃแแ แแแแคแแแฃแ แแชแแแก แจแแแแฎแแแก แกแแกแขแแแแแแแ, แ แแแแ แแชแแ etcd, Zookeeper, Consul. แฉแแแ แฃแแ แแแแ แแแแฅแแก แกแ แฃแแคแแกแแแแแ แกแแแแแกแฃแแ แแแแกแขแแ แ แแแแแ แแ, แ แแแแแแช แแฃแจแแแแก Vault-แแแ แแ แแแ แแ แแแก แแฆแแ แแแงแแแแแ. แจแแกแแแแจแแแแ แแแแแแ, แ แแ แแแแฌแงแแ แแแแกแฃแแแก แแแแแงแแแแแ แแแแแจแแฃแแแแแกแแแแแ .
แ แแแแ แแฃแจแแแแก แแแขแ แแแ แแแแกแฃแแแแ
แแแแฅแแก แแแแกแฃแแแก แแแแกแขแแ แ, แ แแแแแแช แจแแแแแแ แกแแแ แแแแแซแแกแแแ แแ แแแขแ แแแแก แแแแกแขแแ แ, แ แแแแแแช แจแแแแแแ แแแแแ แแกแ แแ แ แแแแแแแกแแแ (แแแขแ แแแจแ แแแขแแแก แแแแกแขแแ แแก แแแแแ แ แฐแฅแแแ, แแแแแแก แแ แ แแแแแแ). แแแขแ แแแแก แแแแกแขแแ แแก แแแแแแฃแแ แแแกแขแแแชแแ แแฃแแแแแแ แฃแแแแแแแก แแแคแแ แแแชแแแก แแแแกแขแแ แแก แแแแแแแ แแแแแก แจแแกแแฎแแ แแแแกแฃแแก. แแแแขแแ, แแแแกแฃแแแกแแแ แงแแแแแแแแก แจแแแแซแแแแ แแแแแแ แแแขแ แแแแก แแแแกแขแแ แแก แแแแแแแแ แ แแแแคแแแฃแ แแชแแ แแ แแแ แแ แแก แแ แแแแแแขแจแ แแแแแ แ.
แแแขแ แแแแก แแแแกแฃแแแแ แแแกแแแแแจแแ แแแแแ แกแแแแแ แแกแแ แแคแแชแแแแฃแ แ แแแแฃแแแแขแแชแแแก แจแแกแฌแแแแ, แกแแแแช แแแแฅแแแแแ, แ แแ แแฅแแแ แฃแแแ แแแฃแแแแแ แฐแแกแขแ http แแ https แคแแ แแแขแจแ, แแแแกแแ แแแฎแแแแแ, แแฃ แ แแแแ แแแฃแจแแแแ แแแแกแฃแแแแ แแ แแแแจแแ แแก แกแฅแแแ, แกแฃแ แแแแแกแแแแแ :
host: the host:port for the Consul endpoint, in format: http(s)://host:port
scheme: (optional) http or https, defaults to http
แ แแแแ แช แฉแแแก แแแ แขแแแแ, แแแแ แแ แแฅ แฎแแคแแแแแแ แแฌแงแแแ. แแแแกแฃแแแแ แแ แแแ, แฉแแแ แแแฃแจแแแแ แฃแกแแคแ แแฎแ แแแแจแแ แแ https-แแก แกแแจแฃแแแแแแ แแ แฉแแแแ แแแแจแแ แแก แแแแคแแแฃแ แแชแแ แแกแ แแแแแแงแฃแ แแแ:
consul:
host: https://server.production.consul:8080
verify: true
cacert: {{ consul_cacert }}
cert: {{ consul_cert }}
key: {{ consul_key }}
แแแแ แแ แแก แแ แแฃแจแแแแก. แกแขแแ แขแแแแก แแ แแก แแแขแ แแแ แแแ แแแฃแแแแจแแ แแแแ แแแแกแฃแแก, แ แแแแแ แแแแแช แชแแแแแแก http แแแแแ แแก.
แแแขแ แแแแก แฌแงแแ แแก แแแแ แแแแฎแแแ แ แแ แแแแแแแก แแแแแแ แแแแจแ. แแแ แแแ, แ แแ แแแแแแจแ แฌแแ แแ. แแแแแแแก, แ แแ แฐแแกแขแแก แแแ แแแแขแ แ แแ แแแแแ แแ แแ แแ แแก แแแแแแแแแแแฃแแ แแ แแ แแขแแแแแ แฃแแแ แแงแแก แแแแแแแแฃแแ แกแฅแแแแจแ. แแกแ แแแแแแงแฃแ แแแ แฉแแแแแแแก แแแแกแฃแแแแ แแฃแจแแแแแก แกแแแฃแจแแ แแแแคแแแฃแ แแชแแแก แแแแแ:
consul:
host: server.production.consul:8080
scheme: https
verify: true
cacert: {{ consul_cacert }}
cert: {{ consul_cert }}
key: {{ consul_key }}
แแแแกแฃแ-แแแ แแ
แแกแ แ แแ, แฉแแแ แแแแ แฉแแแ แกแแชแแแ แแแแคแแแฃแ แแชแแแกแแแแก. แแฎแแ แฉแแแ แฃแแแ แแแแแแแ, แ แแแแ แจแแชแแแแก PgBouncer แแแแแก แแแแคแแแฃแ แแชแแแก Patroni แแแแกแขแแ แจแ แแแแแ แแก แจแแชแแแแกแแก. แแ แแแแฎแแแแ แแแกแฃแฎแ แแแแฃแแแแขแแชแแแจแ แแ แแ แแก, แ แแแแแ. แแฅ, แแ แแแชแแแจแ, PgBouncer-แแแ แแฃแจแแแแ แแ แแ แแก แแฆแฌแแ แแแ.
แแแแแกแแแแแก แซแแแแแจแ แแแแแแแ แกแขแแขแแ (แกแแแฌแฃแฎแแ แแ แแ แแแฎแกแแแก แกแแแแฃแ แ), แกแแแแช แแฌแแ แ, แ แแ ะกonsul-template แซแแแแแ แแแแฎแแแ แ PgBouncer-แแกแ แแ Patroni-แแก แแแฌแงแแแแแแแจแ. แแแแ แแแแแซแฃแแแแก แแแแแแแแแแแแ, แ แแแแ แแฃแจแแแแก Consul-template.
แแฆแแแฉแแแ, แ แแ Consul-template แแฃแแแแแแ แแแแแขแ แแแแแก PostgreSQL แแแแกแขแแ แแก แแแแคแแแฃแ แแชแแแก แแแแกแฃแแจแ. แ แแแแกแแช แแแแแ แ แแชแแแแแ, แแก แแแแแแฎแแแแก PgBouncer-แแก แแแแคแแแฃแ แแชแแแก แแ แแแแแแแแก แแ แซแแแแแแก แแแก แแแแแขแแแ แแแแกแแแแก.
แจแแแแแแแก แแแแ แแแแฃแกแ แแก แแ แแก, แ แแ แแก แแแแฎแแแ แ แแแแ แช แแแแ, แแแแขแแ แแฎแแแ แคแ แแแแแแขแแก แแแแแขแแแแกแแก แกแแแแแ แแกแแ แแฎแแแ commit-แแก แแแแแแแแ แแ แจแแแแแแแก แแแขแแแแขแฃแ แแ แแแแแฎแแแแ, แแแคแ แแกแขแ แฃแฅแขแฃแ แแก แ แแแแ แช แแแแแก แแ แแแชแแแแก แแฎแแ แแแญแแ แแ.
แแฎแแแ แแ แฅแแขแแฅแขแฃแ แ แแแขแ แแแแแ แแ แแแ
แจแแแแแแ แแแแแฆแแ แแฃแจแแแแแก แจแแแแแแ แกแฅแแแ:
แงแแแแ แแแแแแแชแแแก แกแแ แแแ แ แฌแแแแแ แแแแแแกแแ แก โ แแแก แฃแแแ แแ แแก PgBouncer-แแก แแ แ แแแกแขแแแชแแ โ แแแแแแฃแ แแแกแขแแแชแแแแ, แแฎแกแแแแ Consul-template, แ แแแแแแช แแแแแขแ แแแแแก แแแแแแฃแแ Patroni แแแแกแขแแ แแก แกแขแแขแฃแกแก แแ แแแแแขแ แแแแแก PgBouncer แแแแคแแแฃแ แแชแแแก แจแแกแแแแแแกแแแแก, แ แแแแแแช แแแแแแแแก แแแแฎแแแแแแก แแแแแแแแแแ แแแแแ แแแ. แแแแแแฃแแ แแแแกแขแแ แแก.
แฎแแแแ แขแแกแขแแ แแแ
แฉแแแ แแแแฃแจแแแ แแก แกแฅแแแ แแชแแ แ แกแแขแแกแขแ แแแ แแแแแ แแแจแแแแแแแ แแ แจแแแแแแฌแแแ แแแขแแแแขแฃแ แ แแแแแ แแแแก แแแฅแแแแแแ. แแแฎแกแแแก แแแคแ, แแแแแแขแแแแก แกแขแแแแ แ แแ แแ แแ แแก แแขแแแแแก แแแแแ แ โแแแแแแกโ. AWS-แจแ แแก แแกแแแแแ แแแ แขแแแแ, แ แแแแ แช แแแกแขแแแชแแแก แแแแแ แแแ แแแแกแแแแก แกแแจแฃแแแแแแ.
แกแขแแแแ แ แฃแแแ แแแแ แฃแแแ 10-20 แฌแแแจแ, แจแแแแแ แแ แแกแแ แแแ แแแแฃแ แแ แแแแฌแงแ แแแซแ แแแแ. แแก แแแจแแแแก, แ แแ Patroni แแแแกแขแแ แแ แกแฌแแ แแ แแแฃแจแแแ: แแแ แจแแชแแแแ แแแแแ แ, แแแฃแแแแแแ แแแคแแ แแแชแแ ะกonsul-แก แแ ะกonsul-template-แแ แแแจแแแแ แแแฆแ แแก แแแคแแ แแแชแแ, แจแแชแแแแ PgBouncer แแแแคแแแฃแ แแชแแ แแ แแแฃแแแแแแ แแแแแขแแแ แแแแก แแ แซแแแแแ.
แ แแแแ แแแแแแ แฉแแ แแแฆแแแ แแแขแแแ แแแแก แฅแแแจ แแ แจแแแแแแ แฉแฃแแแ แจแแคแแ แฎแแแแก แแ แ แแแแแแแแฃแ แ?
แงแแแแแคแแ แ แแฃแจแแแแก แแแแแแฃแ แแ! แแแแ แแ แแ แแก แแฎแแแ แแแแฎแแแแ: แ แแแแ แแแฃแจแแแแแก แแแ แแแฆแแแ แแแขแแแ แแแแก แแแ แแแแแจแ? แ แแแแ แกแฌแ แแคแแ แแ แฃแกแแคแ แแฎแแ แแแแแคแแ แแแแแ แงแแแแแคแแ แ แฌแแ แแแแแแจแ?
แกแแขแแกแขแ แแแ แแแ, แ แแแแแแแช แฉแแแ แแแขแแ แแแ แแแขแแแ แแแแก แขแแกแขแแ แแแแก, แแแแฎแแแ แแแ แฃแแแกแฃแฎแแก แแแ แแแ แแแแฎแแแก. แแแ แกแ แฃแแแแ แแแแแขแฃแ แแ แฌแแ แแแแแแก แแ แฅแแขแแฅแขแฃแ แแก แแแแแกแแแ แแกแแ แแ แฌแแ แแแฅแแแแก แขแแกแขแแก แแแแแชแแแแแก, แ แแแแแแแช แแแแฎแแแแแแ แขแแแแ แฌแแ แแแแแแก แแแชแฃแแแแแ. แฉแแแ แแแแแแฌแงแแแขแแ แฃแแ แแแแ โแแแแแแแโ แแ แ-แแ แแ PostgreSQL แแกแขแแขแ แขแแกแขแแก แแ แแก แแ แแแแฎแแ แ แ แแแฎแแแแ. แแแแ แแ แแแแแแแ แแแแจแแแแแแแแแแ แแแขแแแแขแฃแ แ แแแแแฎแแแแแก แจแแแแฌแแแแ, แ แแแแแ แแ แแแ แแแแจแ แแแแฅแแก แ แแแแแแแแ PostgreSQL แคแ แแแแแแขแ, แแกแ แ แแ แฉแแแ แแแแแฆแแแ แแแแคแแแฃแ แแชแแแก แกแแ แแแขแแแแก แจแแกแแแแจแแแ แขแแกแขแแ แแแแก แฌแแ แแแแแแแแ.
แแ แแแ แแแแชแแแ แแแแแชแแฃแ แแ แแแแแแงแฃแ แแแ, แแแแ แแ แฉแแแ แแแแฅแแก PostgreSQL 9.6. แจแแแแแซแแแ แแฃ แแ แ แแแฃแงแแแแแแแแ แแแแแฎแแแแ 11.2-แแ?
แฉแแแ แแแแแแฌแงแแแขแแ แแแแก แแแแแแแแ 2 แแขแแแแ: แฏแแ แแแแแแฎแแแ 11.2-แแ, แจแแแแแ แแแฃแจแแแ Patroni.
PostgreSQL แแแแแฎแแแแ
PostgreSQL แแแ แกแแแก แกแฌแ แแคแแ แแแแแฎแแแแแกแแแแก แแแแแแงแแแแ แแแ แแแแขแ -k, แ แแแแแจแแช แแงแแ แ แแแฃแแแแ แแฅแแแแแ แแแกแแแ แแ แแ แแ แแก แกแแญแแ แ แแฅแแแแ แแแแแชแแแแแแก แแแแแ แแแ. 300-400 GB แแแแแแ แแแแแฎแแแแแก 1 แฌแแแ แกแญแแ แแแแ.
แฉแแแ แแแแฅแแก แแแแ แ แแแขแแฎแ, แแแแขแแ แแแแแฎแแแแ แแแขแแแแขแฃแ แแ แฃแแแ แแแแฎแแ แชแแแแแแก. แแแแกแแแแแก แฉแแแ แแแแฌแแ แแ Ansible playbook, แ แแแแแแช แแแฃแจแแแแแก แแแแแฎแแแแแก แแแแ แแ แแชแแกแก แฉแแแแแแแก:
/usr/lib/postgresql/11/bin/pg_upgrade
<b>--link </b>
--old-datadir='' --new-datadir=''
--old-bindir='' --new-bindir=''
--old-options=' -c config_file='
--new-options=' -c config_file='
แแฅ แแแแจแแแแแแแแแแ แแฆแแแแจแแแก, แ แแ แแแแแฎแแแแแก แแแฌแงแแแแแแ แแก แฃแแแ แจแแแกแ แฃแแแ แแแ แแแแขแ แแ --แฉแแแแ แแแ แแแ แฌแแฃแแแแ, แ แแ แจแแแแซแแแแ แแแแแฎแแแแ. แฉแแแแ แกแแ แแแขแ แแกแแแ แแฎแแแแก แแแแคแแแฃแ แแชแแแก แฉแแแแชแแแแแแก แแแแแฎแแแแแก แฎแแแแ แซแแแแแแแกแแแแก. แฉแแแแ แกแแ แแแขแ แแแกแ แฃแแแ 30 แฌแแแจแ, แ แแช แจแแกแแแแจแแแแ แจแแแแแแ.
แแแฃแจแแแ แแแขแ แแแ
แแแแ แ แแ แแแแแแแก แแแแแกแแญแ แแแแ, แฃแแ แแแแ แแแแแฎแแแแ แแแขแ แแแแก แแแแคแแแฃแ แแชแแแก. แแคแแชแแแแฃแ แกแแชแแแก แแฅแแก แแแแแแแแแก แแแแคแแแฃแ แแชแแ initdb-แแ, แ แแแแแแช แแแกแฃแฎแแกแแแแแแแแ แแฎแแแ แแแแแชแแแแ แแแแแก แแแแชแแแแแแแชแแแแ, แ แแแแกแแช แแแ แแแแแ แแแแฌแงแแแ Patroni-แก. แแแแ แแ แ แแแแแ แฉแแแ แฃแแแ แแแแฅแแก แแแ แแแแแชแแแแ แแแแ, แฉแแแ แฃแแ แแแแ แแแแแแฆแแ แแก แแแแงแแคแแแแแ แแแแคแแแฃแ แแชแแแแแ.
แ แแแแกแแช แแแแแฌแงแแ Patroni-แแก แแแกแขแแแแชแแ แฃแแแ แแ แกแแแฃแ PostgreSQL แแแแกแขแแ แแ แแ แแแกแ แแแจแแแแ, แแฎแแ แแ แแแแแแแก แฌแแแแฌแงแแแ: แแ แแแ แกแแ แแแ แ แแแแฌแงแ แ แแแแ แช แแแแแ แ. แแแขแ แแแแ แแ แแคแแ แ แแชแแก แแแแกแขแแ แแก แแแ แแฃแแ แแแแแแแ แแแแแก แจแแกแแฎแแ แแ แชแแแแแแก แแ แแแ แกแแ แแแ แแก แแแจแแแแแก แแ แ แชแแแแแฃแแ แแแแกแขแแ แแก แกแแฎแแ แแแแแ แกแแฎแแแแ. แแ แแ แแแแแแแก แแแแแกแแญแ แแแแ, แแฅแแแ แฃแแแ แฌแแจแแแแ แแแ แแฅแขแแ แแ แแแแแก แแแแแชแแแแแแ:
rm -rf /var/lib/postgresql/
แแก แฃแแแ แแแแแแแแก แแฎแแแแ แแแแแแ!
แ แแแแกแแช แกแฃแคแแ แ แแแแแแ แแ แแก แแแแแแจแแ แแแฃแแ, แแแขแ แแแ แฅแแแแก แกแแแแแแกแ แกแแ แแแแ แแ แแแแแ แก แแ แแฆแแแแแแก แแแก แ แแแแแแแจแ แแ แจแแแแแ แแฌแแแแก แแแแแแแแ แ แแแแแแแ แแแแแก wal logs-แแก แแแฎแแแแแ.
แแแแแ แแ แแ แกแแ แแฃแแ, แ แแแแแแช แฉแแแ แจแแแแฎแแแ แแ แแก แแก, แ แแ แงแแแแ PostgreSQL แแแแกแขแแ แ แแแแฃแแแกแฎแแแแแ แแแกแแฎแแแแแฃแแแ แซแแ แแแแแ. แ แแแแกแแช แแแแแแฃแแแ แแแแกแขแแ แแ แแ แแคแแ แ แแชแแก แแแแ แแก แจแแกแแฎแแ, แแก แแแ แแแแฃแ แแ. แแแแ แแ แ แแแแกแแช แแกแฃแ แ แแแแแแงแแแแ Patroni, แแแจแแ แงแแแแ แแแแกแขแแ แก แฃแแแ แฐแฅแแแแแก แฃแแแแแแฃแ แ แกแแฎแแแ. แแแแแกแแแแแ แแ แแก แแแแกแขแแ แแก แกแแฎแแแแก แจแแชแแแ PostgreSQL แแแแคแแแฃแ แแชแแแจแ.
แแแขแแแ แแแแก แขแแกแขแ
แฉแแแ แแแแแฌแงแแ แขแแกแขแ, แ แแแแแแช แแฎแแแแก แแแแฎแแแ แแแแแก แแแแแชแแแแแแแก แกแแแฃแแแชแแแก แแแคแแแแ. แ แแแแกแแช แแแขแแแ แแแแ แแแแฆแฌแแ แฉแแแแก แกแแจแฃแแแ แแฆแแฃแ แแแแจแแแแแแแแก, แฉแแแ แแแแแแแแ แแ แแฃแกแขแแ แแแแแ แขแแกแขแ, แแแแแ แแแ แแ แแ แแแกแขแแแชแแ PostgreSQL แแแแแ แแแ. แแแขแแแแขแฃแ แ แคแแแแแแแ แ แแฃแจแแแแแ แแกแ, แ แแแแ แช แแแแแแแ: แแแขแ แแแแ แจแแชแแแแ แแแแแ แ, Consul-template-แแ แแแแแแฎแแ PgBouncer-แแก แแแแคแแแฃแ แแชแแ แแ แแแแแแแแ แแ แซแแแแแ แแแแแขแแแ แแแแก แจแแกแแฎแแ. Grafana-แจแ แฉแแแแ แแ แแคแแแแแแก แแแฎแแแแแ, แชแฎแแแ แแงแ, แ แแ แแ แแก 20-30 แฌแแแแก แจแแคแแ แฎแแแ แแ แแชแแ แ แ แแแแแแแแแก แจแแชแแแแแแ แกแแ แแแ แแแแแแ, แ แแแแแแแช แแแแแแจแแ แแแฃแแแ แแแแแชแแแแ แแแแแกแแแ แแแแจแแ แแแ. แแก แแแ แแแแฃแ แ แกแแขแฃแแชแแแ, แแกแแแ แแแแจแแแแแแแแแ แแแกแแฆแแแแ แฉแแแแ แแแ แชแฎแแกแแแแก แแ แแแแแแแแแ แฃแแแแแกแแ แแแแ แ แกแแ แแแกแแก แจแแคแแ แฎแแแ.
แแแขแ แแแแก แฌแแ แแแแแแจแ แแแงแแแแ
แจแแแแแแ, แฉแแแ แแแแแฆแแ แจแแแแแแ แแแแแ:
- แแแแแแแแกแแ Consul-แแแ แแ PgBouncer แกแแ แแแ แแแแ แแ แแแฃแจแแแ;
- PostgreSQL แแแแแฎแแแแแแ 11.2 แแแ แกแแแแแ;
- แจแแชแแแแแ แแแแกแขแแ แแก แกแแฎแแแ;
- แแแขแ แแแแแแก แแแแกแขแแ แแก แแแฌแงแแแ.
แแแแแแ แแฃแแแ, แฉแแแแ แกแฅแแแ แกแแจแฃแแแแแแก แแแแซแแแแก แแแแแแฎแแขแแ แแแ แแแแ แแฃแแฅแขแ แแแแฅแแแก แแแแแกแแแแ แแ แแก, แฉแแแ แจแแแแแซแแแ แแแแแจแแ แแ แแแแแแฃแแ PgBouncer แกแแแฃแจแแแแแ แ แแแ แแแแแแ แแ แแแแแงแแแแ แแ แแแแฃแจแแแ แแแกแแ แกแแแแแกแฃแแ-แแแ แแ. แแกแแช แแแแแฅแแชแแ.
แกแฌแ แแคแ แแแแแแแแแแกแแแแก, แฉแแแ แแแแแแแงแแแแ Ansible, แ แแแแแ แฉแแแ แฃแแแ แแแแแแชแแแแ แงแแแแ แกแแแแแแจแ แฌแแแแ แกแแขแแกแขแ แแแ แแแแแ แแ แกแ แฃแแ แกแแ แแแขแแก แจแแกแ แฃแแแแแก แแ แ แแงแ 1,5-แแแ 2 แฌแฃแแแแแ แแแแแแฃแแ แคแ แแแแแแขแแกแแแแก. แฉแแแ แจแแแแแซแแ แงแแแแแคแแ แ แ แแแ แแแแแแ แแแแแแแแขแแแ แแแแแแฃแ แแแฌแแแแ แฉแแแแ แกแแ แแแกแแก แจแแฌแงแแแขแแก แแแ แแจแ, แแแแ แแ แฉแแแ แฃแแแ แแแแแแ แแแ แแแแแแฃแแ PostgreSQL แ แแแแแแแแ แฌแฃแแแก แแแแแแแแแแแจแ. แแ แจแแแแฎแแแแแจแ แแแแฎแแแ แแแแแแ, แ แแแแแแ แแแแแชแแแแแแช แแ แคแ แแแแแแขแแแ, แแ แแ แแแกแแแแก แกแ แฃแแแ แแแ แแฃแจแแแแแ แแ แแก แฉแแแแแแแก แแแฃแฆแแแแแแ.
แแ แกแแขแฃแแชแแแแแ แแแแแกแแแแแ แแงแ แแแแแแฃแ แ แแแแแ, แ แแแแแแช แงแแแแ 3 แแแแจแ แแ แแฎแแ แฎแแแแ. แแก แแ แแก แคแแแฏแแ แ แแแแแแแแแ แกแแแฃแจแแแกแแแแก, แ แแแแกแแช แฉแแแ แแแแแแแแ แแฎแฃแ แแแ แฉแแแแก แกแแ แแแกแก แแ แแแแฎแแแแ แแแแแชแแแแ แแแแแก แแแกแขแแแชแแแแก. แแแแแแแแ แคแแแฏแ แแแแ แแ แแ แแแแ แ แแงแ แแแ แฉแแแแแ แแ แแแแแแฌแงแแแขแแ แแแแแแแแแ แแ แแแแแแแแแแ. แแแแแแแก แแ แแก, แฉแแแ แแแแแขแแแแ แแแแแชแแแ แแแแ: แแแแแแฃแแ PostgreSQL แคแ แแแแแแขแแกแแแแก, แฉแแแ แแแงแแแแแ แกแแแแแแ แแแ แ แแแแแแแก แฃแแฎแแแกแ แแแแแชแแแแแแก แจแแแแ แฉแฃแแแแแก แจแแแแฎแแแแแจแ แแ แแแแแแแขแแ แแฎแแแ แแแแแแแแแ แ แแแแแแฃแแ แคแ แแแแแแขแแกแแแแก, แ แแแแแแช แฃแแแ แแแฎแแแก แแฎแแแ แ แแแแแแ Patroni แแแแกแขแแ แจแ. แ แแแ แแ แจแแแกแ แฃแแแก แแแแแชแแแแแแก แฌแแจแแแก แแ แซแแแแแ. แแก แงแแแแแคแแ แ แแแแฎแแแ แ แจแแชแแแแแก แ แแกแแแก แแแแแแฃแแแแแ แจแแแชแแ แแแแก.
แฉแแแ แแแแแแขแแแ แแแ แฉแแแแ แกแแ แแแกแ, แงแแแแแคแแ แ แแฃแจแแแแแ แแกแ, แ แแแแ แช แฃแแแ, แแแแฎแแแ แแแแแแแ แแแแแแ แซแแก แแฃแจแแแแ, แแแแ แแ แแ แแคแแแแแแ แจแแแแแจแแแ แแ แแแแ แแแแฃแ แแ แแแฆแแแ แแแขแแแ แแแ แแแแกแฃแแแก แกแแ แแแ แแแแ.
แ แแขแแ แแ แแแแฎแแ แแก แกแแขแแกแขแ แแแ แแแแจแ? แแก แแ แแแแแแ แซแแแแแ แแแ แแแ แแกแแฎแแแก, โโแ แแ แแฃแชแแแแแแแแ แแแคแ แแกแขแ แฃแฅแขแฃแ แแก, แ แแแแ แช แแแแแก แแ แแแชแแแแก แแแชแแ แแ แแแแแ แแแคแ แแกแขแ แฃแฅแขแฃแ แแก แแแฎแแแฌแ, แกแแขแแกแขแ แแแ แแแแแแ แฌแแ แแแแแแแแ. แฌแแแแแฆแแแแ แจแแแแฎแแแแแจแ, แซแแแแแ แแแแแแแ แฉแแแแ แแ แแแแแแแก แแแแแแ แแแ. แฒ แ แแแฎแแ? แแแแกแฃแแ แแแ แแแแแ แแแแแฉแแแ แฌแแ แแแแแแแ, แจแแแแแ แแ แกแแขแแกแขแ แแแ แแแแจแ, แจแแแแแแ, แกแแขแแกแขแ แแแ แแแแแ, แแแแกแฃแแแก แแแ แกแแ แฃแคแ แ แแแฆแแแ แแงแ, แแแแ แ แฌแแ แแแแแแแ. แแฎแแแแ แแ แ-แแ แ แแแแแชแแแแจแ, CPU-แก แแแแแแแ แแแแแแ แแ แแแแกแฃแ-แแแ แแแแ แแฃแจแแแแแกแแก. แแแแขแแ, แฉแแแ แฃแแ แแแแ แแแแฎแแแ แแแแกแฃแแ, แ แแแแช แแแแแแแแ แแ แแ แแแแแแ.
แแแแแขแแแ แแแ Patroni แแแแกแขแแ แ
แแฃแแชแ, แแฎแแแ แแ แแแแแแ แจแแแแแฅแแแ, แ แแแแช แแญแแแช แแ แแแแแแ แแแแแ. Consul-แแก แแแแแฎแแแแแกแแก แฉแแแ แฃแแ แแแแ แแฎแกแแแ Consul-แแก แแแแแซแก แแแแกแขแแ แแแแ consul leave แแ แซแแแแแแก แแแแแงแแแแแแ โ Patroni แฃแแแแจแแ แแแแ แกแฎแแ Consul แกแแ แแแ แก โ แงแแแแแคแแ แ แแฃแจแแแแก. แแแแ แแ แ แแแแกแแช แฉแแแ แแแแแฆแฌแแแ แแแแกแฃแแแก แแแแกแขแแ แแก แแแแ แแแกแขแแแชแแแก แแ แแแแแแแแแแแ แแแแกแฃแแแก แแแขแแแแแแก แแ แซแแแแแ, แงแแแแ แแแขแ แแแแก แแแแกแขแแ แ แฃแแ แแแแ แแแแแแขแแแ แแ แแ แแฃแ แแแแแแจแ แแแแแแแฎแแ แจแแแแแแ แจแแชแแแแ:
ERROR: get_cluster
Traceback (most recent call last):
...
RetryFailedError: 'Exceeded retry deadline'
ERROR: Error communicating with DCS
<b>LOG: database system is shut down</b>
แแแขแ แแแแก แแแแกแขแแ แแ แแแ แจแแซแแ แแแคแแ แแแชแแแก แแแซแแแแ แแแกแ แแแแกแขแแ แแก แจแแกแแฎแแ แแ แฎแแแแฎแแ แแแแฌแงแ.
แแแแแกแแแแแก แแแกแแซแแแแแ, แฉแแแ แแแแฃแแแแจแแ แแแ แแแขแ แแแแก แแแขแแ แแแก github-แแ แแ แกแแแฃแแ แแ แแแแแแแก แแแจแแแแแแ. แแแ แจแแแแแแแแแแแแก แฉแแแแ แแแแคแแแฃแ แแชแแแก แคแแแแแแแก แแแฃแแฏแแแแกแแแ:
consul:
consul.checks: []
bootstrap:
dcs:
retry_timeout: 8
แฉแแแ แจแแแซแแแแ แแ แแแแแแแก แแแแแแ แแแ แกแแขแแกแขแ แแแ แแแแแ แแ แแแแแแชแแแแ แแก แแแ แแแแขแแแ แแฅ, แแแแ แแ, แกแแแฌแฃแฎแแ แแ, แแกแแแ แแ แแฃแจแแแแแแแ.
แแ แแแแแแ แแแแแ แแแฃแแแแ แแแแแ แ แฉแแแ. แฉแแแ แแแแแแแแ แแชแแแแ แจแแแแแแ แแแแแฌแงแแแขแแแแแแแ:
- แแแแแแงแแแแ แแแแกแฃแ-แแแแแขแ แแแขแ แแแแก แแแแกแขแแ แฃแ แแแกแขแแแชแแแแ;
- แแแแกแฌแแ แแ แแ แแแแแแ แแแแจแ.
แฉแแแ แแแแกแแแก, แกแแ แแแฎแแ แจแแชแแแแ: แแ แแแแแแ, แแแแแ, แแ แแก แแแแฃแแแกแฎแแแแ แแ แแแก แแแแฌแฃแ แแแก แแแแแงแแแแแ, แ แแแแแแช แแ แแ แแก แแแแแคแแ แฃแแ แแแแคแแแฃแ แแชแแแก แคแแแแแก แแแจแแแแแแ. แ แแแแกแแช แแแแ Consul แกแแ แแแ แ แแแแฆแแแฃแแแ แแแแกแขแแ แแแแ, แแแแแ Consul แแแแกแขแแ แ แฉแแ แแแแ แฌแแแแ แแแขแฎแแแก, แแแแก แแแแ แแแขแ แแแ แแแ แแฆแแแก แแแแกแขแแ แแก แกแขแแขแฃแกแก แแ แแแแแแแแ แแแแแแฎแแแแก แแแแ แแแแกแขแแ แก.
แกแแแแแแแแ แแ, แแแขแ แจแแชแแแแ แแ แจแแแแฎแแแแ แแ.
แแแขแ แแแแก แแแแแงแแแแแแก แจแแแแแแแ
Patroni-แแก แฌแแ แแแขแแแฃแแ แแแจแแแแแก แจแแแแแ, แแแแแแฃแ แแแแกแขแแ แจแ แแแแแแแขแแ แแแแแขแแแแแ แ แแแแแแ. แแฎแแ แแแแแแฃแ แแแแกแขแแ แจแ แแ แแก แแแแ แฃแแแก แแกแแแแกแแแ: แแ แแ แแแแแ แ แแ แแ แ แ แแแแแแ, แฃแกแแคแ แแฎแแแแแก แแแแ แแแแแ แแแแกแแก แขแแแแแก แแแงแแคแแก แจแแแแฎแแแแแจแ.
แแแขแ แแแ แฌแแ แแแแแแแ แกแแ แแแแแ แแแขแแ แแฃแจแแแแก. แแ แฎแแแก แแแแแแแแแแแจแ แแแ แฃแแแ แแแแฎแแ แฎแ แฉแแแแ แแแฎแแแ แแแ. แชแแขแ แฎแแแก แฌแแ, แแ แ-แแ แแ แแแแกแขแแ แแก แแแแแ แ แแแ แแแแชแแแแ AWS-แจแ, แแแขแแแแขแฃแ แ แคแแแแแแแ แ แแแฃแจแแแ แแ แแแแฎแแแ แแแแแแแ แแแแแแ แซแแก แแฃแจแแแแ. แแแขแ แแแแ แแแแแกแ แแแแแแ แ แแแแชแแแ แจแแแกแ แฃแแ.
แแแขแ แแแแก แแแแแงแแแแแแก แแชแแ แ แจแแฏแแแแแ:
- แแแแคแแแฃแ แแชแแแก แชแแแแแแแแแแก แกแแแแ แขแแแ. แกแแแแแ แแกแแ แแแแคแแแฃแ แแชแแแก แจแแชแแแ แแ แ แแแกแขแแแชแแแแ แแ แแก แแแแงแแแแแแ แแแแ แแแแกแขแแ แแ. แแฃ แแฎแแแ แแแแคแแแฃแ แแชแแแก แแแแแกแแงแแแแแแแ แกแแญแแ แแ แแแแแขแแแ แแแ, แแแจแแ Patroni แจแแแแขแงแแแแแแแ. แแแขแ แแแก แจแแฃแซแแแ แแแแแ แแแแกแขแแ แแก แแแแแขแแแ แแแ แแ แแ แแ แซแแแแแแ, แ แแช แแกแแแ แซแแแแแ แแแกแแฎแแ แฎแแแแแแ.
- แแแขแแแแขแฃแ แ แฉแแแแ แแแ แแฃแจแแแแก แแ แฃแแแ แแแแฎแแ แฎแ แฉแแแแ แแแฎแแแ แแแ.
- PostgreSQL แแแแแฎแแแแ แแแแแแแชแแแก แจแแคแแ แฎแแแแก แแแ แแจแ. แฏแแ แฃแแแ แแแแแแฎแแแ แแกแแแแ แแฎแแ แแแ แกแแแแ, แจแแแแแ แจแแชแแแแแ แแแแแ แ Patroni แแแแกแขแแ แจแ แแ แแแแแแฎแแแ แซแแแแ แแแแแ แ. แแ แจแแแแฎแแแแแจแ แฎแแแแ แแแขแแแแขแฃแ แ แแแแ แแแก แกแแญแแ แ แขแแกแขแแ แแแ.
แฌแงแแ แ: www.habr.com