title

text

Alexey Klyukin
Alexey Klyukin Zalando SE
Alexander Kukushkin
Alexander Kukushkin Zalando SE
14:00 05 February
180 мин

Tutorial: Management of High-Availability PostgreSQL clusters with Patroni

Patroni is a Python application to create high-availability PostgreSQL clusters based on the streaming replication. It is used by Red Hat, IBM Compose, Zalando and many other companies. This tutorial will highlight Patroni architecture, provide attendees with hands-on experience of configuring high-availability PostgreSQL clusters with Patroni, describe how to take advantage of numerous additional features and give an opportunity to learn more about common mistakes related to running Patroni and its troubleshooting.

In order to take most out of the Patroni tutorial one needs a laptop with git, vagrant and virtual box installed.

Vagrant can be obtained from https://www.vagrantup.com Virtualbox is at https://www.vagrantup.com

Alternatively, one can install your Linux distribution packages (or use homebrew on Mac).

Once Vagrant and Virtualbox are installed one can run the Patroni VM by issuing the following commands:

$ git clone https://github.com/alexeyklyukin/patroni-training
$ cd patroni-training
$ vagrant up

When the setup concludes Patroni box can be accessed via ssh using vagrant ssh command.

Материалы к докладу

Видео

Другие доклады

  • Christopher Travers
    Christopher Travers DeliveryHero SE
    45 мин

    PostgreSQL at 20TB and Beyond

    In the last six months I have been working with a massive OLAP environment with 20TB shards, spanning around 400TB of data. Come to listen to how we make it all work, the challenges, and the skills involved. This talk has very little in common with the 10TB and Beyond talk because the data environments are very different.

    We will cover analytics performance, data alignment, reasons for building extensions in C, and moving data around between servers in multiple data centers.

  • Alexander Korotkov
    Alexander Korotkov Postgres Professional
    45 мин

    Pluggable storages

    Pluggable storages is hot subject in PostgreSQL development. The period of heated debates about whether we need them is over. Skepticism about pluggable storages, based on concern that they may be source of inconsistent behavior, was weakened after criticism of PostgreSQL MVCC implementation from Uber side. It became widely understandable that pluggable storages are needed at least for an alternative MVCC implementation. And that is one of way-points for pluggable storages interface design.

    At the moment, work on pluggable storages is in the practical stage. There is a thread is pgsql-hackers where few people are developing patchset and several people are doing review.

    This talk will cover following subjects:

    • overview of pluggable storages interface;
    • changes in PostgreSQL core required to implement this interface;
    • current and potential implementations of pluggable storages including heap with undo-log and in-memory OLTP engine;
    • current state of patchset and prospective of its commit
    • further development of interface allowing more possibilities in pluggable storages (columnar, index-organized, LSM and so on).

  • Sergei Kim
    Sergei Kim Ingram Micro Cloud
    Vadim Yatsenko
    Vadim Yatsenko Tantor Lab
    45 мин

    PostgreSQL High Availability cluster for Enterprise

    Lately, the PostgreSQL is more widely being used for Enterprise. Our company, Ingram Micro Cloud, is one of the first companies that did it. We have been using PostgreSQL for many years as the main DBMS for our products. In our report, we want to tell about the evolution of our High Availability (HA) PostgreSQL cluster. We will tell about how quickly we implemented the solution using pgpool-II, wrote failover scripts, tested Postgres-XL, and came up with unusual configurations of Stolon. We will also cover the problems of load balancing, pooling connections, and backups.

  • Nikolay Ryzhikov
    Nikolay Ryzhikov Health Samurai
    45 мин

    Database driven development with postgresql & clojure

    If you honestly evaluate most of our business applications, you will see that they first collect and import the data into a database and then send the same data in the opposite direction.

    What if we don't build an ORM wall between the application and the database, but try using the symbiosis of their strong points and special features instead?

    I will tell you how we use PostgreSQL and Clojure for building data-intensive medical applications. We will cover the following topics:

    • functional relational programming
    • jsonb for modeling complex data domains
    • functional indexes and json-knife extension for jsonb search
    • graphql implementation on PostgreSQL
    • logical replication for building reactive integrations
    • asynchronous JDBC-free connector to PostgreSQL on netty