silicon valley postgresconf 2018 taking care · silicon valley postgresconf 2018 quality asssurance...

32
www.credativ.com credativ 2018 Silicon Valley PostgresConf 2018 Michael Meskes Taking Care of the Elephant

Upload: others

Post on 21-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Michael

Meskes

Taking Care

of the

Elephant

Page 2: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

• Free Software since 1993

• Linux since 1994

• Debian GNU/Linux since 1995

• PostgreSQL since 1998

Actively

Working

On

Open Source

Page 3: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

• 1992 – 1996 Ph.D.

• 1996 – 1998 Project Manager

• 1998 – 2000 Branch Manager

• Since 2000 President/CEO

Actively

Working

On

Open Source

Page 4: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

24/7/365

Phone

Email

Remote

On-site

US/EU/India

Open Source Support Center

➢ Consulting➢ Installation➢ Administration➢ Operations➢ Training➢ Support

Page 5: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

CurrentStateOf The

Community

-

Forks

Page 6: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Plenty

Of

Differences

Incompatible differences in

➢ Statements

➢ Datatypes

➢ Storage

➢ Features

(c) Alexander Madyankin, Roman Shamin

Page 7: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

CurrentStateOf The

Community

-

Forks

Page 8: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Business

Models

vs.

Community

Create IP Different Solutions

Resources Diverging Code

Page 9: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Sales

vs.

Community

The community does not accept our patches!

Community does not want big patches!

Company XYZ is the one company behind PostgreSQL!

You cannot do this with the community version!

We are PostgreSQL!

Page 10: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Open

Source

Has

Everything

Page 11: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Software

Development

-

Vendoring

Vendoring is the act of making your own copy of the 3rd party packages your project is using. Those copies are traditionally placed inside each project

and then saved in the project repository.

Vendoring is the conceptual opposite of using a dependency manager

Page 12: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Modern

Deployment

Methods

➢ Flatpak➢ Snap➢ AppImage➢ Docker➢ Appliances➢ Cloud

© Tomomarusan

Page 13: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

CurrentStateOf The

Community

-

Cloud

Page 14: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Database

Administrator

Responsibilities

➢ Configure database servers

➢ Monitor and maintain system health and security

➢ Design backup processes for server and associated data

➢ Establish a disaster recovery protocols

➢ Schedule and perform regular server maintenance

Page 15: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Elephant

Shed

-

Design

Goals

➢ Complete solution

➢ No external dependencies

➢ Modular

➢ Covers most use case

➢ Easily adjustable and extendable

➢ Ease of use

Page 16: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Portal

-

Point

Of

Entry

Page 17: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Multi

Version

-

Multi

Cluster

Page 18: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Apt.

Postgresql.

Org

© Syllabub@ Wikimedia Commons

● 3-4 Debian Releases + 3-4 Ubuntu Releases

● 6 PostgreSQL Releases

● Server, Extensions, Modules

● 3 Architectures

200 different source packages

25,473 binary packages

all active PostgreSQLversions

for all active distributionversions

Page 19: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Quality

Asssurance

Tests are done automatically

Continuous Integration Server

====== Running all tests with tight umask 077 ========== Running test 001_packages.t ... ===1..19# PostgreSQL versions installed: 9.4ok 1 - postgresql-9.4 installedok 2 - postgresql-plpython-9.4 installedok 3 - postgresql-plpython3-9.4 installedok 4 - postgresql-plperl-9.4 installedok 5 - postgresql-pltcl-9.4 installedok 6 - postgresql-server-dev-9.4 installedok 7 - postgresql-contrib-9.4 installedok 8 - libecpg-dev installed...

Jenkins

● Source - build source packages

● Binary – build binary packages

● Test

Page 20: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Portal

-

PostgreSQL

Clusters

Page 21: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

systemd

-

System

&

Service

Manager

Page 22: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Cockpit

-

System

Management

Page 23: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

pgAdmin4

-

Manage

PostgreSQL

Page 24: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Grafana

-

Analytics

Visualization

Monitoring

Dashboard with data from different sources

Page 25: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Grafana

-

Analytics

Visualization

Monitoring

Dashboard with data from different sources

Page 26: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Prometheus

-

Monitoring

Collect and display metrics

Time series

Page 27: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

pgBadger

-

Reporting

Page 28: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

pgBackRest

-

Backup

&

Restore

Page 29: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Additional

Tools

➢ Shell In A Box – Web based terminal

➢ Ferm – Firewalling toolkit for creating iptables rules

➢ Tmate – Remote control

➢ Etckeeper – Configuration revisioning

Page 30: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Roadmap

-

Always

100%

Open

Source

➢ Port to RPM

➢ Central control of multiple instances

➢ Optimized cloud versions

➢ Hot Stand-By

➢ Failover

Page 31: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

PGApi

-

Next

Version

➢ Remote management of PostgreSQL instances

➢ Cluster-Management:➢ Create / Drop➢ Start / Stop / Restart / Reload / Promote

➢ Cluster configuration: Port / shared_buffers / …

➢ pg_hba management

➢ Standby creation via pg_basebackup

➢ Management of pgBackrest tasks

➢ Portal re-design for new functionality

Page 32: Silicon Valley PostgresConf 2018 Taking Care · Silicon Valley PostgresConf 2018 Quality Asssurance Tests are done automatically Continuous Integration Server ... # PostgreSQL versions

www.credativ.comcredativ 2018

Silicon Valley PostgresConf 2018

Michael

Meskes

Taking Careof the Elephant

https://elephant-shed.io/