FilipePires98 / Pretix-DistributedDeployment

Distributed Deployment and Management of Pretix - a Ticket Shop Application.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Distributed Deployment and Management of
Pretix - a Ticket Shop Application

Description

This project allows the deployment and management of a distributed open-source product. The product provided is Pretix, a ticket shop application for conferences, festivals, tech events, etc. The system has a fully-automatic deployment pipeline and is fault tolerant. We provide reports on the work developed, the source code and the respective documentation.

Persistence is done using a PostgreSQL cluster, caching using a Redis cluster and communications with the product resort to Pretix's REST API. Load balancing is done with NGinX implemented both inside Pretix and outside to distribute load amongst a set of endpoints. The deployed service is hosted in a Docker Compose Swarm.

Repository Structure

/docs - contains all documentation (presentation and reports).

/pretix - contains containers' configurations, performance evaluation scripts and a quickstart script.

Additional Resources

InfrastructureArchitecture

Diagram of the infrastructure architecture deployed in Docker Swarm.

Kibana

Populated Kibana GUI.

Grafana

Grafana Custom Home Dashboard.

Pretix

Populated Pretix Service Dashboard.

Redis1

Redis2

Populated Redis Dashboard.

PostgreSQL

Populated PostgreSQL Dashboard.

Nginx

Populated Nginx Dashboard.

SNMP1

SNMP2

Populated SNMP Dashboard.

Teams

Microsoft Teams alert examples.

Authors

The authors of this repository are Filipe Pires and João Alegria, and the project was developed for the Computational Infrastructures Management Course of the Master's degree in Informatics Engineering of the University of Aveiro.

For further information, please read our report or contact us at filipesnetopires@ua.pt or joao.p@ua.pt.

About

Distributed Deployment and Management of Pretix - a Ticket Shop Application.


Languages

Language:Python 50.1%Language:Shell 36.7%Language:Dockerfile 13.3%