Skip to content

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

Notifications You must be signed in to change notification settings

FilipePires98/Pretix-DistributedDeployment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 

Repository files navigation

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.